字节跳动后端开发面经汇总(数据库与数据结构部分)

这篇博客汇总了字节跳动后端面试中关于数据库和数据结构的部分,涵盖InnoDB存储引擎、MySQL的索引与引擎对比、B+树原理、事务ACID特性和数据结构算法等多个主题。面试问题包括InnoDB的LRU实现、幻读防止、B+树的优势、数据隔离级别、哈希与二叉树的选择、以及各种算法题,如哈希冲突解决、字符串操作和二叉树遍历等。
摘要由CSDN通过智能技术生成

字节后端面经汇总

字节跳动后端开发面经汇总(数据库与数据结构部分)

四. 数据库

①InnoDB

InnoDB是Mysql默认的表存储引擎。其特点是行锁设计、支持MVCC、支持外键、提供一致性非锁定读、同时被设计用来最有效的利用以及使用内存和CPU
一. 结构
在这里插入图片描述
详情

MySQL 的存储引擎用的是什么?(InnoDB)为什么选 InnoDB?

在这里插入图片描述

InnoDB怎么实现(LRU)

详情

InnoDB 怎么防止幻读

详解

介绍一下InnoDB 存储引擎,对比其他存储引擎优点是什么

详解

InnoDB 索引数据结构,深入问复合主键索引的数据结构是否有不同

详解

InnoDB 数据隔离级别 (四个隔离级别说了下 顺带把脏读 幻读 不可重复度说了下)

详解

InnoDB 为什么用b+树 ?多路树的好处?(说了下比较好控制高度 查询稳定 又说了一下对比b树的优势)为什么控制高度?(连续读磁盘 效率高)

详解

InnoDB和MyISAM的区别

②Mysql相关

Mysql有哪些引擎,区别是什么

见上

Mysql的数据库索引是怎么组织的

聚簇索引(主键索引),非聚簇索引(辅助索引)

MySQL 的聚簇索引和非聚簇索引有什么区别?

见上

数据库ACID

详解

写一个数据库的sql语句

详解

③索引

索引是什么

简单说就是方便查找

索引的作用,主键索引的大致流程,Mysql 主键是什么概念

在这里插入图片描述

针对场景如何建立索引,为什么这么建立索引,怎样优化Mysql

用反复查询的变量作为索引,索引不要太长

数据库中的联合索引,索引失效的情况,是全部失效吗,还是部分失效

联合索引知识
索引失效

联合索引:B+树是什么状态 (画了一下,面试官反复问我高度什么的,我说高度没有影响,说了最左前缀 )

这块有分歧

聚簇和非聚簇索引的区别

见上

聚簇索引相对于B+索引的优点

一米万卡奈

非聚簇索引的查询都要回表么

详解

where中or和and对于索引的使用有什么区别

什么样的列或字段不适合建立索引

这里

④B+树

详细描述B+树

见上

B+树 和B树 哈希索引

详解

数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值