数据库 面试

文章探讨了企业数据架构中的OLTP和OLAP的区别,详细阐述了MySQL在OLTP中的应用,包括B+Tree索引、聚簇与非聚簇索引、事务隔离级别和锁机制。同时,文章还讨论了数据优化的方法,如SQL优化、数据切分及应对分布式环境中的挑战。
摘要由CSDN通过智能技术生成

前言

        那些沉下心、日积月累的进步才是人生的护城河.

        用极致的具体化压垮你的竞争对手!


目录

前言

一. 企业数据架构

二.  OLTP与OLAP

1. OLTP与OLAP的区别

2.OLAP(待写)

3.OLTP-MySQL(开源常问)

3.1 索引B-Tree与B+Tree的区别

3.2 聚簇索引与非聚簇索引

3.3 事务的隔离级别如何实现的

3.4 锁(粒度从大到小)

3.5 数据优化


一. 企业数据架构

企业数据架构
企业数据架构

 

二.  OLTP与OLAP

当今的数据处理大致可以分成两大类:联机事务处理OLTP联机分析处理OLAP

1. OLTP与OLAP的区别

OLTP与OLAP
OLTP与OLAP

OLTP侧重事务性能一般采用行式存储;

OLAP侧重分析性能一般采用列式存储.

2.OLAP(待写)

OLAP数仓入门问答-基础篇

OLAP入门问答-进阶篇

3.OLTP-MySQL(开源常问)

3.1 索引B-Tree与B+Tree的区别

  • B+Tree只有叶子节点储存行数据,磁盘IO更少,查询效率更高,B-Tree非叶子节点也储存行数据.
  • B+Tree叶子节点之间有链式引用,范围查询更快,B-Tree没有.

MySQL体系构架、存储引擎和索引结构

3.2 聚簇索引与非聚簇索引

数据按照聚簇索引的顺序进行排序,列成树状. 非聚簇索引为二级索引, 一般存在回表查询的操作.

3.3 事务的隔离级别如何实现的

一级封锁协议 二级封锁协议 三级封锁协议 MVCC

3.4 锁(粒度从大到小)

表锁

页锁

行锁

临键锁

间隙锁

插入意向锁

记录锁

MVCC

3.5 数据优化

  3.5.1 SQL级优化

  • 用好索引 如:最左匹配原则,索引覆盖和索引下推减少回表
  • 小循环驱动大循环,减少循环命中时间

  3.5.2 数据切分优化

  • 读写分离
  • 分区
  • 分库分表

   3.5.3 数据切分带来的问题

  1. 分布式事务
  2. 跨节点关联join
  3. 跨节点分页、排序、函数等
  4. 全局唯一ID
  5. 数据迁移

数据切分优化的简解

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值