052022.08

数据库深度复盘与展望

2022.08.05

数据模型的演化本质由底层数据规模、逻辑关系、类型等驱动,其路径是:层次->网状->关系->关系、非关系并行。

  回顾数据库70年发展历程,分布式、云计算、人工智能等创新技术和基础设施的发展陆续为演化注入新活力。以下我们将从数据模型逻辑、技术架构、需求功能、部署方式、存储介质、商业模式、数据库治理模式等七大维度对数据库发展脉络进行详细阐述,理清行业演化逻辑与发展趋势。

  数据模型的演化本质由底层数据规模、逻辑关系、类型等驱动,其路径是:层次->网状->关系->关系、非关系并行。在当前关系、非关系并行时代,新型NewSQL与多模数据库快速发展。传统SQL受限于其拓展性,在大数据发展下逐渐面临瓶颈, 而NewSQL提供了与NoSQL相同的可扩展性,而且仍基于关系模型,保留了极其成熟的SQL作为查询语言,从而保证了数据的强一致性;同时,基于分布式架构,对接多种数据模型引擎,避免搭建多种类数据库的多模数据库快速发展。

  数据库前期的演化史本质上是关系型数据库的演化,关系型数据库已统治市场超过 50年。关系型数据库以二维表形式存储实体和关系,具有易理解、易使用、易维护,自1970年诞生以来,逐步成为业界的霸主。时至今日,关系型数据库不断融入分布式、云原生、AI等新兴技术持续进化,仍是数据库的主流,据DB-Engines热度排名(截至2022/02),前四大数据库Oracle、MySQL、Microsoft、PostgreSQL均为关系型数据库,且分数遥遥领先。

  SQL是关系型数据库的标准语言,相比C、Java、Python等编程语言,SQL贴合口语的设计使得其代码复杂度大大简化、便于数据分析人员上手,同时嵌入式的设计也保证了SQL可以被其他编程语言轻松调用,据TIOBE统计,SQL在近20年稳居TOP10编程语言榜单。关系型数据库的二维表数据存储模式为关系型数据库的流行普及提供了环境基础;而SQL语言的流行也反哺了关系型数据库的推广,两者相辅相成,共赢于数据库市场。

  随着互联网业务规模快速增长,拥有灵活拓展与高读写并发能力NoSQL数据库得到快速发展。由于传统的关系型数据库在保证数据强一致与系统可用的前提下,其水平扩展能力受到限制;非关系型数据库NoSQL则是基于分布式存储原理,放弃了传统的关系模型,在一致性与可用性之间寻求平衡,从而保证了系统地灵活拓展与高读写并发能力。随着社交媒体等互联网业务快速发展,数据量激增,传统关系型数据库性能逐渐达到瓶颈,因此,以保证拓展性与高并发性能为前提地NoSQL数据库得到快速发展。

  为了应对数据的海量增长并追求更低的扩容成本,数据库由单机、集中式向分布式架构快速发展。随着信息化水平快速提升,对数据库的存储、读写并发、扩容要求更高,集中式架构的“Scale Up”纵向扩容机制面临硬件性能瓶颈,因此“Scale Out”式的横向扩容分布式架构成为新趋势,通过网络将物理分散的数据库单元连接为逻辑上的统一整体。从集中式到分布式的演进降低了对硬件性能的要求,使得企业数据库拓展成本大幅降低。

  分布式架构由共享磁盘、共享内存架构,逐步向纯无共享架构发展,在无共享架构中,每个处理器私有内存和磁盘空间,利用网络通信,“Scale Out”式横向增加处理器和相应的内存、磁盘,从而避免事务对内存访问和网络带宽的竞争,提高处理性能。国产方面,无共享分布式架构已经趋于成熟,如PingCAP的TiDB、华为的GaussDB、蚂蚁的Oceanbase、达梦的达梦+、阿里云的PolarDB、腾讯云TDSQL、南大通用的GBase、人大金仓的KingBase、中兴通讯的Golden DB等分布式数据库均为MPP无共享架构。