美文网首页
数据库理论

数据库理论

作者: Bottle丶Fish | 来源:发表于2017-07-28 16:02 被阅读52次

http://blog.jobbole.com/100349/
关系型数据库无处不在,而且种类繁多,从小巧实用的 SQLite 到强大的 Teradata 。但很少有文章讲解数据库是如何工作的。

1 回到基础
1.1 O(1) vs O(n2)

  • 1.1.1 The concept
  • 1.1.2 Examples
  • 1.1.3 Going deeper

1.2 Merge Sort
1.2.1 Merge
1.2.2 Division phase
1.2.3 Sorting phase
1.2.4 The power of the merge sort
1.3 Array, Tree and Hash table
1.3.1 Array
1.3.2 Tree and database index
1.3.3 Hash table
2 Global overview
3 Client manager
4 Query manager
4.1 Query parser
4.2 Query rewriter
4.3 Statistics
4.4 Query optimizer
4.4.1 Indexes
4.4.2 Access Path
4.4.3 Join operators
4.4.4 Simplified example
4.4.5 Dynamic programming, greedy algorithm and heuristic
4.4.6 Real optimizers
4.4.7 Query Plan Cache
4.5 Query executor
5 Data manager
5.1 Cache manager
5.1.1 Prefetching
5.1.2 Buffer-Replacement strategies
5.1.3 Write buffer
5.2 Transaction manager
5.2.1 I’m on acid
5.2.2 Concurrency Control
5.2.3 Lock manager
5.2.4 Log manager
6 To conclude

______________________________________________________________________________________________________

我的学习习惯,导致我喜欢追寻事情的来源。

这篇文章大约分为3个部分:

  • 底层和上层数据库组件概况
  • 查询优化过程概况
  • 事务和缓冲池管理概况

数据库索引的概念

时间复杂度

时间复杂度用来检验某个算法处理一定量的数据要花多长时间。为了描述这个复杂度,计算机科学家使用数学上的『简明解释算法中的大O符号』。这个表示法用一个函数来描述算法处理给定的数据需要多少次运算。
比如,当我说『这个算法是适用 O(某函数())』,我的意思是对于某些数据,这个算法需要 某函数(数据量) 次运算来完成。
重要的不是数据量,而是当数据量增加时运算如何增加。时间复杂度不会给出确切的运算次数,但是给出的是一种理念。

Paste_Image.png
  • 搜索一个好的哈希表会得到 O(1) 复杂度
  • 搜索一个均衡的树会得到 O(log(n)) 复杂度
  • 搜索一个阵列会得到 O(n) 复杂度
  • 最好的排序算法具有 O(n*log(n)) 复杂度
  • 糟糕的排序算法具有 O(n^2) 复杂度
    注:在接下来的部分,我们将会研究这些算法和数据结构。
Paste_Image.png

阵列,树和哈希表

相关文章

  • 数据库理论文档

    数据库理论文档

  • 数据库总结(二)

    (一)理论 数据库的实现基于公式理论,数据库的规范化逐步实现这套理论。 1.公式及定理 1.1公式:R(U, D,...

  • 数据库理论

    数据库设计中一共有6个范式,一般需要遵守3范式即可 第一范式(1NF):强调的是原子性,数据库表的每一列都是不可分...

  • 数据库理论

    数据来源于:_Caesar 1.mysql如何做分页 mysql数据库做分页用limit关键字,然后后面跟两个参数...

  • 数据库理论

    1.mysql如何做分页 mysql数据库做分页用limit关键字,然后后面跟两个参数startindex和pag...

  • 数据库理论

    http://blog.jobbole.com/100349/关系型数据库无处不在,而且种类繁多,从小巧实用的 S...

  • 数据库理论

    关系数据模型 关系由行和列构成的二维结构,对应关系数据库中的表 属性由属性名称和类型名称构成的顺序对,对应关系数据...

  • 1、分布式基础之CAP和BASE理论

    ACID 是数据库事务完整性的理论,CAP 是分布式系统设计理论,BASE 是 CAP 理论中 AP 方案的延伸。...

  • day16 - MySQL数据库

    数据库 - 实现项目中的数据持久化 数据库的类别: 关系型数据库 - MySQL特点: 理论基础:集合论和关系代数...

  • Linux就该这么学 | 第18章 部署数据库系统

    第18章:使用 MariaDB 数据库管理系统 本章学习内容有:介绍数据库以及数据库管理系统的理论知识;介绍 Ma...

网友评论

      本文标题:数据库理论

      本文链接:https://www.haomeiwen.com/subject/tthflxtx.html