AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


OpenAI 为什么收购 Rockset?
发布日期:2024-06-23 05:41:17 浏览次数: 2183



周末起来,又有数据圈的收购大新闻了,OpenAI 收购[1]了实时数据分析公司Rockset,虽然没有公布收购金额,但是这家已经成立8年的公司已经完成了6轮融资,在23年的B+轮融资中的估值[2]在1-5亿美元之间。

OpenAI COO赞赏了Rockset将客户数据转化为“可执行的智能”(actionable intelligence)的能力,并且讲会把Rockset集成到OpenAI的产品线中,而Rockset也宣布了将逐步关闭Rockset Cloud的计划,于是北美Rockset的竞品们不约而同的开始了瓜分用户行动。

Rockset的起源和发展

Rockset的创建于2016年,最初的产品定位是Real-time cloud-native analytic database,创始团队包括:

  • Venkat Venkataramani:Rockset的联合创始人兼CEO,曾在Facebook担任数据库基础设施团队的领导。

  • Dhruba Borthakur:Rockset的联合创始人兼CTO,曾是Facebook的Hadoop Distributed File System (HDFS) 项目的技术负责人和RocksDB 的创始工程师。

左图是我珍藏的2020年Rockset白皮书的定位,右图是当前他们网站上的竞品分析列表


实时分析中的异类

可以说Rockset是分析数据库中的一朵奇葩,他几乎是分析数据库中唯一一个用行存做为主存储的,他用RocksDB-Cloud作为存储,保证了天然的存算分离,然后用Converged Index来提升分析的性能,但是行存+索引的方式对比列存有很高的写放大,所以在大规模数据量的分析场景几乎不work,他的产品场景更类似一个HTAP的场景。从上游实时同步TP和NoSQL的数据,然后在Rockset进行实时分析。

实时同步链路

他支持了一系列内置的connector 用来实时同步外部数据,主要包括MONGODB[3],KAFKA,S3,DYNAMODB,KINESIS, GCS等,可以看到除了所有实时数仓都会支持的 消息队列和对象存储以外,Rockset还支持了 MongoDB和 DynamoDB的数据源,同时他提供了一套类似Mongodb的json操作接口,用的是REST API的风格。后来Rockset也补充了从TP同步数据的能力,但是这个是依赖一个中间的Kinesis的,也就是需要用户把MySQL的binlog用AWS DMS同步到Kinesis,然后Rockset可以直接消费这个格式,这个路径还是稍显复杂,对比后来Redshfit推出的Zero ETL,明显劣势了。

Converged Index

由于是闭源产品,并没有太多Converged index的相关资料,但是从官方blog[4]中能看出

Converged Index = Row Index + Columnar Index + Search Index

Row index就是在主存储里面 Rockdb的行存索引,Rockdb的索引还是继承leveldb的SkipList作用于点查的排序前缀索引,而Columnar Index本质上就是一份类似data warehouse的列存,但是有一些小技巧,比如会自动把Array这样的半结构化数据打平,把数组中每一个value存起来(如下图的interests字段),提升半结构化数据的过滤效果,而inverted index就是我们正常理解的倒排索引了。

8年下来,其实Rockset的客户名单里面一直没有什么有名头的大企业,但是积攒了一批数据量中等规模的中小公司[5],卡在中等规模陷阱里面的Rockset特色并不突出,前有Snowflake databricks这样的巨头已经完善了他们的实时能力(Dynamic table, Delta live table),后有Duckdb这样的极致小巧的嵌入式分析引擎,Real-time analytics还有上面图中一堆 ClickHouse Durid Pinot StarRocks这样的在大厂站稳脚跟的开源产品,Rockset的日子着实不好过。

转型Hybrid search

2023年,作为AI 2.0元年,LLM 来了,Vector database 突然作为 “大模型的记忆体” 火了起来,RAG的应用在24年也算是开始真正落地,而Rockset也顺应时势的在自己的新增了一个vector index,其核心特色如下:

  • Vector index

Rockset使用FAISS-IVF向量索引库构建分布式FAISS向量索引,支持即时插入和检索。Rockset可以在同一集合中对向量以及文本、JSON、地理和时间序列数据进行索引,FAISS-IVF通过将向量空间划分为以质心为代表的单元,然后搜索就可以在更小的空间内进行。相对HNSW索引,IVF的构建时间更短,内存消耗也更低。

  • Search Index

Rockset支持的Search index有很多中,最基础的就是基于roaring bitmap存储的Posting lists 索引,可以用来加速标准的标量的谓词过滤,也有基于S2的Geo 位置索引,可以加速地理位置的近邻搜索,还有专门为搜索后的排序后的排序算法 BM25优化的记录词频率的索引

  • Hybrid search

通过结合所有的indexing,retrival 和 reranking, Rockset 提供了一套完整的混合搜索方案呢

  • Isolation of resources for indexing and search

另外通过存算分离的架构,Rockset支持把索引的构建导入放在一个instacne,而vector search 放在另一个instance 中,这样可以两个计算实例的资源完全隔离,实时的导入和索引构建不会影响在线的查询服务。

