SQL、NoSQL还是NewSQL? 未来谁将一统数据库?

导语:最近,一部由吴秀波主演的三国题材剧《虎啸龙吟》火遍大江南北,说的是魏蜀吴三国瓜“分”天下,到司马氏的一统,天下三分归晋,再次达到“合”。而数据库市场亦是如此,由SQL,NoSQL和NewSQL一起撑起的数据库市场如今也有融合的趋势,也许未来的数据库只有一个,那就是NewSQL。

SQL、NoSQL还是NewSQL? 未来谁将一统数据库?

 

数据库其实是个很窄的领域,但作为基础软件之一,它又是企业架构中不可缺少且很难被替换的一环,因为企业90%的业务应用系统都是围绕数据库开发,替换成本高风险大。

因此,即使是在云计算时代,数据库服务依旧成为了云计算巨头如亚马逊AWS、阿里云必争之地。无论是在去年的亚马逊AWSre:Invent
2017大会又或是2017阿里云栖大会上,细心的人都会发现,数据库的比重越来越高,新数据库服务的发布也越来越多。哪怕是即将到来的人工智能时代,笔者相信亦是如此,没有数据何来人工智能?

当然巨头之争,不仅因为数据库是核心竞争力的一种体现,同时数据库服务高额利润也不容忽视。有数据显示,虽然IaaS年年降价,但在过去三年,SaaS的价格却上涨了大约8%。

数据库类型众多,谁才是未来王者?

随着时代发展,应用场景的不断变化,数据库也从关系型数据库的一统江湖到如今的群雄逐鹿,类型越来越多,按国外权威的DB-Engines分类:

SQL、NoSQL还是NewSQL? 未来谁将一统数据库?

 

目前数据库种类多达14种,如传统关系型、文件存储、Key-Value、图形、时间序列、面向对象、搜索引擎、列存储等等。

因为类型太多,为了方便,也有一种分法把数据库归纳划分为3大类:SQL、NoSQL、NewSQL。

SQL、NoSQL还是NewSQL? 未来谁将一统数据库?

 

SQL指的是传统的关系型数据库,关系模型是在1970年由IBM的研究员E.F.Codd博士首先提出的,之后成为数据库领域主流模型,经典应用在金融和电信行业,保证数据库的数据不会出错和丢失。

NoSQL则相反,泛指非关系型数据库,其实非关系模型也并非新事物,早在关系型数据库出现之前就已经存在,只不过从2000年开始随着互联网爆发才变得流行,主要应用在互联网行业,承接应用大规模并发性的流量,解决业务创新不受底层数据库的约束,能快速灵活的扩展。

相比前两者,NewSQL就要新的多,NewSQL一词是在2011年的一份商业分析报告中被首次提出。NewSQL是指一类新式的关系型数据库系统,针对OLTP(读-写)工作负载,追求提供和NoSQL系统相同的扩展性能,且仍然保持ACID和SQL等特性。

那么到底谁才是数据库未来的主流?其实答案已经呼之欲出,传统的数据库架构,在线数据处理的(OLTP)及在线数据分析(OLAP)的数据往往需要两份存储,效率及成本都是相应的挑战。

因此,OLTP(查询)+OLAP(分析)的融合才是未来数据库发展方向和主流,对企业而言,不仅免去传统数据仓库的ETL过程,降低存储成本的同时极大的缩短数据分析的延迟,使得实时分析决策系统成为可能。

众观以上三类数据库,显然符合条件的只有NewSQL。而从目前的发展来看,SQL与NoSQL也已经呈现向NewSQL融合的趋势。阿里云近期就大胆预言,或许未来的数据库只有1个,那就是NewSQL。

阿里云推出首个模块化云数据库

1月17日,阿里云在北京举办了一场2018云数据库智能未来大会,看似只是一场普通的技术交流会,但其背后的意义却非比寻常。

会上阿里云不仅分享了对数据库未来趋势的判断,同时宣布推出首个模块化云数据库Redis
4.0版,性能上还提升了300%之多。非比寻常之处并非指性能提升300%,而是阿里云推出的这个模块化云数据库Redis
4.0,因为它打破了固化的键值存储领域,开创了模块化数据库的先河。

阿里云对数据库未来9个肯定的判断

对于数据库未来的趋势,阿里云有9个肯定的判断,笔者总结如下:

1) OLTP(查询)+OLAP(分析)的融合未来是数据库的主流

2) 未来只需要一个在线的插件式的NewSQL数据库

3) 没有NewSQL:大规模增长的,灵活的企业数据无从谈起

4) 纯软件必死,软硬一体是未来NewSQL的必然方向

5) 持续增长的海量计算压力需要FPGA

