前言
那些沉下心、日积月累的进步才是人生的护城河.
用极致的具体化压垮你的竞争对手!
目录
一. 企业数据架构
二. OLTP与OLAP
当今的数据处理大致可以分成两大类:联机事务处理OLTP、联机分析处理OLAP。
1. OLTP与OLAP的区别
OLTP侧重事务性能一般采用行式存储;
OLAP侧重分析性能一般采用列式存储.
2.OLAP(待写)
3.OLTP-MySQL(开源常问)
3.1 索引B-Tree与B+Tree的区别
- B+Tree只有叶子节点储存行数据,磁盘IO更少,查询效率更高,B-Tree非叶子节点也储存行数据.
- B+Tree叶子节点之间有链式引用,范围查询更快,B-Tree没有.
3.2 聚簇索引与非聚簇索引
数据按照聚簇索引的顺序进行排序,列成树状. 非聚簇索引为二级索引, 一般存在回表查询的操作.
3.3 事务的隔离级别如何实现的
一级封锁协议 二级封锁协议 三级封锁协议 MVCC
3.4 锁(粒度从大到小)
表锁
页锁
行锁
临键锁
间隙锁
插入意向锁
记录锁
MVCC
3.5 数据优化
3.5.1 SQL级优化
- 用好索引 如:最左匹配原则,索引覆盖和索引下推减少回表
- 小循环驱动大循环,减少循环命中时间
3.5.2 数据切分优化
- 读写分离
- 分区
- 分库分表
3.5.3 数据切分带来的问题
- 分布式事务
- 跨节点关联join
- 跨节点分页、排序、函数等
- 全局唯一ID
- 数据迁移