![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据库
Magnum_yuanz
这个作者很懒,什么都没留下…
展开
-
【redis深度历险】基础篇
操作: set k v get k return v mset k1 v1 k2 v2 mget k1 k2 k3 return list 数据结构: string list(链表) hash set zset string: K-V形式代表 常见用途:缓存用户信息,json序列化为字符串,缓存到redis;取信息反序列化 新建的string的capacity一般是高于len的;小于一M时扩容加倍,超过1M 扩容+1M,最大长度为512M 设置过期时间: setex k time v exp原创 2020-07-01 17:09:48 · 94 阅读 · 0 评论 -
高性能mysql_高性能索引
索引基础: 索引类型 索引在存储引擎层(不是服务器层) B树索引: 索引有效范围(以姓 名 生日 的顺序为索引): 全值匹配(所有具体姓 以及其名 生日等信息) 最左前缀(仅姓为索引) 匹配列前缀(姓索引列的开头字母等 J%这样的) 匹配范围值(姓索引列的范围 比较 BOB 到 JACY之间) 精准前列 范围后列(姓精准 名范围) 只访问索引的查询(覆盖索引???) 规则: 1 最左前 2 范围查询后的匹配无法使用索引 哈希索引: 每一个键值对 对应一个哈希码,哈希索引将所有哈希码存在索引中,原创 2020-06-24 20:29:17 · 75 阅读 · 0 评论 -
高性能mysql_schema/数据优化
建立表时的字段设计优化查询 数据类型大小 优先选择更小的数据类型,使用的硬盘,内存,cpu资源将会更小。选择不会超过范围的最小类型。 简单数据类型 简单数据类型需要更少的CPU周期,整型比字符操作代价低 例如:timestap或者datetime存储时间,不用字符串;整型存储IP,不用字符串 避免使用null值 使用null对于索引 索引统计 值比较都更复杂,可以为null的列通常需要更多存储空间,作为索引时,每个记录需要一个额外的字节。设置为not null可以提升性能较小,设计时需要避免。原创 2020-06-10 21:48:32 · 170 阅读 · 0 评论 -
高性能mysql 第一章(架构与历史)
1 mysql基本架构 1.1 架构 三层 线程 连接处理 连接处理,授权认证,安全等 每个客户端在服务器中有一个线程用以查询,线程轮流在CPU中运行,服务器进行线程缓存,无需为新建的连接创建或销毁线程。(新增线程池) SSL连接,然后继续验证是否具备某个特定查询的权限。 查询 缓存 解析(核心) 查询解析,分析,优化,缓存,内置函数(日期,时间,加密函数,math等)。夸存储引擎功能实现:存储过程,触发器,视图 解析查询——创建内部数据结构(解析树)——优化(重写查询,军队表读取顺序,选择合适的索原创 2020-05-22 20:19:00 · 103 阅读 · 0 评论 -
金融数据库TDSQL
tdsql 三层: 网关层: 路由表 + 解析mysql(类似无状态的server) 存储层:真实的mysql,添加agent用以容灾备份数据切换 控制层:zookeeper用以存储状态,加一个keeper用以进行调度 扩容: 水平扩容 垂直扩容 谁扩容 扩容到哪 怎么扩 一般来说 CPU打到了100的话,扩容整张表出去。如果记录太多,分裂扩容后,cache生成唯一key(node的hash) 可以使用QQ号作扩容,使数据均匀 插播一条 mysqlbin binlog 数据库的二进制文件,记录用户对数据库原创 2020-07-16 18:57:52 · 407 阅读 · 0 评论 -
DBMS_design theory(数据库设计理论)
超键(super key):在关系中,能唯一标识元组的属性或属性集。 候选键(candidate key):不含有多余属性的超键。 主键(primary key):若一个关系中有多个候选键,则选其中的一个为关系的主键。 #####(为什么有的时候主键可以是集合形势的?) 主属性(Primary Attribute):包含在任何一个候选键中的属性。 非主属性(Nonprimary Attribute...原创 2019-12-05 04:47:09 · 177 阅读 · 0 评论