加入「公开课」交流群,获取更多学习资料、课程及热招岗位等信息
翻译|郑天祺 (Amos Bird) 中科院计算所博士
整理 | 夕颜
出品 | AI科技大本营(ID:rgznai100)
2000 年以来,随着自互联网和云计算技术变革,数据库技术从底层计算系统开始发生一次蜕变,进入了以开源、分布式和云计算为主导的新数据库时代。
之后,数据库领域发生了一些巨大的变化。比如,AWS 于 2014 年推出了云原生关系型数据库 Aurora。阿里云于 2017 年推出云原生关系型数据库 POLARDB,并在 2019 年发布 2.0 版本。除阿里云外,其它国内云厂商也相继推出了自研的云数据库和分布式数据库产品,如 2019 年 8 月,腾讯云一口气发布了五大数据库新品:数据库智能管家 DBbrain、云数据库 TBase、数据库备份服务 DBS、云数据库 Redis 混合存储版,以及自研云原生数据库 CynosDB 商业化版本,进行了一次云数据库产品的战略升级。
就在不久前,AWS 宣布放弃 Oracle 数据库,迁移到自家的 RedShift、Aurora 和 DynamoDB 等本地 AWS 服务上,这一消息曾引起一片轩然大波,虽然 Oracle 创始人拉里·埃里森仍然嘴硬道没有哪家公司能真正离得开 Oracle 数据库产品,但是微软、Oracle、SAP、AWS、Google、IBM 和阿里云构成的 7 强格局中各方势力正在经历着此消彼长的事实已无法掩藏。更多的后起之秀正在崛起,分食这块越来越可口的数据库市场,眼下数据库领域的技术潮流,也在发生着微妙的变化。
今年 3 月份,DeveloperWeek 曾对数百名开发人员、工程师、软件架构师、开发团队和 IT 领导者进行了一次调研,以了解当前 NoSQL 与 SQL 的使用情况、最流行的数据库。
调查结果显示,SQL 和 NoSQL 数据库的使用率分别为 60.48% 和 39.52%,两者之间的差距正在缩小。
从最受欢迎数据库的调查结果中可以看到,榜单的前三甲被 MySQL、MongoDB、PostgreSQL(17.4%)占据,紧随其后的是份额骤然缩小的Redis(8.4%)和 Cassandra(3.0%),而 Oracle 的份额仅为 1.8%。
另外,在过去 30 年中,PostgreSQL 的流行度却迅速飙升。根据 DB-Engines 的《DBMS of the Year》报告,PostgreSQL 已经连续两年蝉联世界“成长”最快数据库。
虽然开源数据库的前 3 名被 MySQL、MongoDB 和 PostgreSQL 占据,但值得注意的是,一家由俄罗斯最大的搜索引擎巨头 Yandex 推出的列数据库产品 Clickhouse,和 Galera、Memcached 及 HBase 等占据了最受欢迎数据库的最后 2% 的份额。
虽然占比并不大,但是自从 2016 年开源以来,Clickhouse 便成为一匹“黑马”,它抗得住日数十亿数据更新和近百万次数据请求,并可秒出查询结果,凭借因其快速处理能力,迅速获得用户的青睐。
近年来,全球数据库领域发生了哪些技术和应用上的变革?在这些变革背后隐藏着什么样的发展趋势和潮流?未来,数据库技术和应用又将朝着什么方向发展?
在由中国计算机学会主办,CCF 大数据专家委员会承办,CSDN、中科天玑协办的中国大数据技术大会(BDTC 2019)上,AI 科技大本营(ID:rgznai100)有幸邀请到 ClickHouse 项目的创始人兼 ClickHouse 开源社区创始人 Alexey Milovidov 来到现场进行了主题分享,并在会前与他进行了一次简短的交流,以进一步了解 ClickHouse 产品的具体情况,Alexey 还以自己从事数据库管理系统十多年的经验,为我们回顾了大数据领域的技术和应用进展脉络,以及未来发展的方向。
以下为采访实录:
AI科技大本营:您好,首先请介绍一下您自己,以及您现在关注哪些技术领域?
Alexey Milovidov:我一直在做 ClickHouse 开发和大数据实时分析技术,将来也会专注于这块。
AI科技大本营:请您谈一谈,最近10年,您亲身经历了大数据技术和行业发生了哪些变化?
Alexey Milovidov:我经历了数据库从 NoSQL 到 Not Only SQL,再到 NewSQL 的演变,数据库具备了更多的能力。虽然不断有新的形势出现,但是技术在不断地融合,包括传统的系统也在吸收新的系统技术。如 MongoDB 的技术已经被一些传统的数据库包括 MySQL 等吸纳进去了。
AI科技大本营:ClickHouse 在这个演变的过程中扮演了什么角色?
Alexey Milovidov:首先,ClickHouse 更像是一种专用系统,它以性能为目标,聚焦于以最快的速度高效地执行任务。不同于传统 OLTP 或文件型系统等,ClickHouse 设计之初就是一个分析型数据库,并努力做到极致。
在转变过程中,数据库和机器学习更好地结合起来了,未来数据库将会更多地与 AI 结合,有时可以直接在你的系统中运行机器学习模型,把原来传统的技术运用在当前数据时代的一些 AI 技术上。为了更好地结合,Yandex 开源了一些产品,包括 ClickHouse、CatBoost。CatBoost 是一个整合在 ClickHouse 中的机器学习库,可以训练模型并直接应用存储在 ClickHouse 中的数据。
AI科技大本营:在从 IT 向 DT 时代的转换过程中,产品和技术得以飞速发展,大数据行业的现状或痛点发生了哪些变化?
Alexey Milovidov:一方面是整合,另一方面是为用户提供更易用的工具,尽可能让用户能低成本直接使用而不需要编程,也许用户还可以用不同的方法进行查询,比如当用户点击网页时,任何人都可以用自然语言进行查询,而不是一定要用 SQL。第二个挑战是如何用 AI 进行数据库自动优化。另一个挑战是数据库和专用硬件设备的整合,比如使用 GPU、TPU、存储可编程 SSD 等。
AI科技大本营:HTAP (Hybrid Transaction and Analytical Process,混合事务和分析处理) 是Gartner近年来提出的一个概念,最近比较时髦,有人认为它将成为未来大数据技术发展的主流,您怎么看待这一说法?
Alexey Milovidov:现在 HTAP 系统还是一个权宜之计,结合了 TP 和 AP 的功能,性能也还凑合,但现在专门的分析系统比 HTAP 做得更好,它只能算是一种权宜之计,但是将来有可能会有突破。
AI科技大本营:应该如何进行改进以取得突破?
Alexey Milovidov:也许可以复制不同的数据结构,现在可以利用多副本机制,即异构副本机制存储两份不同的数据结构,一份面向于事务类型的存储,一份面向于分析型类型存储。当然这是一个很难的事情,但是通过复杂的工程实现这一点,也能达到很好的效果。这其中还有一个挑战,分析系统的数据处理量巨大,但是现在新硬件,包括非易失性存储和专用计算芯片等硬件加速设备,使得之前的一些设计变得可能。
AI科技大本营:Yandex 是否有类似于 HTAP 的产品应用?
Alexey Milovidov:去年,Yandex 推出了一款产品专用于 Yandex 云数据库的产品,叫做 Yandex Database,就是为了 HTAP 而推出的。
AI科技大本营:请您用简单易懂的话解释一下 ClickHouse 及其特性,和其他相似产品相比最大的优势体现在哪里?
Alexey Milovidov:ClickHouse是一个免费的面向事件处理的分析型数据库系统,它最大的特点就是快,俄文中 ClickHouse 就有快速的意思,它可以让用户快速进行大量查询而不减慢速度。
AI科技大本营:ClickHouse由于其特性受到很多企业和个人用户的青睐,但是同时也有一些不完美的地方,比如不支持事务,不支持Update/Delete操作,支持有限的系统等,将来发布的新版本会改善这些点吗?
Alexey Milovidov:ClickHouse 不仅是开源的,未来也有改进的计划,来年有望支持事务以及更好的Update/Delete 操作,并支持更多的系统。关于 2020 年的更多详细计划,可以查看这个项目的 GitHub 。
Github地址:
AI科技大本营:2016年,ClickHouse 中文社区就已经成立了,近年来发展势头比较迅猛,未来ClickHouse在中国有哪些相关部署与规划?
Alexey Milovidov:明年,我们可能将会在杭州、广州、南京等城市进行更多的 Meet Up,并同时与字节跳动等中国企业接触。另外,今年新年期间,可能还有一些针对本地化的有人文情怀的设计推出,带给用户一些小惊喜。
AI科技大本营:您所关注的技术领域最近有哪些研究或应用的新趋势?可以解决现在大数据领域的哪些问题?
Alexey Milovidov:第一,数据库技术将与 AI 技术将有更多的结合;第二,整合专用硬件加速设备;第三,不同新兴数据库领域的融合,TP 和 AP 将会有更多融合。这些趋势将会解决迅速增长的数据量带来的挑战,更好的硬件也能更有效地解决问题,并让用户更简单地使用关系型数据库。
AI科技大本营:未来,数据库领域将会发生什么变化?比如非关系型数据库的市场份额将继续增长甚至超过关系型数据库吗?您对数据库领域未来的发展有哪些展望?
Alexey Milovidov:SQL 还将继续是主流语言,但是会改进,进行更多拓展,变成一个更专业的系统,市场会更大,而 NoSQL 将缩小与 SQL 之间的差距,市场对它仍有需求。在数据库领域,将来可能会更多地与多领域进行整合,比如用 AI 辅助设计,进行时序分析等。另外,尽可能让当前的数据库系统能够存储各式各样的数据,包括现在很多的物联网数据传感器、图片、音像、地理信息等信息。之前我们是没有考虑过这些的,但现在有这样的发展趋势。
采访嘉宾:Alexey Milovidov,俄罗斯 Yandex 公司 ClickHouse 开源社区创始人,ClickHouse 项目的创始人,这是一个开源的分析数据库管理系统。2008 年毕业于莫斯科国立大学力学与数学系,获数学专业学位。此后,他在 Yandex LLC 工作,领导 Yandex Metrica(类似于谷歌 Analytics 和百度统计)引擎开发团队和 ClickHouse 开发团队。他有 11 年 C++ 编程语言开发专用数据结构的经验。
(*本文为AI科技大本营原创文章,转载请微信联系 1092722531)