【openGauss笔记】一、数据库发展史

文章目录

  • 1.1 网状数据库和层次数据库
  • 1.2 关系数据库
  • 1.3 分布式数据库
  • 1.4 云数据库
  • 1.5 NoSQL数据库
  • 1.6 NewSQL数据库
  • 1.7 多模数据库
  • 1.8 AI原生数据库
  • 1.9 其他数据库
  • 习题

数据库所使用典型数据模型:

  • 层次数据模型:以树结构表示数据记录之间关系
  • 网状数据模型:以图结构表示数据记录之间关系
  • 关系数据模型:以二维表表示数据记录之间关系

【openGauss笔记】一、数据库发展史_第1张图片

1.1 网状数据库和层次数据库

  1. 网状数据库
    1964年,世界上第一个数据库系统——IDS(Integrated Data Storage,集成数据存储)诞生于通用电气公司。
    缺点:

    • 用户在复杂的网状结构中进行查询和定位操作比较困难
    • 操作命令具有过程性性质
    • 对于层次结构的表达不直接
  2. 层次数据库

    • 每一个记录类型用节点表示。
    • 记录类型之间的联系用节点之间的有向线段表示。
    • 每个子节点只有一个父节点,父节点有多个子节点
    • 只能处理一对多关系。

1.2 关系数据库

  • 优点:
    • 概念简单,结构灵活,能满足所有布尔逻辑运算和集合运算规则形成的查询要求。
    • 可以搜索、比较和组合不同类型的数据。
    • 使用关系数据模型进行数据增加和删除操作很方便
    • 具有较高的数据独立性和更好的安全保密性。
  • 缺点:
    • 数据库比较大的时候,查找满足特定关系的数据比较耗时
    • 能很好的处理“表格性数据”,却无法处理当前出现的越来越多的复杂类型数据(如文本、图像、视频)。

1.3 分布式数据库

  • 众多节点之间通信会花费大量时间。
  • 数据的安全性和保密性在众多节点之间会受到威胁。
  • 在复杂的存取结构中,原有的有效存取数据技术可能不再适用。
  • 分布式的数据划分、负载均衡、分布式事务处理和分布式执行技术缺乏新的突破。

1.4 云数据库

云数据库即是数据库部署和虚拟化在云计算环境下,通过计算机网络提供数据管理服务的数据库。因为云数据库可以共享基础架构,极大地增强了数据库的存储能力,消除了人员、硬件、软件的重复配置。

1.5 NoSQL数据库

尽管关系数据库系统技术已经相对成熟,能很好地处理表格类型的数据,但对业界出现的越来越多复杂类型的数据(如文本、图像、视频等)无能为力。尤其是步入互联网Web 2.0和移动互联网时代,许多互联网应用有着高并发读写、海量数据处理、数据结构不统一等特点,传统的关系数据库并不能很好地支持这些场景。另一方面,非关系数据库有着高并发读写、数据高可用性、海量数据存储和实时分析等特点,能较好地支持这些应用的需求。因此,一些非关系数据库也开始兴起。

它们不保证关系数据的四个特性:原子性、一致性、隔离性、持久性(Atomicity、Consistency、Isolation、Durability,可简称ACID)。

NoSQL数据库主要包括4种类型:

  1. 文档数据库(Document-Oriented Database)
    常见的文档数据库有MongoDB、Apache CouchDB、亚马逊AWS的Document DB等。
    MongoDB的每个数据库(Database)下包含多个集合(Collection),每个集合下又可以有多个文档(Document),每个文档中的每条记录(Record)就是一条数据。这与关系数据库的记录(Record)和数据表(Table)的概念相似,但是同一个集合下的文档可以存储格式不同的数据,存储操作更加灵活。

  2. 列簇式数据库(Column-family Database)
    传统数据库有列数的限制,而宽表(BigTable、Hbase)通过列簇的概念来降低这一限制。但是宽表带来了存储的开销,而列簇数据库通过融合行键值和列来形成统一关键字,并且可以把值分成多个列簇,让每个列簇代表一张数据映射表。
    列簇数据库不同于列数据库。数据库存储方式分为两种:行存储列存储

    • 行存储即按照行进行组织存储,适合于交易型业务,例如整行数据的增加和删除;
    • 列存储是按照列进行存储,适合于分析型业务,例如单列数据的聚集分析。
      【openGauss笔记】一、数据库发展史_第2张图片
  3. 键值数据库(Key-Value Database)
    键值数据库使用简单的键值方法来存储数据,是一种最简单的NoSQL数据库,具有较高的容错性和可扩展性。

  4. 图数据库(Graph Database)

