数据库做为我们日常开发的一个组件或者说基础服务,也许有人认为把它当个黑盒直接用就好,费那事儿干嘛。确实数据库的设计也做到了让我们不了解也能干活。但实际开发中往往会遇到性能退化、遇到bug,遇到服务问题等等,对数据库了解一些,就能更快的恢复,减少风险。
另外,作为经过多年发展,近乎成熟的产品,数据库里有不少有意思的地方。这里面对于设计一个数据库,一个存储引擎有大量的工作,以及各种取舍与权衡。比如最容易想到的,写入的时候如果顺序写,那数据插入效率更快,但如果是按某个顺序来检索,就必须得查出来再重新排序。比如数据怎样序列化,协议怎样组织,索引是怎样工作的,查询分析器、执行计划这些是怎样工作的,怎样挑选执行计划从而来保证查询的高效;另外数据库里数据是怎样组织来保证数据的存储、压缩来优化空间占用,又是怎样提升磁盘到内存中的访问速度,怎样做垃圾回收的......
最近看了一些数据库相关的书、文章等内容感觉不错,后面打算根据自己的理解写一写,也会选一些优质的英文文章翻译。
今天是翻译的第一篇。
数据库是什么?
概括来讲,数据库是一系列可以方便的访问和修改的数据的集合。
所有数据库管理系统的主要工作都是可靠的存储数据并使其对用户可用。
甚至说简单的一堆文件都可以做到轻松访问和修改这一点。实际上,像SQLite这类简单的数据库也确实仅是一堆文件。但是,SQLite 它是一些经过精心设计的文件,因为它允许执行这些操作:
通过事务来保证数据安全和一致
可以快速处理数百万量级的数据
概括来看,一个数据库可以看成以下图这些部分组成:
在很多书籍或论文里,对于数据库的描述都有自己的方式。比如『数据库技术内幕』一书组件插图是这样的:
所以不用太关注我们是怎样组织这些组成部分或者太关注处理流程怎样命名,因为我们做了一些取舍以适合这篇文章的编写。你需要重点关注的是这些不同的组成部分。
总体理解就是将数据库可以划分成多个相互交互组件。
核心组件
流程管理器:多数数据库都有一个需要管理的「池」,用来组织流程、线程等。甚至,为了取得纳秒级等极致性能,一些现代的数据库会使用其自己的线程,而不再是基于操作系统的线程。
网络管理器:网络的 I/O 一直是很重要的部分,特别是对分布式数据库来说。这也是为什么一些数据库实现自己的网络管理器的原因。
文件系统管理器:数据库遇到第一个瓶颈是磁盘 I/O。有一个能够完美处理操作系统文件系统甚至替换它的文件系统管理器相当重要。
内存管理器:为了避免磁盘I/O带来的影响,需要大量的内存。但是当你需要管理大量的内存的时候,就会需要一个高效的内存管理器。特别是你有多个查询同时在用内存查询的时候。
安全管理器:用于管理用户的身份验证和授权
客户端管理器:用于管理客户端的连接
工具
备份管理器:用来备份和还原数据库
恢复管理器:用来在数据库崩溃之后,以一致的状态来重新启动数据库
监控管理器:用来记录数据库的活动日志并提供监控数据
「管理」管理器:提供工具来管理数据库、表空间、模式,并管理像表的名称、结构等数据库的元数据
查询管理器
查询解析器:检查查询是否合法,像SQL语句有没有词法、语法错误这种
查询重写器:预优化查询
查询优化器:优化查询,让查询可以更高效的执行
查询执行器:编译和执行查询
数据管理器
事务管理器:处理事务
缓存管理器:和我们常用缓存一样理解,在使用前先把他们放到内存,在数据写到磁盘前也放到内存
数据访问管理器:访问磁盘上的数据
标签: 数据库最近更新
- 最新:宁夏首条高铁5G网络全线开通2023-01-09
- 5项数字化转型国家标准正式立项2023-01-09
- 漯河联通“六抓六促”推广党建负责人工作法2023-01-09
- 【速看料】泰安移动开展“四个一”抓实抓牢节前廉洁教育2023-01-09
- 我国大数据产业规模达1.3万亿元复合增长率超30%2023-01-09
- 宿州移动警企联动“重拳打猫”再添战果2023-01-09
- 焦点热议:中国联通故障中心平台及网络智能运维机器人系统获“优秀级”认证2023-01-09
- 浙江联通实现省内重点城市“一市一池”全覆盖|焦点快看2023-01-09
- 苹果服软!iPhone 15曝光:全系标配USB-C、灵动岛 Pro版还有钛合金2023-01-09
- 每日观察!未来要取代iPhone!苹果AR/VR头戴设备将春季发布:原型机已发放2023-01-09
- 快看:“天灾加人祸”,特斯拉的好日子到头了?2023-01-09
- 【全球热闻】支付宝2023年“集五福”来了 网友:两块钱的大项目2023-01-09
- 全球今头条!马斯克承诺成空谈!推特被裁员工仅获1个月工资补偿2023-01-09
- 微软Xbox老大斯宾塞盛赞索尼:无障碍手柄是对PS生态很好的补充2023-01-09
- 每日资讯:暴雪网易复合几乎不可能:不会降低标准 正和新代理谈的火热2023-01-09
- 苹果砍单“链条”受过 “果链”上市公司另寻出路2023-01-09
- 天天热资讯!紫辉创投郑刚再呛罗永浩:多次退出锤子科技股东群,用新公司股权要挟投资人放弃基本权利2023-01-07
- 投资人炮轰罗永浩“势利眼”,曾参与锤子科技两轮融资,称其是中国乔布斯|全球通讯2023-01-07
- 天天观点:罗永浩发文回应投资人郑刚2023-01-07
- 罗永浩回应郑刚炮轰:锤子每年都开股东会,新公司已给老股东股权补偿2023-01-07
- 蚂蚁集团股东上层结构调整、马云不再为实控人,继续强化与阿里的隔离_全球新要闻2023-01-07
- 二叠纪大灭绝期间紫外线辐射增加?化石花粉粒中“防晒霜”添证据|全球快资讯2023-01-07
- 湖北西部秭归盆地首次发现侏罗纪中期恐龙足迹化石-环球讯息2023-01-07
- 观察:蚂蚁集团大动作!马云退出实控人位置,股东投票权进一步分散,拟引入第五名独董2023-01-07
- 罗永浩回应投资人“炮轰”:郑刚对我的评论毫无事实基础-环球快报2023-01-07
- 网传马云现身曼谷:吃路边摊看泰拳比赛 还上阵打了一通2023-01-07
- 投资人郑刚炮轰罗永浩 全球快看2023-01-07
- 全球实时:蚂蚁强化与阿里隔离 马云股份表决权变了2023-01-07
- 刚刚,蚂蚁集团发布重要公告!_环球快播2023-01-07
- 锤子手机投资人、紫辉创投创始人郑刚深夜炮轰罗永浩:不懂感恩2023-01-07