2019年6月28日

查询成本

摘要: 查询语句执行之前都需要计算一下执行成本,并选择成本较低的执行方案。 执行的成本来自两方面: server:连接管理,查询缓存,语法解析,查询优化 存储引擎:数据存取 本质由I/O成本(存储引擎将数据和索引存储到磁盘,查询时再加载到内存后做操作)和CPU组成(读取并对记录做相应的排序匹配等操作的损耗) 阅读全文

posted @ 2019-06-28 08:36 hangzhi 阅读(299) 评论(0) 推荐(0) 编辑

多表连接的原理

摘要: 连接就是把各个表中的记录都拿出来然后依次匹配加入到结果集中。连接查询中表A与表B连接查询,表A的每条记录和表B的每条记录相互匹配的组成结果集被称为笛卡尔积。 连接查询过程 确定第一个表为驱动表,查询出驱动表中所有符合条件的结果集A 根据上一步查询出的结果集A,循环查询第二个表(被驱动表)与结果集A匹 阅读全文

posted @ 2019-06-28 08:35 hangzhi 阅读(1314) 评论(0) 推荐(0) 编辑

单表访问方法

摘要: Mysql执行查询语句的方式称为访问方法或访问类型,有两种大方向全表查询或索引查询,细分可分为const,ref 索引查询 先从B+树查找到对应的非叶子节点,根据得到的非叶子节点查询到主键值回查聚簇索引得到聚簇索引树上的叶子节点信息,上面存储了目标记录所有信息;如果搜索条件为多个不同的索引列,会先分 阅读全文

posted @ 2019-06-28 08:34 hangzhi 阅读(200) 评论(0) 推荐(0) 编辑

MySQL的数据目录

摘要: 来源 MySQL的几个存储引擎如InnoDB和MyISAM都是将数据存储到磁盘上,而我们的操作系统是通过文件系统来管理磁盘的,所以可以说这几个存储引擎都是将表存储在文件系统上的,而我们通过操作文件系统来读写数据。 定义 数据目录存储MySQL服务器在运行过程重产生的数据,且在服务器程序启动时会从这个 阅读全文

posted @ 2019-06-28 08:31 hangzhi 阅读(7457) 评论(0) 推荐(0) 编辑

Redis使用

摘要: 方案一:key-value形式存储,key为用户id,value为用户结构信息序列化后的字符串内容 方案二:hash存储,子key为用户id,value为用户结构信息,无需序列化 方案一在存取时需要序列化与反序列化;且key可不唯一,用户id存储可能重复;并发操作时需要将整个对象取回并对修改操作作并 阅读全文

posted @ 2019-06-28 08:28 hangzhi 阅读(400) 评论(0) 推荐(0) 编辑

Redis基本数据结构

摘要: String字符串 Redis的字符串是动态字符串可修改,结构类似于ArrayList预先分配内存,当字符串长度小于1M,扩容是加倍现有空间,大于1M,一次扩容1M,字符串长度最大512M 操作: (单个增加)set key value 或 (单个获取)get key value (批量增加)mse 阅读全文

posted @ 2019-06-28 08:27 hangzhi 阅读(124) 评论(0) 推荐(0) 编辑

导航