数据库是它是大量数据的集合,这些数据长时间存储在计算机中,井井有条,可共享且受统一管理。数据库是一种以某种方式存储在一起的数据集合,可以与多个用户共享,具有最小的可能冗余,并且独立于应用程序。可以将其视为电子文件柜-存储电子文件的地方,用户可以在文件中添加,查询,更新和删除数据。那么数据库有哪些种类?
DBMS(数据库管理系统)主要通过数据的保存格式进行分类,现阶段主要分为以下几种类型。
层次数据库(Hierarchical Database,HDB)
层次数据库是最早研制成功的数据库系统,它把数据通过层次结构(树形结构)的方式表现出来。层次数据库曾经是数据库的主流,但随着关系数据库的出现和普及,现在已经很少使用了。
比较具有代表性的层次数据库是 IMS(Information Management System)数据库,由 IBM 公司研制成功。
关系型数据库(Relational Database,RDB)
关系型数据库是现在应用最广泛的数据库。关系型数据库在 1969 年诞生,可谓历史悠久。和 Excel 工作表一样,关系型数据库也采用由行和列组成的二维表来管理数据,所以简单易懂。同时,它还使用 SQL(Structured Query Language,结构化查询语言)对数据进行操作。
传统的关系型数据库采用表格的存储方式,数据以行和列的方式进行存储,要读取和查询都十分方便。下表是一些在关系型数据库中的数据。
比较具有代表性的关系型数据库有 Oracle Database、SQL Server、DB2、PostgreSQL 和MySQL。
面向文档(Document-Oriented)数据库
文档型数据库的灵感来自于 Lotus Notes 办公软件,和最后一种键值存储数据库类似。文档型数据库可以看作是键值数据库的升级版,允许之间嵌套键值。而且文档型数据库比键值数据库的查询效率更高。
面向文档数据库会将数据以文档的形式存储。每个文档都是一系列数据项的集合。每个数据项都有一个名称与对应的值,值既可以是简单的数据类型,如字符串、数字和日期等;也可以是复杂的类型,如有序列表和关联对象。
数据存储的最小单位是文档,同一个表中存储的文档属性可以是不同的,数据可以使用XML、JSON或者JSONB等多种形式存储。
具有代表性的面向文档数据库有 MongDB 和 CouchDB。
列存储(Column-oriented)数据库
列存储数据库将数据存储存在列族(column family)中,一个列族用来存储经常被一起查询的相关数据。例如,如果有一个 Person 类,我们经常会一起查询他们的姓名和年龄而不是薪资。这种情况下,姓名和年龄就会被放入一个列族中,而薪资则在另一个列族中。
列存储数据库通常用来应对分布式存储的海量数据。具有代表性的列存储数据库有 Cassandra 和 HBase。
XML 数据库(XML Database,XMLDB)
XML 数据库是一种支持对 XML(标准通用标记语言下的一个应用)格式文档进行存储和查询等操作的数据管理系统。在系统中,开发人员可以对数据库中的 XML 文档进行查询、导出和指定格式的序列化。
键值存储数据库(Key-Value Store,KVS)
键值存储数据库是用来保存查询所使用的主键和值的组合的数据库。具有编程语言知识的读者可以把它想象成关联数组或者散列。
近年来,具有代表性的键值存储数据库有 Redis、Memcached 和 MemcachedDB。关于数据库有哪些种类的内容介绍到这里就结束了,想了解更多关于数据库的信息,请继续关注中培伟业。