Zilliz定位做基于GPU硬件加速的新一代OLAP数据库系统。公司成立于2016年3月,并于2017年8月完成云启资本领投,靖亚资本、华岩资本跟投的数千万元天使轮融资。
我此前不久在“偶数”的文章中写到过数据库的发展历程,不妨先回顾下。
数据库承担的功能是存储和计算,可分为交易型OLTP(on-line transaction processing)、分析型OLAP(On-Line Analytical Processing)两类:
交易型OLTP是最稳定的,主要是针对基本的、日常的事务处理,银行交易就是一个典型的应用场景,由于不能出纰漏,大企业基本都选用Oracle的产品,该市场80%已饱和,并且增长缓慢。
分析型OLAP是数据仓库系统,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果,像现在智能交通中识别车牌就是典型应用,需要分析大量数据,以及现在正火热的AI都需要分析型数据库做底层支撑。分析型数据库是创业公司的机会,存量市场在200亿美元,目前还在保持高速增长。
Oracle做为数据库的巨头,产品即有OLTP,也有OLAP。第一代分析型数据库/OLAP,代表有Oracle的Exadata,缺点是只能储存在EMC这样的高端专有硬件上,每个节点要花费400多万,并且,多节点共享一个存储设备,导致可拓展性差,往往只能支持10几个节点。
接着,出现第二代数据仓——MPP大规模并行处理。这时,数据已经不需要储存在专有硬件上,普通的x86服务器即可,成本自然下降。各个计算节点的数据独立存在本地的硬盘上,互相之间不共享,计算时将任务并行的分散到多个服务器和节点上,在每个节点上计算完成后,将各自部分的结果汇总在一起得到最终的结果。代表产品有HP Vertica、EMC收购的Greenplum、IBM Netezza,虽然这种架构下节点可拓展至几十个,但依旧不能满足大规模的扩展需求。
随着Hadoop的发展,第三代数据库崛起,数据存储在HDFS上,HDFS是运行在通用硬件上的分布式文件系统。此时,存储、计算分离,各节点之间能够互相访问,扩展性强,可以延伸到上千个节点。不过由于新产品的性能还没能很好磨合,有些情况下,第三代数据库不如第二代快速。
之后,在Hadoop上就长出了很多开源技术,用来更进一步完善、优化性能,像HAWQ、Hive、Impala、Spark SQL等。
在PC上,CPU负责“计算”,我们平日里说的“核”就是代表计算能力,核数越大,算力越高。要进行高性能计算时,往往是通过堆CPU服务器来实现集群化计算,但现在CPU的算力已经到了物理极限,目前停留在16核规模。
GPU之前是负责图像渲染的,就是通过模拟现实场景生成逼真的图片,多应用在游戏等领域,比如衣服对风抖动、布料上的纹理等等,这些都是经过实时渲染而来。这背后每个离子需要经过大量的物理计算,才能给用户带来观影变化。相较于CPU的十几核来说,GPU上可以承载数千个处理单元。
GPU的这种“大规模并行计算”的能力开始被挖掘,从之前协处理器向主流处理器做推移,英伟达在这方面贡献最多。现在,GPU计算已经在深度学习、高性能计算(HPC)中广泛应用,越来越像更高性能的CPU。
此前,数据库是运行在CPU上,最新一代是基于Hadoop优化过的开源技术。而Zilliz要做的是把数据库搬到GPU上。
既然逻辑上成立,那为什么之前没有人做出来过?Zilliz创始人兼CEO谢超(花名“星爵”)分享:“用GPU来跑数据库最早可以追溯到15年前的学术研究。但上层软件受下层硬件的约束,导致这么多年没有发展起来。而如今,英伟达等芯片厂商已经把GPU的生态搭建起来,帮开发者把门槛降低,任何人都可以在上面开发应用,就像当初的安卓系统普及一样,现在也有了实现GPU数据库的苗头。”
之前,PC上的实时数据流是直接传给CPU处理,数据仓库中的数据是从磁盘读取到主存(也就是内存)然后调由CPU处理。在这个流程上,GPU数据库没有本质变化,只不过数据直接传到GPU处理。
改变的是数据库的“存储调度引擎”、“优化器”和“执行器”:
“存储调度引擎”决定数据的吞吐率,即数据访问、存储的带宽。由于GPU是显存,所以带宽比CPU快1个数量级以上。
而“优化器”和“执行器”是决定一个数据库性能的关键。优化器负责找出最佳步骤,执行器负责控制硬件。例如,给一堆数据做排序,“先排序还是先筛选”是由优化器决定,当优化器决定先排序时,接下来由执行器调配硬件。当底层的物理媒介从CPU变为GPU时,执行的架构模型显然需要完全改变。GPU可以做大规模处理,CPU只是单线处理,处理数据的算法上会发生质的改变,速度提高1个数量级。
谢超(花名“星爵”)透露,整体下来,Zilliz可以比CPU数据库的性能提高100倍。
据悉,今年6月份Zilliz已完成第一代产品研发,重点选择银行、政府、互联网行业,目前在测试阶段,收费规则还在探索中。Zilliz首先支持的是基于英伟达GPU的解决方案,预计今年年底产品正式上线,之后也会跟进ATI解决方案,以及FPGA也是尝试的方向。
团队上,Zilliz现在不到20人。创始人谢超(花名“星爵”)曾就职于甲骨文(Oracle)公司美国总部,负责数据库系统的核心研发工作。他作为奠基人之一研发的Oracle 12c多租户数据库(Oracle Multitenant)采用多租户管理的理念,通过可插拔式结构实现数据库集群的动态管理,成功实现了在公有云或者私有云上提供数据库服务,迄今已经为公司创造了超过 数十亿美金的营收。
美国 Kinetica,2016 年种子轮共$13M,2017 年 6 月 A 轮$50M,共融资$63M。
美国 MapD,2014 年种子轮$2M,2016 年 A 轮$10M,2017 年 B 轮$25M,共融资$37M。
以色列 Sqream,2015 年种子轮$7.5M,2017 年 A 轮$24M(预计)。
我是36氪徐宁,企业服务负责人,关注SaaS、云计算、大数据等,如果你也在数据库领域耕耘,可以与我联系,微信xu95704331。