6) 通用架构的时代一去不回,为数据库定制的架构将是主流

7) 每一KB的数据,都在变得越来越宝贵,多可用区容灾,必将成为数据库的标配

8) 数据库勒索事件将更加泛滥,安全形势越加严峻

9) 未来的数据库,一定在云上

阿里云这9个肯定判断大部分并不难理解笔者也部分认同,但同样也有不少疑问,模块化云数据库是个什么玩意?阿里云为什么敢狂言说“纯软件必死,软硬一体才是未来NewSQL的必然方向”,那是否意味着没有一体机的纯软数据库公司会死掉?数据库定制架构又是怎么个定制逻辑?能给用户带来怎样的提升?Redis是开源数据库,阿里云在此基础上又做了什么?

对话阿里云云数据库技术总监蔡松露

带着这些问题,笔者现场采访了阿里云云数据库技术总监蔡松露(花名:子嘉),就以上问题进行了深入的交流。

SQL、NoSQL还是NewSQL? 未来谁将一统数据库?

 

▲阿里云云数据库技术总监蔡松露

蔡松露对笔者表示,此次,Redis 4.0版的发布有着非同一般的意义,不仅是阿里云在QQ号出售地图源码层面做了近40项的功能改进。更因为它打破了固化的键值存储领域。Redis 4.0的模块化功能提供了搜索、时序、机器学习、文档处理等大数据分析模块。用户可以根据模块基于Redis构建搜索、地理定位、时序、机器学习等场景,让同一份数据库的计算和分析成为可能。

SQL、NoSQL还是NewSQL? 未来谁将一统数据库?

 

众所周知,过去,企业和开发者在数据库上做搜索或机器学习所面临的环境是不同的,每新增一个功能都需要重构一次数据库代码,既费时又费力。而模块化数据库不同,开发者只需将搜索、机器学习、地理位置和时序列装到阿里云Redis module这个“集装箱”里,无需代码改动就可运行,效率大幅提升。

他还特别强调,在阿里提倡开源需要拥抱、回馈、融合、开放的主旨下:阿里云Redis进行了开源,项目名为ApsaraCache。阿里云Redis团队在整个Redis 4.0开源版本中的贡献仅次于Redis原作者,为第2名。发布了近40项功能。

SQL、NoSQL还是NewSQL? 未来谁将一统数据库?

 

“纯软件必死,软硬一体才是未来NewSQL的必然方向”并非阿里云危言耸听,蔡松露解释道,硬件技术的发展让以前很多的数据库瓶颈正在被逐一突破,例如缓慢的磁盘被快速的闪存取代。因此,数据库技术需要向配硬件适配,才能享受更大的技术红利。尤其是在未来的边缘计算和IOT场景中,需要深度定制和优化。否则,竞争力只会越来越弱,即便不死也是半死不活。

关于数据库定制架构成为主流,蔡松露指出,以前数据库是跑在操作系统上,每次网络和磁盘操作都要做大量的上下文切换,在全新的用户态架构中,绕过了操作系统的多层调用,对性能有了100%的提升。

SQL、NoSQL还是NewSQL? 未来谁将一统数据库?

 

犹如以前的数据库架构就想一道道的收费关闸,数据到达关闸后需要等待关闸开启。用了全用户态的架构后,犹如开了绿色通道,在数据库到达关闸前,已经准备好快速放行。

据了解,性能方面,阿里云Redis已经完成25GE网络的全线升级,并结合硬件性能提升,基于内核的技术架构改造,整体性能提升3倍。原先一个标准版的Redis提供10w的QPS,如果QPS要求更高需要选择阿里云的读写分离版本或者集群版本架构扩展相应性能,现在30w以内的QPS就完全不用扩展配置,省去了大量成本。

此外,基于LFU的热点Key发现及缓存机制等Feature,阿里云Redis4.0可以有效优化直播场景中信息卡顿等现象。目前国内80%的视频直播网站在使用阿里云Redis数据库,包括近期如火如荼的《芝士超人》等移动直播答题APP都将题库、消息等热点数据放在阿里云Redis上

除了Redis外,本次大会上,阿里云还推出了MongoDB 3.4版本,可提供TerarkDB、RocksDB和WiredTiger三引擎切换。以及比社区版提升3倍新能的HBase1.1,成本仅有此前的十分之一。

采访最后,蔡松露指出:“传统的数据库行业定律已经被打破,融合式、兼容并蓄的数据库,将是未来行业发展的一大趋势。”他还预言,也许未来的数据库只有一个,那就是NewSQL。

上一篇:NoSQL是大的网络规模


下一篇:NoSQL 数据库之 Redis