又一年过去了,生活还在继续,现在是反思去年数据库世界所发生事件的绝佳时机。
链接:
https://ottertune.com/blog/2022-databases-retrospective/
声明:本文为 CSDN 翻译,未经允许禁止转载。
随着 DBMS 供应商之间基准性能竞争的逐渐平息,显现出一片寂静的景象。我喜欢写年终回顾,所以很高兴能和大家分享 2022 年数据库领域的亮点以及我对它们的看法。
大融资减少,大时代放缓
正如我去年所讨论的那样,2021 是数据库融资充足的一年。随着投资者继续寻找下一个 Snowflake,大量资金投入到开发新 DBMS 的初创企业中。
2022 年初,随着众多大型融资轮的发布,似乎是上一年的又一次重演。盛况始于 2 月,Timescale 发布 1.1 亿美元的 C 轮系列融资、Voltron Data 发布 1.1 亿美元种子和 A 轮系列融资,以及 Dbt Labs 发布的 2.22 亿美元 D 轮系列融资。
Starburst 于 3 月宣布 2.5 亿美元的 D 轮系列融资,用以扩展其 Trino 产品。到了 5 月,Imply 为其商业版 Druid 发布了价值 1 亿美元的 D 轮系列融资。DataStax 在 6 月份的 IPO 中获得了 1.15 亿美元的资金。最后,SingleStore 在 7 月放弃了 1.16 亿美元的 F 轮系列融资,然后在 10 月又增加了 3000 万美元。
在 2022 年上半年,还有几家规模较小的公司推出了令人印象深刻的 A 轮系列融资,包括 Neon 为无服务器 PostgreSQL 产品进行的 3000 万美元 A 轮系列融资、ReadySet 为其查询缓存层产品进行的 2900 万美元的 A 轮系列融资、Convex 为其基于 PostgreSQL 构建的应用程序框架进行的 2600 万美元的 A 轮系列融资,以及 QuestDB 时间序列 DBMS 的 1500 万美元 A 轮系列融资。尽管我们没有构建新的 DBMS 或相关架构,但 OtterTune 在 4 月份发布了自己的 1200 万美元 A 轮系列融资。
但随后,大规模融资在 2022 年下半年戛然而止。除了早期初创企业的融资规模较小,具有丰富经验公司的融资额也没超过 9 位数。10 月,RisingWave 为其流处理引擎进行了价值 3600 万美元的 A 轮系列融资。Keebo 为他们的 Snowflake 查询加速器筹集了 1050 万美元的 A 轮系列融资。11 月,我们看到 MotherDuck 宣布了 4500 万美元的种子 + A 轮系列融资,用于 DuckDB的商业化云版本,之后 EdgeDB 在 11 月进行的 1500 万美元的 A 轮系列融资。最后,SurrealDB 兄弟获得了 600 万美元的种子轮融资(这并不是一个详尽的列表,我可能还错过了一些)。
数据库市场中唯一一个值得注意的金融事件是,MariaDB 在 12 月通过 SPAC 的“灾难性”上市——其股价在首个交易日即下跌了 40%。
我的看法:
与 2021 相比,2022 年大型融资轮减少有两个原因:
最显而易见的原因是整个科技行业已经降温,这部分是由于对通胀、利率和加密经济崩溃的担忧。
另一个原因是,在大环境变得糟糕之前,每一个有能力拿下大轮融资的人都已经这么做了。例如,Starburst 在 2021 年进行了价值 1 亿美元的C轮系列融资之后,又于 2022 年进行了 D 轮融资。
在过去两年中筹集了大量资金的数据库公司,需要快速筹集到更多资金,以保持增长势头。还有人评论说,这些公司得到的金额令人吃惊。坏消息是,除非整个科技行业的环境有所改善,大型机构投资者再次开始当街撒钱,否则这些数据库公司将陷入困境,市场无法维持如此多的数据库独立软件供应商(ISV)。
对于这些估值数十亿美元的公司来说,唯一的出路是 IPO,否则就是破产。问题是对于大多数此类公司来说,收购它们太贵了,除非风投愿意大幅削减其估值。此外,进行大型并购的主要科技公司(如亚马逊、谷歌、微软等)已经拥有自己的云数据库产品,因此尚不清楚谁将会收购这些数据库初创企业。
亚马逊在 2021 以 20 亿美元的估值收购 Clickhouse 是没有意义的,因为他们已经从 Redshift 每年赚了数十亿美元——这个问题并非 OLAP 数据库公司独有,OLTP 数据库公司很快也将面临同样的问题。
我并不是唯一一个对数据库初创企业的命运做出如此悲观预测的人。Gartner 分析师预测,到 2025 年,50% 的独立 DBMS 供应商将倒闭。我认为这有明显的偏见,但我认为能够生存下来的,将是那些努力改进或增强 DBMS,而不是取代它们的公司(例如,dbt、ReadySet、Keebo 和 OtterTune 等)。
我无法评价 SPAC 的“快速 IPO”方式(MariaDB 的上市方式)是不是一个好主意,此类金融手段不属于我的专业领域(即数据库)。但由于这与美国前总统对其社交媒体公司所做的事情类似,我认为这可能是一个见不得人的交易。
区块链数据库仍然是一个愚蠢的想法
有种说法很盛行,即关于 Web3 如何代表人们构建新应用程序的方式发生了根本变化。Web3 运动的核心宗旨是在区块链数据库中存储状态,而区块链本质上是去中心化的日志结构数据库(也就是账本),它使用 Merkle 树的某些变体和 BFT 共识协议来维护增量校验和,以确定要存储到数据库中的下次更新。这些增量校验和是区块链确保数据库日志记录不可变的方式:客户端使用这些校验和来验证以前的数据库更新没有被更改。
区块链是先前想法的巧妙融合,但认为去中心化账本就是每个人无论如何都应该构建 OLTP 应用的想法是错误的。从数据库的角度来看,对于加密货币以外的任何实际用例,它们都无法提供超过现有 DBMS 技术的任何东西。此外,任何声称“在区块链数据库中提供比现有 DBMS 更好的安全性和可审计性”的说法都是错误的。
因此,如果加密货币是区块链数据库的最佳用例,那么 2022 年的加密市场崩溃也于事无补,这只会进一步阻碍了它们的未来。在本次讨论中,我忽略了 FTX 的崩溃,因为它似乎是直接的欺诈行为,与数据库无关。然而我要指出的是,FTX 和所有其他加密货币交易所一样,并没有在区块链数据库上运行业务,而是使用 PostgreSQL。但其他与加密货币无关的区块链数据库使用案例,如贸易和游戏平台,都由于其不切实际或欺诈而失败。
我的看法:
评估一项技术时要遵循的一条规则是,一旦企业发布了有关它的电视广告,它就不再是“新的”。举个例子,如果当 IBM 开始宣传某项技术时,它还没有令人信服的使用案例,那么就永远不会有了:IBM 在 2002 年的一次商业广告中宣传 Linux 是一个热门的新事物,但当时已有数千家公司(包括谷歌)将其作为主要服务器操作系统。
因此,当 IBM 发布其 2018 年区块链商业广告时,我就知道这项技术不会超越加密货币,因为去中心化区块链可以解决集中式 DBMS 无法解决的问题。甚至,今年 IBM 宣布关闭其与航运巨头马士基(Maersk)的供应链 IT 基础设施改造项目(他们在商业广告中大肆宣传过此项目),在我看来也并不奇怪。
与由可信机构控制的、只允许可信客户端直接连接的、精心编写的事务性 DBMS 相比,区块链的效率非常低。除了加密货币或设置陷阱等非法活动外,几乎所有现实世界的互动都以这种方式进行。我们需要信任他人,建立一个运转良好的社会。例如,我授权托管 OtterTune 网站的公司从我们的信用卡中扣款,他们信任云提供商托管他们的软件——但没有人需要区块链数据库来进行这些交易。
从工作量证明(PoW)转换为能源密集度较低的权益证明(PoS)共识机制,确实提高了区块链数据库的性能,但这只会影响数据库的吞吐量,区块链事务延迟仍然以几十秒为单位。如果解决这些长延迟的方法是使用参与者较少的 PoS 区块链,那么应用程序最好只使用 PostgreSQL,并对这些参与者进行身份验证。
感兴趣的话,可以参阅 Tim Bray 的这篇精彩文章(https://www.tbray.org/ongoing/When/202x/2022/11/19/AWS-Blockchain),了解他与 AWS 高层就区块链是否存在可行进行的内部讨论。请注意,他说 AWS 在 2016 年便得出结论,即区块链数据库是一种寻找问题的解决方案,比 IBM 推出区块链商业广告还早两年。不过尽管 AWS 最终在 2018 年发布了 QLDB 服务,但它与区块链不是一回事,它是一个不使用 BFT 共识的集中式可验证数据库。客户对 QLDB 的接受程度并不高,尤其是与亚马逊极为成功的 Aurora 产品相比。
新数据库系统
2022 年有几个关于新 DBMS 软件的重要发布。
Google AlloyDB
最大的重磅炸弹是 5 月份谷歌云发布了新的数据库服务。AlloyDB 并非构建在 Spanner 之上,而是 PostgreSQL 的一个修改版本,它将计算层和存储层分离,并支持直接在存储中处理 WAL 记录。
Snowflake Unistore
6 月,Snowflake 发布了他们带有“混合表”的新 Unistore 引擎,以支持 DML 操作的低延迟事务。当查询更新表时,更改会传递到 Snowflake 的列式存储。对此,SingleStore 方面有些不满,表示他们在这个领域拥有一些专利,但没有任何结果。
MySQL Heatwave
在 Oracle 意识到亚马逊从 MySQL 中赚到的钱比他们还多之后,他们最终决定在 2020 年为 MySQL 构建自己的云产品。但他们并不只是制作一个 RDS 的克隆,而是使用一个名为Heatwave的内存矢量化 OLAP 引擎来扩展 MySQL。2021年,Oracle 宣布他们的 MySQL 服务也支持自动数据库优化(但与 OtterTune 提供的不同)。去年,Oracle 终于意识到他们不是领先的云供应商,并同意在 AWS 上支持 MySQL Heatwave。
Velox
Meta 于 2020 年开始构建 Velox,作为 PrestoDB 的新执行引擎。两年后,他们宣布了这个项目,并发表了一篇关于它的 VLDB 论文。Velox 不是一个完整的 DBMS:它不带 SQL 解析器、元数据目录、优化器或网络支持。相反,它是一个具有内存池和存储连接器的 C++ 可扩展执行引擎,可以使用 Velox 构建一个完整的 DBMS。
InfluxDB Iox
与带有 Velox 的 Meta 一样,Influx 团队在过去两年中一直致力于开发他们的新 IOx 引擎。最终他们宣布,将于 10 月推出带新引擎的 GA 版本。InfluxDB 基于 DataFusion 和 Apache Arrow 从头开始构建 IOx。值得庆幸的是,我在 2017 年警告 Influx 的 CTO,使用 MMAP 是个坏主意,之后他们也在新系统中放弃了 MMAP。
我的看法:
数据库是我生命中第二重要的东西,所以我很高兴看到去年的所有发展。
我对 AlloyDB 的热评是,它是一个简洁的系统,并且投入了大量的工程设计,但我仍然不知道它有什么新奇之处。AlloyDB 的架构类似于 Amazon Aurora 和 Neon,其中 DBMS 存储具有额外的计算层,可以独立于计算节点处理 WAL 记录。尽管谷歌云已经拥有可靠的数据库组合(如 Spanner 和 BigQuery),但它觉得有必要建立 AlloyDB,以试图赶上亚马逊和微软。
值得关注的长期趋势是 Velox、DataFusion 和 Polars 等框架的激增。连同像 Substrait 等项目,这些查询执行组件的商品化意味着所有 OLAP DBMS 在未来五年内将大致相当。与其完全从头开始构建新的 DBMS,或者强行对现有系统做分支(例如 Firebolt 对 Clickhouse 所做的分支),不如使用 Velox 这样的可扩展框架。这意味着每个 DBMS 都将具有十年前 Snowflake 所独有的矢量化执行能力。由于在云中,存储层对每个人来说都是相同的(例如 Amazon 控制 EBS/S3),DBMS 产品之间的关键区别将难以量化,例如 UI/UX 方面和查询优化。
一位数据库先驱的逝去
更令人沮丧的是,2022 年 7 月,我们失去了 Martin Kersten。Martin 是 CWI 的一名研究员,也是几个有影响力的数据库项目领导者,包括 1990 年代的第一个分布式内存 DBMS(PRISMA/DB)和 2000 年代的第一个列式 OLAP DBMS(MonetDB)。Martin 于 2020 年被荷兰政府授予皇家爵士头衔,特别表彰他在数据库方面做出的贡献。
MonetDB 代码库是其他几个 OLAP 系统项目的基础。2000 年代后期,Peter Boncz 和 Marcin Żukowski 将其分支为 MonetDB/X100,并将其商业化为 Vectorwise(现在称为 Actian Vector)。之后 Marcin 使用他在 MonetDB 原始代码上开发的许多技术,与他人共同创立了 Snowflake。最近,Hannes Mühleisen 创建了一个名为 MonetDBLite 的嵌入式 MonetDB 版本,然后他再次将其重写为现在的 DuckDB。
Martin 对现代数据库系统的贡献怎么强调都不为过。如果你在使用任何现代分析型 DBMS(例如 Snowflake、Redshift、BigQuery、Clickhouse),那么你必将受益于 Martin 及其学生在过去 30 年开发中取得的许多进展。
我的看法:
我承认,与 Mike Stonebraker 这样的人相比,Martin 可能并不为数据库研究界以外的人所熟知。我一直认为 Martin 是欧洲版的 Stonebraker:他们都是多产的数据库研究人员,又高又瘦,戴着眼镜,年龄相仿。
除了研究之外,Martin 总会花上大把时间,并渴望与他人讨论数据库架构。我最后一次见到他是在疫情之前的 VLDB 2019。他和我争论了将近一个小时,说强调他认为在 MonetDB 中使用 MMAP 是正确的选择——他断言,因为 MonetDB 专注于只读 OLAP 工作负载,所以 MMAP 就足够了。我感觉很糟糕,因为他还要说服在 Youtube 上观看我数据库课程的学生,随后我便给他发邮件,告诉他为什么我认为 MonetDB 的设计并不完善。
明年将是光明的一年
我总想以愉快的方式结束自己的年终回顾文章,数据库本该让人们对自己的生活感觉良好,因为它们代表了科学和工程突破的顶峰,使我们能够组织有关现代生活各个方面的数据。就我个人而言,2022 年发生了很多变化:
1.OtterTune 在四月份推出了我们的 A 轮系列融资。
2.我的 1 号博士生作为一名新的数据库教授加入了密歇根大学。
3.7 月,我被卡内基梅隆大学“永久雇用”(尽管我仍然受到该校终身教职员工“道德败坏”条款的约束)。
4.9 月我重返全职教学岗位。
在我的亲生女儿开始学前班后,我还从她那里得了四次非 COVID 鼻窦感染。
我对 OtterTune 明年的发展方向感到兴奋。我们计划在 2023 年上半年宣布全面重写我们的数据库自动化服务。我已经发布了我们目前正在开发的新功能预览。由于跨州运输水獭,我们的唱片公司也遇到了一些法律问题,但我们已经解决了,并希望在 2023 年发行新专辑。
(P.S.:一如既往,请不要忘记在假期期间对数据库运行 ANALYZE,或者让 OtterTune 为你自动解决问题。)