大厂后程序员

这波 AI 的泼天富贵,哪款数据库可以接住

首先能想到的是过去一年很火的向量数据库,Milvus,Pinecone 这些。如果对比 15 年前移动互联网崛起时,就像那时的 NoSQL。当年的 NoSQL 也像今天的向量数据库一样百花齐放,今天绝大多数都已不在了,但其中也确实跑出来一个巨人,MongoDB。那在今天这些向量数据库里,是不是也能跑出一家 MongoDB?

MongoDB 成功的背景:

1. 移动互联网带来的技术革新。JSON 成为了客户端/服务端交互最主流的交互方式;NodeJS 出现,由此诞生了不少前端出身的全栈工程师,他们需要一款不需要太了解后端知识,相比于传统关系型数据库更加容易上手的数据库。

2. 在位者无作为。首先是 SQL 和 NoSQL 之争,在技术选型里,当年的 SQL 和 NoSQL 算是互斥的。像 MySQL, PostgreSQL 打了 SQL 的标签,就难吸引 NoSQL 的拥趸。后来 MySQL, PostgreSQL 们才慢慢补上了各种 NoSQL 和 JSON 能力。另外 MySQL, PostgreSQL 背后也没有成熟的商业公司操盘,开源商业化这条路还是以 MongoDB 为首的这一代公司趟出来的。

3. 开发者。MongoDB 重视开发者体验,最早和 Node 深度绑定,和 Node 互相成就。Mongo 完整了 Node 技术栈,成为了可以取代传统后端开发 (PHP/Java + MySQL) 的技术解决方案。

上面的第一条是大背景,第二条使得 MongoDB 没有面临更加成熟产品的降维打击,第三条使得它能从一众竞品中脱颖而出。我们看向量数据库赛道的这些要素:

1. 大背景。符合。AI 的大背景。

2. 在位者无作为。不符合。这次市场上所有成熟的数据库都很快跟进,给自己的数据库添加了向量能力。不同于 SQL 和 NoSQL,向量能力和已有的数据库能力不互斥,而是一个补充。

3. 开发者。不符合。可以把 LangChain 类比为 Node。目前还没有一款向量数据库可以说是 LangChain 的标配。

AI 场景下确实需要向量能力,但未必需要一款单独的向量数据库。

检验大模型,常被提起的一个实验是大海捞针(find a needle in a haystack)。使用向量数据库,也是用于匹配向量。它们均指向了AI 场景对于数据库的核心需求,搜索。而在已有的数据库里,就有专门做搜索的 ElasticSearch。

相比于当年 MongoDB 面对的 MySQL,PostgreSQL,向量数据库面对的 ElasticSearch 是一个强劲很多的对手。ElasticSearch 背后的 Elastic 公司是一家基于开源项目,成功商业化的上市公司。而且除了 Elastic,还有 AWS 这些云厂商和他们支持的 ElasticSearch 分支 OpenSearch。虽然 ElasticSearch 和 OpenSearch 内部是竞争关系,但是对外他们都属于 ElasticSearch 阵营。在 AWS Summit 现场也发现,AWS 几乎所有 AI 演示项目用的都是 OpenSearch 而不是单独的向量数据库。

向量数据库并非没有机会,但要接住这波 AI 的泼天富贵,不光要成为最好的向量数据库,而是要成为最好的搜索数据库。就像新能源车里的特斯拉还是蔚小理们,不是只做最好的电车,而是最好的车。

Image