如何设计一个关系型数据库?为什么要使用索引?什么样的信息能成为索引?

如何设计一个关系型数据库

在这里插入图片描述
要设计一个关系型数据库,首先要将其划分成两大部分,一个是存储部分,该部分类似一个文件系统,来将数据持久化到数据存储设备中。另一个是程序实例模块,来对存储进行逻辑上的管理,而程序实例部分将包含:存储管理模块、缓存机制模块、SQL解析模块、日志管理模块、权限划分模块、容灾机制模块、索引管理模块、锁管理模块。

索引模块

1.为什么要使用索引

咱们先对查询数据的方式做一个调研,最简单方式对数据进行查询,那就是全表扫描,将整张表的数据全部或分批次记载到内存中,刚刚我们提到存储的最小单位是块或者列,他们是由多行数据组成的,我们将这些块都加载进来,逐个块去轮寻,找到我们要的目标并返回,这种方式普遍认为会比较慢的,当数据量少的时候适用,数据量大的时候不适用,因此很多情况下我们要避免全表扫描的发生,所以我们需要映入更高效的机制 索引,它的灵感来自字典,在字典中只要我们把一些关键信息组织起来,比如说偏旁部首这些,查询的时候依据这些指引,就能查询到我们想要的信息,很快便能查到我们要查的字了,这些关键信息和查找的方式便组成了我们的索引,通过索引来大幅度提升查询速度。

2.什么样的信息能成为索引

是能把该记录限定在一定查找范围内的字段就是关键信息。主键便是一个很好的切入点,当然其它唯一键以及普通键等都可以成为索引。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值