1.数据库发展简史
-
70年代:EF codd 提出关系型数据库模型;
-
80年代:关系型数据库逐步完成工程与产品实现(商业数据库oracle、db2、sybase、sqlserver);
-
90年代:开源数据库萌芽(mysql、postgresql);
-
2000年左右:IT与通信两门技术碰撞开启互联网时代,数据量上升,丰富了开源数据库生态;
-
2006年:google三驾马车(GFS、Bigtable、Mapreduce)开启大数据时代,涌现了Hadoop、redis、mongodb等NoSQL大数据生态;
-
2010:IT与通信两门技术第二次碰撞,4G开启移动互联网时代,产生业务和场景创新,有如下特点:
数据技术栈与方向百花齐放;
NewSQL(继承了分布式技术与关系模型)开始涌现,如Spanner、TiDB;
云计算与数据库、大数据发生了融合,云原生数据库出现,带来更高效的服务交付和商业模式,各种DBaaS(Database-as-a-Service)产品涌现; -
2020:由于技术栈太大而增加使用成本和技术栈成本,从用户需求角度将在线事务处理和分析融合的HTAP成为了强需求。
2.数据库发展的内在驱动
驱动力主要有3点:
-
2.1业务发展
主要在于数据容量:数据存储量、吞吐量(qps、tps) -
2.2场景创新
主要在于数据模型与交互效率、数据多样性:(查询语言、计算模型、数据模型、读写延时要求) -
2.3 硬件与云计算发展
硬件与云计算:读写分离、一体机、云原生等
3.数据库架构演进
在几百GB时代,单节点本地磁盘是最高效的数据架构。
数据量增加可以通过scale up(纵向扩展:增加和升级硬件)来应对,也催生了网络共享存储(share disk)。
当数据量增长远超scale up的能力时,只能通过分布式的share nothing架构应对,即scale out(横向扩展)。
2000年后,特别是伴随看互联网的发展,结构化的存储方式慢慢显得力不从心,比如Key-value、文本、图、时序数据或者,地理信息等非结构化数据的需求变得突出起来。
于是就衍生出了NoSQL(Not OnlySQL)数据库。
4.NewSQL的由来
大部分NoSQL不支持事务,无法满足OLTP业务,而OLTP仍然是主流业务。
因此既满足NoSQL业务扩展又满足OLTP事务,催生了NewSQL发展。
5.数据技术展望-融合还是细分
场景创新催生了数据库技术栈与产品多样性,但也导致了数据副本的无序扩大,同一个数据可能存在于不同链条的不同产品中,增加了成本(技术栈成本、业务迭代成本、人力成本、交付与运维成本)。
- 从交互效率看,需要越来越多的细分、垂直的技术栈与产品
- 从数据使用角度看,需要足够的数据易用性、可维护性、统一性
二者的矛盾成为了痛点,也是未来的课题。
可能数据细分和数据服务的融合是趋势。
数据技术站方向或数据产品的本质是:
应对不同业务场景、结合相对固定基础技术(数据模型、数据结构、存储算法、各种算子、硬件构建了基础数据要素),进行各种数据技术与架构的trade off(选择与平衡)。这在数据架构里无处不在。







网友评论