Market Size
中国信通院在最新发布的《数据库发展研究 报告(2021 年)》中预测:2020 年全球数据库市场规模为 671 亿美元,其中中国数据库 市场规模为 35 亿美元(约合 240.9 亿元人民币,占全球 5.2%)。预计到 2025 年,全球 数据库市场规模将达到 798 亿美元,中国数据库市场总规模将达到 688 亿元人民币(占 全球约 12.3%),市场年复合增长率为 23.4%。
History
几波浪潮:
- 1980-1990,Oracle为代表的商业化数据库开始显现。
- 1990-2000,MySQL、PostgreSQL等开源数据库崭露头角,同时数据库从单一的OLTP扩展到了OLAP,分析型数据库开始出现,如Teradata。
- 2000-2010,互联网公司开始主导数据库演进的话语权,谷歌的 GFS(Google File System)、Google Bigtable、Google MapReduce 三驾马车解决了分布式系统下存储、计算与分析的问题,很快的衍生了一个新的领域叫 NoSQL(Not Only SQL),就是针对非结构化、半结构化的海量数据处理系统。现在也有很多很好的商业公司基于 NoSQL 发展,比如说文档数据(MongoDB)、缓存(Redis)等大家平常应用开发都会用到的 NoSQL 系统。
- 2010年后,云计算为数据库插上了新的翅膀,AWS Aurora、Redshift、Azure SQL Database、Google Spanner 以及阿里云的 POLARDB(云原生关系型数据库) 和 AnalyticDB (云原生数据仓库)等都发展起来了,它们的特点就是云原生、一体化分布式、多模和 HTAP 的能力。
名词释义:
云原生:基于云计算的基础设施打造,具有可伸缩、资源虚拟化、存算分离等特性。
多模:多种模态,如文档型数据库、时序数据库、图数据库等,满足不同场景的定制化需求。
OLAP和OLTP: 见下节。
HTAP:Hybrid transaction/analytical processing (HTAP), 同时支持OLAP和OLTP需求的混合型数据库。
总结而言,数据库的演进经历了从结构化数据在线处理到海量数据分析,从SQL+OLAP的RDBMS到ETL+OLAP的Data Warehouse和Data Cube,再到今天异构多源的数据类型的发展历程。
Database Types
大家知道,数据库可以分为几类:
- 最经典的是传统关系型OLTP数据库,其主要用于事务处理的结构化数据库,典型例子是银行的转账记账、淘宝下单、订单以及商品库存管理等。其面临的核心挑战是高并发、高可用以及高性能下的数据正确性和一致性。
- 其次是NoSQL数据库及专用型数据库,其主要用于存储和处理非结构化或半结构化数据(如文档,图,时序、时空,K-V),不强制数据的一致性,以此换来系统的水平拓展、吞吐能力的提升。
- 再次是分析型数据库 (On-Line Analytic Processing, OLAP),其应用场景就是海量的数据、数据类型复杂以及分析条件复杂的情况,能够支持深度智能化分析。其面临的挑战主要是高性能、分析深度、与TP数据库的联动,以及与NoSQL数据库的联动。
除了数据的核心引擎之外,还有数据库外围的服务和管理类工具,比如数据传输、数据备份以及数据管理等。最后就是数据库的管控平台,无论是私有云、专有云、混合云还是自己的IDC机房内进行部署,总要有一套数据库管控系统来管理数据库实例的产生和消亡、实例的资源消费等,能够以简单的形式提供给DBA以及数据库开发者。
DBMS(Database Management System)
数据库系统的核心位置在操作系统和SQL的接口之间,简单而言就是在存储系统与上层抽象之间架起了一个系统来管理对于业务有用的数据,如果不这样设计则需要使用一些高级程序语言开发应用程序来与操作系统交互并管理这些数据。而数据库将对于数据的管理、存储以及消费抽象出来,这样一来不用每次都在应用程序里写相关的逻辑了,而可以专注于业务逻辑,数据管理相关的逻辑全部交给数据库系统实现,并且用SQL结构化查询语言对于数据访问接口进行抽象。
数据库的挑战:数据库系统最关键的挑战就是并行访问时的写写冲突和数据一致性问题。此外,还有读和写的冲突问题,比如在数据库里做批量写入的时候系统宕机,应该考虑如何让系统自动恢复。为解决以上的问题,数据库系统提出了一个核心概念——事务。简单而言,事务就是一系列动作可以被看作一个整体,从用户视角来看事务是隔离运行的,一个用户的事务和另一个用户没有关系。如果系统出现异常,事务要么全部执行完毕,要么一个也没有被执行。这样引申出来事务(Transaction)的核心概念:原子性、一致性、隔离性、持久性(ACID)。
Cloud Native Database
传统架构依赖于高端硬件,每套数据库系统服务器少,架构相对简单,但无法支持新业务的扩展需求。而云计算机构的核心逻辑就是通过虚拟化技术带来池化资源。云原生数据库采用分布式数据库架构,实现大规模扩展,每套数据库系统横跨多台服务器和虚拟机,带来了全新的系统管理挑战。其中最核心的挑战就是如何实现弹性以及高可用,实现按需按量使用,使得资源高效利用。
Alibaba’s database practice
在2005到2009年,当时阿里巴巴拥有亚太最大规模的Oracle RAC集群;在2010年到2015年开始,使用开源数据库以及分库分表的技术来解决对于商业数据库的依赖;从2016年开始到现在,阿里巴巴都在自研数据库上发力,TP方面包括POLARDB和OceanBase,AP方面则有分析型数据库AnalyticDB。
数据库的未来发展趋势可以总结为以下四点:
产品架构与技术创新:云原生 + 分布式 (弹性、高可用)。架构上分布式共享存储、存储计算分离,云原生架构+Shared Nothing分布式架构,满足弹性、高可用、水平拓展的能力。
数据挑战:多模,结构化与非结构化数据 (多源异构数据)。结构化与非结构化数据如何融合异构处理,比如数据湖的概念、ADB里面用向量处理引擎把非结构化数据变成结构化数据,高维向量、多源异构数据处理的技术。
数据处理与分析:海量数据分析在线化 (实时在线交互式分析)。如何对海量数据进行在线分析和计算,支持实时在线交互式分析,需要做并行处理(DSP模型、MPP模型等等),对并行调度计算进行优化。
系统能力提升:智能化 + 安全 (使用方便可靠、运维简易)。如在管控平台的层面如何做智能化的调度、监控以及自动修复,怎样去做数据的安全处理、隐私保护、加密处理等等,使得整个数据库的使用更加方便可靠、运维简易。
Companies
List:
明星产品
PingCAP:混合型分布式数据库、国产、开源
估值:~$3B
Snowflake
多模态
图数据库Nebula:
todo
Some sources:
2022数据库行业发展现状及竞争格局分析
阿里云李飞飞-如何看待数据库的未来