一. 相关概念

数据库系统,成型于上个世纪80年代,是计算机领域三大基础软件系统之一。

  1. DB(DataBase):数据库是存储在计算机存储设备上的结构化的相关数据集合。它不仅包括描述事物的数据本身,而且还包括相关事物之间的联系。
  2. DBA(Database Administrator):是从事管理和维护数据库管理系统(DBMS)的相关工作人员的统称,属于运维工程师的一个分支,主要负责业务数据库从设计、测试到部署交付的全生命周期管理。
  3. DBS(DataBase System): 主要提供应用数据的组织、存储、维护、访问等数据管理功能的系统。
  4. DBMS(Database Management System):操纵和管理数据库的大型软件,用于建立、使用和维护数据库的软件系统。
  5. DBAS(DataBase Application System):数据库应用系统(DBAS)是在数据库管理系统(DBMS)支持下建立的计算机应用系统。

二. 数据库使用排名:

2021年03月数据库排行榜,按人气排名数据库管理系统,涵盖 340 多个系统。 排名标准包括搜索系统名称时搜索引擎结果的数量、Google 趋势、 Stack Overflow 网站、LinkedIn、Twitter 等社交网络中的提及的情况, 综合比较排名。

dba_tables表与dba_objects表区别 dba在数据库里是啥意思_mysql

三. 数据库分类

1. 关系型数据库

关系型数据库,是指采用了关系模型来组织数据的数据库,其以行和列的形式存储数据,以便于用户理解,关系型数据库这一系列的行和列被称为表,一组表组成了数据库。用户通过查询来检索数据库中的数据,而查询是一个用于限定数据库中某些区域的执行代码。关系模型可以简单理解为二维表格模型,而一个关系型数据库就是由二维表及其之间的关系组成的一个数据组织。

dba_tables表与dba_objects表区别 dba在数据库里是啥意思_数据库_02


组织方式:

  • 每个表由许多行和列组成。
  • 每个新行均包含有关一个实体(例如一种产品或一个订单行)的数据。这称为记录。
  • 每列(也称为属性)包含与记录相关的一条数据,称为元组。属性的示例是所售商品的数量或产品的价格。引用数据库表时,属性称为field。

考虑到这种结构,数据库为您提供了一种处理这些数据的方法:SQL。SQL(结构化查询语言)是搜索记录或进行更改的强大方法。几乎所有的DBMS都使用SQL,尽管许多DBMS都添加了自己的增强功能。这意味着当您在使用MariaDB时学习SQL时,几乎所有的语言都不是特定于MariaDB的,并且还可以与其他关系数据库一起使用,例如PostgreSQL,MySQL,Oracle和SQL Server。MariaDB最初是作为MySQL的替代产品而创建的,因此MariaDB和MySQL尤其接近。

传统关系数据库:Oracle、MySQL、Microsoft SQL Server、PostgreSQL
大数据常见数据库:Hive、Impala、Presto、ClickHouse

2. 非关系型数据库

NoSQL,泛指非关系型的数据库。随着互联网web2.0网站的兴起,传统的关系数据库在处理web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,出现了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。NoSQL数据库的产生就是为了解决大规模数据集合多重数据种类带来的挑战,特别是大数据应用难题。

优点

  • 易扩展,NoSQL数据库种类繁多,但是一个共同的特点都是去掉关系数据库的关系型特性。数据之间无关系,这样就非常容易扩展。无形之间也在架构的层面上带来了可扩展的能力。
  • 大数据量,高性能,NoSQL数据库都具有非常高的读写性能,尤其在大数据量下,同样表现优秀。这得益于它的无关系性,数据库的结构简单。

键值存储数据库
这一类数据库主要会使用到一个哈希表,这个表中有一个特定的键和一个指针指向特定的数据。Key/value模型对于IT系统来说的优势在于简单、易部署。但是如果数据库管理员(DBA)只对部分值进行查询或更新的时候,Key/value就显得效率低下了。

常用:Tokyo Cabinet/Tyrant, Redis, Voldemort, Oracle BDB。

列存储数据库
这部分数据库通常是用来应对分布式存储的海量数据。键仍然存在,但是它们的特点是指向了多个列。这些列是由列家族来安排的。

常用::Cassandra, HBase, Riak。

文档型数据库
文档型数据库的灵感是来自于Lotus Notes办公软件的,而且它同第一种键值存储相类似。该类型的数据模型是版本化的文档,半结构化的文档以特定的格式存储,比如JSON。文档型数据库可以看作是键值数据库的升级版,允许之间嵌套键值,在处理网页等复杂数据时,文档型数据库比传统键值数据库的查询效率更高。

常用:CouchDB, MongoDb. 国内也有文档型数据库SequoiaDB,已经开源。

图形(Graph)数据库
图形数据库顾名思义,就是一种存储图形关系的数据库。图形数据库是NoSQL数据库的一种类型,它应用图形理论存储实体之间的关系信息。关系型数据用于存储明确关系的数据,但对于复杂关系的数据存储却有些力不从心。

搜索引擎存储
搜索引擎数据库最近比较火的包括Solr和Elasticsearch等。Solr是Apache 的一个开源项目,基于业界大名鼎鼎的java开源搜索引擎Lucene。在过去的十年里,solr发展壮大,拥有广泛的用户群体。solr提供分布式索引、分片、副本集、负载均衡和自动故障转移和恢复功能。如果正确部署,良好管理,solr就能够成为一个高可靠、可扩展和高容错的搜索引擎。

四. 国产数据库

国产数据库老三家:达梦,南大,神通

国产数据库的历史

大概就是在二十世纪八十年代,萨师煊教授和王珊教授推开了中国数据库领域的大门,培养了中国数据库的第一代人才;到了九十年代后,Oracle 席卷中国,占据了中国很大的市场,但是中国也有了第一代原型数据库,比如东软的Openbase、中软的Cobase和华科的DM Database;进入二十一世纪后,国家的 863 计划设立了[数据库重大专项],有了国家政策的扶持,达梦数据库、人大金仓、南大通用和航天神舟这些公司开始发展,不过在原有的传统关系型数据库领域里,Oracle 和 IBM 的先发优势太大了,当时的环境要求的是经济发展,而不是自主可控,于是国产数据库进入了死循环,没有市场就无法验证数据库是否可靠,无法验证数据库是否可靠那么久没有公司敢用,也就没有市场;直到2010年后的云计算时代和开源社区的兴起,国产数据库开始了弯道超车,阿里喊出了“去IOE”的口号,国产数据库领域真正进入到了蓬勃发展的时代,一系列优秀的数据库和数据库公司诞生了,比如TiDB、OceanBase等等。

dba_tables表与dba_objects表区别 dba在数据库里是啥意思_搜索引擎_03