当前构建大数据应用的难点是什么?对于这个问题,相信很多资深从业者都会回答:海量数据的高效处理与运维。在大数据时代中,它是数据库行业面临的基础性问题,如何将它解决?既是挑战,也是机遇。
在无数数据库行业的老将新兵中,我们注意到一批力图解决大数据语境下,数据库使用和运维难题的“引路人”。今天,InfoQ的专访对象---姚延栋,正是这批大数据“引路人”中的一个。
作为Greenplum的第三号员工,在过去十年间,姚延栋曾带领团队将Greenplum打造成为世界排名第三的分析型数据库,创下由华人主导的数据库产品最好排名。而在数据库领域从业数十年后,他又选择开启自己的创业之旅,与两位合伙人共同创办了一家名为四维纵横的数据库公司。那么,他为什么在这个时间点选择创业?当传统行业的数字化转型成为大势所趋,数据库领域又发生了什么新故事?我们带着这些问题,同四维纵横创始人姚延栋一起聊聊数据库的过去与未来,挑战与机遇。
行业中存在一种思维惯性
“创业是为了打破行业的惯性。”
“如果把数据库领域比作一个大森林,那么我们就是对地形非常熟悉的原住民。当有人想穿过大森林,却不知该走哪条路的时候,我们就充当“引路人”来帮助他们穿过森林。倘若没有我们,那他们可能会按照自己的惯性去走。”
姚延栋在Greenplum效力的十年期间,最初主要从外围模块入手打造产品,后来逐步向核心迈进,打磨内核模块,直到团队驾驭整个数据库内核,他坦言这与农村包围城市的过程十分类似。在此期间,他发现行业中存在一种惯性思维,而创业的目的就是为了打破这种惯性。
那么,这个惯性到底指的是什么?
以时序场景为例,现在业内普遍流行使用专用的时序数据库,典型的代表产品有InfluxDB、OpenTSDB 等,而与此同时,几乎所有场景都需要关系型数据库。这样一来,大家就不得不引入多个数据库产品,使得技术栈以及监控运维变得十分复杂。
虽然专用时序数据库在一定程度上满足了业务对于时序处理的需求,但也存在诸多问题,其中性能低、扩展性差的问题尤为显著。过去时序数据库大多是为数据中心的服务器监控、埋点数据处理等简单场景设计的,所以,其无法为物联网等场景下的大量数据源和大量指标提供支持。除此之外,开发效率低、需要MPP数据库或者大数据产品配合以及数据孤岛化等方面,都是摆在从业者面前的难题。
应运而生的超融合时序数据库
“我一直把数据库的技术演进和生物界的进化类比去看。”
从上世纪60年代诞生起,数据库技术就一直在不断地演进、迭代,其背后主要是两股力量在推动:一股力量是性能问题,另一股力量是效率问题。
上世纪七八十年代,关系型数据库开始独步天下,从业者主要是基于关系型数据库来高效存储和处理应用开发中用到的数据;到了2000年左右,数据规模大幅增长,而大数据处理技术尚未展露雏形,整个社会对于浩瀚信息的处理仍处于比较迷茫的阶段,以至于技术的迭代速度赶不上数据增长的速度。自此,大数据处理的性能问题开始显现,数据库领域随之出现了时序数据库、KV数据库、文档数据库等专用数据库,以期解决性能从0到1的问题。但由于应用要与多个数据库沟通,从多个数据库读取数据到应用程序内存中再进行关联、聚集以及合并等计算,很多数据处理逻辑被迫只能放在应用中,开发和运维效率就不可避免地大打折扣。
如此一来,为了解决效率问题,行业中又出现了Presto等类型的产品,即在专用的数据库上封装一个查询引擎,试图把数据处理逻辑从应用处理逻辑中剥离出来。这种方式虽然在一定程度上解决了开发效率问题,但性能仍是短板,且并未从根本上解决技术栈复杂的问题。