【2019春招准备:10.数据库综合】

51 篇文章 0 订阅

【内容】

  • curd
  • acid
  • 并发会带来的问题
  • 多表查询(内连接,外连接)
    【补充】

========================================================

1. curd

增删改查

2. acid

一个支持事务(Transaction)的数据库具备的特性

ACID全名解释
AAtomicity被事务包裹的操作是不可分割的
CConsistency数据库总量不应该在提交操作前后发生变化(宏观的抽象的性质)
IIsolation多个事务在并发时,解决如“脏读“等”并发性问题的能力
DDurability保证数据库啊哦做之后必须立即写入持久化介质(如硬盘)

3. 并发问题与隔离机制

√:该问题可能出现
×:该问题不出现

隔离机制脏读不可重复读幻读解释
Read Uncommitted一个事务可以读取另一个事务并未提交的结果(隔离性最低)
Read Committed×一个事务提交后另一个事务才能读取到同一个数据的更新结果(大部分数据库的default)
Repeatable Read××在该事务的时间内,无论其他事物的对其修改与否,读取结果都是完全相同的(mysql的default)
Serializable×××所有事物的操作必须依次执行(隔离性最高,但是性能最差,并发很低)
解释其他事物看见了该事物没有提交的结果(如果该事物回滚,对方读取的叫做脏数据)在整个事物过程中,多次读取数据,其结果不一样(数据值在整个事物过程中,多次查询结果不一样(sql的结果

4. 多表查询

交叉连接(笛卡尔积,x不推荐)
内连接(隐式内连接,显示内连接)
外连接(左外连接,右外连接)

5. mysql索引 && b+

墙裂推荐参考:https://yq.aliyun.com/articles/9280
b+树是B树和索引顺序访问方法(ISAM)得到的
b+树的查找(IO的次数=b+树的高度)

【MyISAM && InnoDB】
都是数据库引擎
MyISAM传统类型
InnoDB 改进版本,主要的区别是支持ACID的事务

MyISAMInnoDB
事务的处理非事务安全型的事务安全型
锁机制级别的锁级别的锁
擅长的操作selectinsert, update
缓存索引块数据块
寻址文件偏移量文件块,文件行

在这里插入图片描述

  • 除了上面的插入操作会做拆分
    B+树实际上在拆分前首先检查,进行旋转操作,保证树尽量平衡,不会有一个分支特别冗杂。
  • B+树的删除操作:使用填充因子控制删除(>50%)

索引=逻辑结构+物理地址
B+树的逻辑结构,保证在lognN的时间内找到需要的值;每一个节点有一个对应的物理地址的指针
第一,通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。
第二,可以大大加快数据的检索速度,这也是创建索引的最主要的原因。
第三,可以加速表和表之间的连接,特别是在实现数据的参考完整性方面特别有意义。
第四,在使用分组和排序子句进行数据检索时,同样可以显著减少查询中分组和排序的时间。
第五,通过使用索引,可以在查询的过程中,使用优化隐藏器,提高系统的性能。

6. B树 B+树的优势

B树
根节点至少两个子节点
阶:所有节点中最多的孩子的个数
比如一个节点最多3个数字的23树,如果按照大小,某个节点的数据到达4个就会分裂。中间的提升到父亲节点上去。若父亲节点也是4个,递归分裂。

B+树
所有的叶节点构成有序链表,
B+树的非叶子结点只包含导航信息,不包含实际的值

B+ 树的优点在于:

由于B+树在内部节点上不包含数据信息,因此在内存页中能够存放更多的key。 数据存放的更加紧密,具有更好的空间局部性。因此访问叶子节点上关联的数据也具有更好的缓存命中率。
B+树的叶子结点都是相链的,因此对整棵树的便利只需要一次线性遍历叶子结点即可。而且由于数据顺序排列并且相连,所以便于区间查找和搜索。而B树则需要进行每一层的递归遍历。相邻的元素可能在内存中不相邻,所以缓存命中性没有B+树好。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值