那么看到这里,你可能会说,这也没啥啊,现在的很多向量库基本不都有这些么,为啥选了Rockset?对此我没有任何信源,只能臆测是价格合适+人靠谱,毕竟Rockset的人还是专业的database guys,并且在AP市场打拼了这么多年也需要找到一个出路,比起那些去年刚刚创业做Vector database的startup 他们可能还有对Vector database 未来更美好的幻想吧~ 数据库加上向量的功能并不是一个那么高的门槛,毕竟vector本质就是一个float数组,查询的时候把几个典型的相似度算法实现了,把Faiss/usearch等向量索引库包进来做一些优化,最基础的vector能力就完成了,从ES,Redis,PG,到Snwoflake,Databricks 都实现这一套。当然现在新型的vectordb在 GPU加速,multi-vector,更多索引算法支持方面还是有不少差异化,但是长期来看,这些差异化是否足够支持客户独立维护一套专用的vectordb我还是存疑的,毕竟向量数据库要把上面这些数据库传统的Geo fucntion,文档全文倒排索引都实现好也需要时间。Rockset就是个例子,他甚至都不处理那么大规模的数据,而我看到的大部分真实的vector用户数据规模还是在 百万到千万量级,他们可能有一定的高并发,实时和低延迟要求去服务线上业务,这个刚好也在Rockset的舒适区内。

公开信息搜了下 rockset只有100人左右(下图是linkedin上有记录的71个人的职责分布),确实船小好调头,整个postitioning 配合之前的Converged Index 转型看起来顺利成章。

OpenAI收购 Rockset做什么?

我收集了网络信息和以及跟朋友的讨论给出三个猜测:

猜测1:AI Search engine

“OpenAI is also rumored to be working on a search engine, so the acquisition of a company that enables real-time data retrieval could point to ChatGPT becoming a formidable competitor to Google Search”

消息出来很快就有爆料[6]说OpenAI 考虑做AI 搜索引擎来跟Google竞争,通过收购Rockset来增强这个方向的可行性,传统搜索引擎还是以关键字搜索为核心展开,向量搜索可以帮助召回更多语义相似的结果,而LLM的总结能力可以大大提升答案的可解释性,问答式的交互方式也可能颠覆传统搜索的入口地位。

但是我其实不太看好这个说法,一个是AI search engine已经有点过于拥挤,Perplexity这样的头部已经吸走了不少资源和流量,而且传统搜索引擎真的难以短期被颠覆的一个原因是AI search的成本还是居高不下,第三点就是大家的搜索习惯也是关键字核心的而非问答为核心的。

猜测2:RAG Framework for OpenAI Enterprise

OpenAI COO, Brad Lightcap, explains how Rockset will fit in at OpenAI: “Rockset’s infrastructure empowers companies to transform their data into actionable intelligence. We’re excited to bring these benefits to our customers by integrating Rockset’s foundation into OpenAI products.”

这段话摘自Rockset发布收购消息的blog[7],OpenAI当前的ARR是34亿美元,据估计[8]付费用户390万,按照20美金/月的plus会员计算,大概有7-9亿营收来自个人订阅,其他的收入主要来自企业版或者开发者API调用,也就是说当前OpenAI的核心营收还是来自B端或者个人开发者。

如果你使用过 OpenAI的SDK,Assistants API是中间的一个重要功能,他本质上就是一个RAG的高层封装,不过普遍觉得对比vector database还是少一点灵活性,而且价格略贵了些。

基于Rockset 来构建一个更灵活的便宜的 Assistants API 不失为一种可能性,而且Hybrid search的理念还是能很好的适配企业级混合文本搜索和语义搜索的灵活需求。ChatGPT enterprise[9]如果在当前除了Privacy没有太多独有特性的情况下都能卖这么多钱,增加完整的Hybrid serach能力可能能增强他们的企业版客户转化。

猜测3:ChatGPT memory

在今年2月 ChatGPT 给Plus会员客户发布了一个 Memory[10]的功能,你可以在个人设置中打开这一功能 (Settings > Personalization > Memory), 打开以后,ChatGpt跟你的对话会考虑你之前的聊天记录,并且搜索相关的信息以后 再给出你答复,而这个memory功能大概率是跟向量搜索相关的。

更早些时候,Sam Altman 也给媒体表达过要把ChatGPT做成一个超级个人助理的野心,而这一起都离不开给每人创建一个小型的知识库,当然在向量数据库的角度,这也就是一个典型的 Scalar filter + semantic search的场景,在一张很大用户聊天记录中,先按照用户id做过滤,然后再进行相似搜索,最后一起作为context 塞给大模型。

更关键的是,这个memory功能可以提供给GPTs使用,也就是说,Gpts里面的机器人可以记录你跟他之间的聊天记录了,这样Character AI之类的应用更容易在GPTs实现了。

总结

无论OpenAI收购Rockset的最终目的是什么,但是有一个明确且被验证的事实就是,OpenAI招聘了大量来自互联网大厂的Data infra人员。虽然 LLMs 重构了AI生态,让这个体系脱离了之前的ML和Data infra的模式,但是AI依旧离不开Data,新时代的AI+Data infra还在探索中,Let‘s seek


53AI,企业落地应用大模型首选服务商

产品:大模型应用平台+智能体定制开发+落地咨询服务

承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询