1.6 NewSQL数据库

这类数据库不仅具有NoSQL对海量数据的存储管理能力,还保持了传统关系数据库的ACID和SQL等特性。

1.7 多模数据库

多模数据库(Multi-Model Database)是能够支持多种数据库模型(例如关系数据库、文档数据库、键值数据库、图数据库)的数据库,将各种类型的数据进行集中存储、查询和处理,可以同时满足应用程序对于结构化、半结构化和非结构化数据的统一管理需求。

1.8 AI原生数据库

2019年5月,华为公司发布了全球首款AI原生(AI-Native)数据库——GaussDB,该数据库实现了两大革命性突破:

  1. 该数据库首次将人工智能技术融入分布式数据库的全生命周期,实现自运维、自管理、自调优、故障自诊断和自愈。
  2. 该数据库通过异构计算创新框架充分发挥x86、ARM、GPU、NPU多种算力优势。

1.9 其他数据库

  1. 实时数据库
  2. 终端数据库
  3. 数据仓库
  4. 数据湖
  5. 并行数据库
  6. 大数据分析工具

习题

  1. 什么是数据库?什么是数据仓库?它们的区别和联系是什么?

    1. 数据库是存储没有经过任何加工的原始数据的,通过数据库软件实现。
    2. 数据仓库是为了满足数据分析需要设计的,存储的是经过ETL过程的数据,能够反映相当长一段时间内的历史数据内容,是不同时间点数据库快照的集合。
    3. 区别:
      • (1)存储数据内容
        数据库是存储未经处理加工的原始数据,都是跟业务挂钩的数据。数据仓库存储的是从分散的数据库数据中抽取出来的数据,并且数据需要经过综合处理(大多数的综合处理都是在进入数据仓库之后进行的),综合处理解决不同数据库中源数据重复和不一样的地方,包括像表字段的同名异义、异名同义、单位不统一等等。

      • (2)数据量
        数据仓库的数据量要比数据库大的多。

      • (3)数据更新
        数据库存储的数据都是随着用户操作会进行实时更新的,而数据仓库的用户在进行分析处理时不进行数据更新操作,但数据会随着时间变化而变化的(增加新的数据库快照)。

      • (4)职责
        数据库主要用在生产环境的,只要与业务相关的都会使用到数据库来存储数据,数据仓库是BI下其中一种技术,主要是用于数据挖掘和数据分析、辅助决策。

      • (5)数据存储时间
        数据库一般保存60-90天的数据,而数据仓库一般需要保存较长时限,例如:5-10年。

      • (6)类型
        数据库是操作型数据库,称为联机事务处理OLTP,针对具体业务在数据库联机的日常操作,通常对少数记录进行查询、修改。数据仓库是分析性型数据库,称为联机分析处理OLAP,一般针对某些主题历史数据进行分析、支持管理决策。

  2. 与数据库管理系统相比,使用文件处理系统来管理数据的主要弊端有哪些?
    数据的冗余和不一样、数据访问困难、数据孤立、完整性问题、原子性问题、并发访问异常、安全性问题。

  3. 在数据管理技术发展阶段中,下面可以实现数据共享的阶段是(C)。
    A.人工管理阶段
    B.文件管理阶段
    C.数据库管理阶段
    D.以上阶段都可以

  4. Microsoft SQL Server数据库管理系统创建的数据库是属于下面(C)数据模型。
    A.层次
    B.网状
    C.关系
    D.对象

  5. 在数据库应用中,下面数据库应用结构适合全国铁路客票销售系统的是(B)。
    A.集中式结构
    B.客户端/服务端结构
    C.分布式结构
    D.以上结构都可以

  6. 按传统的数据模型分类,数据库系统可以分为(C)三种类型。
    A.大型、中型和小型
    B.西文、中文和兼容
    C.层次、网状和关系
    D.数据、图形和多媒体

  7. 保护数据库,防止未经授权或不合法的使用造成的数据泄露、非法更改或破坏。这是指数据的(A)。
    A.安全性
    B.完整性
    C.并发控制
    D.恢复

你可能感兴趣的:(openGauss,数据库,运维,云计算)