常见的数据库分类方式如下四类。
关系型数据库是指采用二维表格的关系模型来组织数据的数据库库系统。关系型数据库是由二维表及其之间的联系所组成的一个数据组 织。直接使用通用的SQL语言,使得操作关系型数据库非常方便,关系型数据库遵循ACID规则。
非关系型数据库是用于非关系模型来组织数据的数据库系统,如键值、列、文档、图形等。非关系型数据库在1998年被首次提出,非关 系数据库试图去摆脱传统关系数据库的约束限制,比如像数据的一致性、合并内存中的数据处理以及简化数据模型。NoSQL数据库用非结 构化数据的来快速存储和检索,不使用为关系数据库提供支撑的结构化数据图表,这与关系型数据库结构化数据是不同的。NoSQL数据库 放宽或取消了一些ACID的规则,以达到更好的性能和更大的灵活性。NoSQL数据库认为 ACID 属性的要求过于严格,大多数NoSQL数据库 遵循BASE原则来代替。

非关系型数据库适用于超大规模和高并发的场景。根据数据类型,可以分为键值存储数据库、列存储数据库、文档型数据库、图形数据库。随着 web2.0的兴起,超大规模和高并发的社会型网络服务类型的动态网站对数据库高并发读写、可扩展性和高可用性的要求,以及对海量数据存储和访问 在效率上的需求,非关系型数据库已经成为一个“互联网经济”首选方案。常见的NoSQL数据库包括键值存储数据库、列存储数据库、文档型数据库、 图形数据库等。
键值存储:数据被存储为键-值对(键-阵列对),键值存储是所有NoSQL数据库中最简单的数据库。典型代表:Redis、Memcached、Apache Ignite、 Riak等;
列存储:也可称为柱状存储,列式存储其中包含连续存储值数列的行的集合,所有的列可通过列式排列,它们将数据列存储在一起,而不是行。典 型代表:Hbase、Cassandra、Scylla等;
文档存储:可用于管理,检索和存储文字文档的集合,将每个键与称为文档的复杂数据结构配对,文档可以包含键数组对、键值对甚至嵌套文档。 典型代表:MongoDB、Apache CouchDB、ArangoDB、Couchbase、Cosmos DB、IBM Domino、MarkLogic、OrientDB等;
图形存储:这些存储关于图形、网络的信息,例如社会关系、路线图、交通链接。典型代表:Neo4J、InfoGrid、Infinite Graph。

数据库按其应用场景可分为OLTP事务型数据库、OLAP分析型数据库、HTAP混合型数据库三类:
OLTP事务型数据库主要面向事务类场景,实时性要求高,数据量通常不大,面向一线业务人员。OLTP(On-Line Transaction Processing,联机事务处理),主要面向事务型应用的场景,OLTP系统主要使用关系模型,保证强一致性,保证事务的ACID特性,面向 一线业务人员,支持多并发、实时、快速地增删查改,例如银行交易、零售电商、车票预订等;
OLAP分析型数据库主要面向分析类场景,历史数据为主,数据量大,面向分析与管理人员。OLAP(On-Line Analytical Processing, 联机分析处理),主要面向分析型应用的场景。OLAP系统可以高速多维分析来自数据仓库、数据集市或者数据湖的数据,可使用关系型 或者非关系型的数据库,主要面向分析师和管理者,支持对历史数据的复杂分析操作,从而赋能企业商业智能决策。

HTAP是混合了OLTP和OLAP场景。HTAP(Hybrid transaction/analytical processing,混合事务/分析处理)是混合OLTP和OLAP业务同时 处理的系统,在对新旧数据进行OLAP分析的情况下增加事务的处理来对数据进行更新。HTAP概念由2014年Garnter公司提出,HTAP是一种 新兴的应用体系结构,它打破了事务处理和分析之间的“墙”,它支持更多的信息和“实时业务”的决策。
HTAP基于分布式架构,支持弹性扩容,可按需扩展吞吐或存储,轻松应对高并发、海量数据场景。随着数据价值的进一步挖掘,企业对 数据库系统也提出了新的要求。现阶段企业为满足交易处理和分析的需求,往往采用OLTP+OLAP的组合方案。但二者之间往往存在时延, 无法满足企业实时分析的需求;同时管理两个平台往往需要组建两支团队,运维成本高。 HTAP混合型数据库基于新的计算存储框架,能 够同时支撑OLTP和 OLAP 场景,避免传统架构中大量数据交互造成的资源浪费和冲突。
集中式数据库:是一种仅在单个位置存储、定位和维护的数据库。这种类型的数据库是从该位置本身修改和管理的。因此,该位置主要是任何数据 库系统或集中式计算机系统。通过互联网连接(LAN、WAN 等)访问集中位置。该集中式数据库主要供机构或组织使用。

分布式数据库:由多个相互连接并分布在不同物理位置的数据库组成。因此,分布式数据库可以独立于其他物理位置管理存储在各种物理位置的数 据,不同物理位置的数据库之间的通信是由计算机网络完成的。
集中式数据库VS分布式数据库:集中数据库是企业的最初选择,可以利用位于系统中心的服务器统一管理所有的共享资源 ,并处理来自用户的请求。 单机数据库积累了大量的实践经验,在强一致性、稳定性、迁移成本和运维管理方面都更胜一筹,而且各资源独立,应用隔离性好,数据安全性高。 分布式数据库在灵活性和扩展性方面具有优势,一方面分布式给予了每个部门根据其应用程序的特定需求选择软硬件的自由,不必因为共享IT架构 而做出妥协;另一方面分布式IT架构天生自带可扩展属性,能够根据业务规模实现无限弹性扩展。
云数据库主要可以分为云厂商的传统数据库和云原生数据库。云数据库是在云计算的大背景下发展起来的一种新兴的共享基础架构的方法, 它极大地增强了数据库的存储能力,消除了人员、硬件、软件的重复配置,让软、硬件升级变得更加容易。现阶段云数据库主要包括两种: 一种是托管在云厂商上的“传统”数据库,例如阿里云、腾讯云上的MySQL、PostgreSQL、MongoDB、Redis等;一种是基于云环境的云原生 数据库,例如AWS的Aurora、阿里云的Lindorm和PolarDB等。

云数据库极大地利用了云计算“资源池化”的优势,在成本、可用性、易用性、扩展性和并行处理方面较传统数据库有绝对优势。云数据 库即开即用,用户可以根据自身的业务情况弹性开支、灵活调整;无需从头采购基础软硬件,无需考虑专业人员(DBA)部署,节省了人力 物力;同时云数据库大多支持热备架构,可以实现故障秒级自动切换,备份、恢复更加灵活。但同时,由于云环境的特性、产品的不成熟 性和市场的混合部署需求,云数据库在数据质量、数据迁移、数据融合、性能优化和规范标准方面仍有改进的空间。