mysql黄东旭:“向量数据库”还是“向量搜索插件+SQL数据库”?丨我对2024年数据库发展趋势的思考开源分布式关系型数据库TiDB

如果我们用一个词来总结2023年的数据技术领域,那个词无疑是“急速变革”。我们见证了数据库内核技术与云原生架构的融合演进,AI+Data的浪潮涌现,以及用户工作负载的深刻转变。GenAI时代的到来,就像一股不可抗拒的潮流,推动着数据技术的每一朵浪花,朝着更智能化、更灵活化的巨浪之海奔流。

毫无疑问,AI将会对数据处理提出非常多新的诉求,数据技术领域也会面临着多重挑战与机遇,AI正在重塑数据技术的全新生态。我们不禁要问:在GenAI的大潮中,选择“向量数据库”还是“以SQL数据库作为核心,添加向量搜索插件”?数据库如何应对GenAI对数据库扩展性和实时交互的诉求?浪涌般海量数据的实时查询会不会带来巨大的成本压力?AI带来的自然交互方式催生怎样的开发者体验?这些问题将在本文中一一解答

“向量数据库”还是“向量搜索插件+SQL数据库”?这是一个答案很明确的问题。

如果说过去CRUD应用是对数据库访问的静态封装,那么随着GenAI的普及,尤其是Chatbot或Agent的产品形态,对数据的使用会是更加灵活和动态的。过去,集中的数据存储和应用是因为技术的局限,很难为个人提供个性化的服务,尽管现代的SaaS其实很希望往这个方向发展,但是为每个用户都提供个性化的体验对算力和开发的挑战太高,而GenAI和LLM将提供个性化服务的成本降得很低(可能就是几段Prompt),以至于对于数据库而言,带来几个变化:

○个人(或一个组织)产生的数据价值会变得越来越高,但这类数据通常不会很大

○GenAI会使用更加动态和灵活的方式直接访问数据,这样效率最高

○对数据的访问从边缘发起(从Agent或者GenAI直接发起)

一个很好的例子是GPTs,GPTs支持通过的自定义的Prompt和用户提供的RESTfulAPI来创建自己的ChatGPT,基础的ChatGPT会在它认为需要的时候以灵活的方式调用你给定的Action。这个调用发生方式和参数是后端的Action提供者无法预料的。而且可以预料的是很快GPTs将会提供标记个人身份信息的机制,这样对于Action的提供者来说,相当于后端的数据库有了最重要的索引:UserID,剩下的就很好理解了。

这里你可能会提出质疑,RAG不是标准的做法吗?但现有的RAG构建的方式几乎都是静态的,而知识应该是可以实时被更新的,这里不得不提到向量数据库。

PlaintextRustINSERTINTOtbl(user_id,vec,...)VALUES(xxx,[f32,f32,f32...],...);SELECT*FROMtblWHEREuser_id=xxxandvector_search([f32,f32,f32,f32...])类似的访问可能是更符合开发者直觉的。

而关系型数据库天然支持插入和更新,另外配合向量索引的搜索能力,便可以将RAG变成一个可以实时更新实时查找的正反馈循环(利用LLM引入进行二次的Summary,然后将更新的Index储存在DB中)。更重要的是,关系型数据库的引入消除了向量数据库带来的数据孤岛的问题,当你可以将向量索引筛出来的数据关联(JOIN)到同一个DB中其他的数据的时候,灵活性带来的价值就得以显现。

另一个好处是,Serverless的产品形态,同样也将数据的所有权归还给用户本人,大家思考一下,在我们熟知的Web2时代,我们的数据是隐藏在一个个互联网公司的服务背后的黑箱,我们没有办法直接访问;而在GenAI的应用场景下,数据的交互变成一个三角的关系,用户-数据(RAG)-GenAI。很有意思的是,这个正是Web3的理想之一,GenAI的普及很可能顺手也将Web3想实现的将数据的所有权交还给用户的理想,这在Web2时代是不可能实现的,这其实是一种技术理想的回归。

当然,我相信在未来RAG会成为数据库的很重要的一种新应用场景,在这种场景中Serverless形态提供的云数据库服务会变成标准化的。

由高价值数据驱动的应用成为GenAI应用的主流,弹性与实时交互成为数据库能力的基石。

在预测一里我们提到,GenAI时代的应用要求知识和数据是可以被实时更新的,这对数据库的弹性以及实时交互提出了非常直接的需求。

但这些数据库大多是SharedNothing的系统,Sharednothing的系统通常会有一个假设:在集群中的节点是对等的,只有这样数据和Workload才能均匀的分散在各个节点上。这个假设对于海量数据+访问模式均匀的场景没有问题,但是仍然有很多的业务具有明显的冷热特征,尤其是在GenAI带来的数据访问方式越来越动态和灵活的2024年及以后。

我们最经常处理的数据库问题之一就是局部热点。如果数据访问倾斜是一个业务的天然属性的话,对等的假设就不再是合理的,更合理的方式是将更好的硬件资源倾斜给热点的数据,而冷数据库使用更廉价的存储,例如,TiDB从一开始将存储节点(TiKV)/计算节点(TiDB)/元信息(PD)分离,以及在后来TiDB5.0中引入自定义PlacementRule让用户能够尽可能决定数据摆放策略,就是为了尽可能弱化节点对等假设。

但是更终极的解决办法在云端,在基本的扩展性问题得到解决后,人们开始追求更高的资源利用效率,在这个阶段,对于OLTP业务来说,我想可能更好的评价标准是CostPerRequest。因为在云端,计算和存储的成本差别是巨大的,对于冷数据来说,如果没有Traffic,你甚至可以认为成本几乎为0,但是计算却是昂贵的,而在线服务不可避免的需要计算(CPU资源),所以高效利用计算资源,云提供弹性将成为关键。

另外,请不要误解,弹性并不意味着便宜,on-demand(随需提供的)的资源在云上通常比provisioned(预分配)的资源更贵,持续的burst一定是不划算的,这种时候使用预留资源更合适,burst那部分的成本是用户为不确定性支付的费用。仔细思考这个过程,这可能会是未来云上数据库的一种盈利模式,

与弹性同样重要的需求就是实时交互。GenAI时代的应用需要数据库不仅要有强大的数据处理能力,还需要有高效的实时数据广播和同步机制。这不只是让数据能够实时更新,而是确保数据流能够实时流动,让数据库能即时捕捉到每一次交互,每一个查询,确保每一个决策都是基于最新、最准确的信息。(就是用户愿意为更高价值的实时交互付钱,想想股票实时交易和直播电商的场景就知道了)

于是整个系统——从数据的产生到处理、再到存储和检索——都必须要在实时的框架下工作,能够在毫秒级别做出实时响应,这也需要数据库能实时在事务处理(OLTP)和分析处理(OLAP)之间无缝同步。这样的实时交互能力,将会是现代数据库区别于传统数据库的决定性因素之一。

成本分析已经成为所有人关心的问题,在云数据库的可观测性中成为独立新视角。

与传统的可观测性不一样的是:在云上,一切Workload都会成为客户的帐单的一部分。对于用户来说一个新的问题便是:为什么我的帐单看起来是这样?我需要做什么才能让我的帐单更便宜?账单的可解释性做得越好,用户体验也就越好。

但是如果计费测量的粒度过细,也会影响产品本身的性能以及增加实现的成本。这里面需要平衡。但可以确定的是,在思考可观测性产品的方向上,成本分析可以作为一个独立的新视角。

成本分析可以帮助用户发现系统运行中的潜在问题,并采取措施予以优化。例如,如果用户观测到某个数据库实例的CPU使用率较低,但成本却很高,就可以考虑将该实例的规格调整为更低的级别。

AWS今年发布的CostandUsageDashboard和Reinvent上AmazonCTODr.Werner的演讲专注于成本的架构艺术也同样可以看到这个趋势。他提出了“俭约架构”七大法则来在云的环境中打造更加高效、可持续的系统,为我们提供了一个系统性的指导框架。

当GenAI时代的各种应用和工具变得越来越轻巧,开发者体验将成为现代数据库设计的核心目标之一。

数据库平台化不仅仅是漂亮的Web管控界面以及一些花哨的功能堆砌。我很喜欢PlanetScale的CEOSamLambert在他的个人Blog里面关DevelopExperience的描述他引用了乔布斯的一句话“Greatartstretchestaste,itdoesn’tfollowtastes(伟大的艺术拓展审美边界,而不是刻意迎合。)”。

好用的工具之所以好用,是因为其中是饱含了设计者的巧思和品味,而且这个设计者也必须是重度的使用者,这样人们才能体会到那些细微的快乐与痛苦,但是又不至于沉浸其中使其盲目,其实这对负责开发者体验的产品经理来说是极高的要求。

APIFirst,数据库平台应该提供稳定的/前向兼容的API,一切在管控平台里能干的事情,API都要能做到,最好你的管控平台是基于你的API构造的。这为你提供一个功能齐备的好用的CLITool也是关键的必要条件。

使用统一的认证体系,在设计阶段将管控的认证和用户体系与数据库内部的认证体系打通,传统的数据库基于用户名和密码的权限体系在云的时代是不够的。这为了后续与云的IAM和Secret管理体系对接打下基础。

对不同的功能构建不同的/稳定的小工具(Doonething,dothingswell),但是通过一个统一的CLI入口和语义系统进行调用。比较好的例子是rustup,甚至git也是个很好的例子。

稍微总结一下,2024年,数据和数据库技术仍然处于巨大的变革期,谁也没办法预测未来,因为我们就身处这么一个不确定性巨大的时代。但好的一面是,创新仍然层出不穷。我今天预测的,很可能过几个月就会被我自己全部推翻,也是很正常的事情,如果能给当下的你有所启发,那就够了。

PingCAP是国内开源的新型分布式数据库公司,秉承开源是基础软件的未来这一理念,PingCAP持续扩大社区影响力,致力于前沿技术领域的创新实现。其研发的分布式关系型数据库TiDB项目,具备「分布式强一致性事务...

THE END
1.一文带你读懂向量数据库(上)澎湃号·湃客澎湃新闻什么是向量数据库? 向量数据库的概述:向量数据库是一种数据库,专门设计用于存储和查询向量数据,常用于机器学习和数据科学领域。向量数据库可以高效地存储大规模的向量 什么是向量数据库? 向量数据库的概述:向量数据库是一种数据库,专门设计用于存储和查询向量数据,常用于机器学习和数据科学领域。向量数据库可以高效地存https://m.thepaper.cn/kuaibao_detail.jsp?contid=27773552
2.什么是向量数据库向量数据库简介向量数据库是一种专门用于存储和查询向量数据的数据库。向量数据的典型结构是一个一维数组,其中的元素是数值(通常是浮点数)。这些数值表示对象或数据点在多维空间中的位置、特征或属性。例如: 在自然语言处理中,一篇文章可以用一个词向量表示,每个词可以用一个数字表示其在词向量空间中的位置。 在图像处理中,一张图https://cloud.tencent.com/developer/techpedia/1953
3.2024年精选推荐的16个向量数据库:提升你的AI应用性能在人工智能时代,向量数据库已成为数据管理和AI模型不可或缺的一部分。向量数据库是一种专门设计用来存储和查询向量嵌入数据的数据库。这些向量嵌入是AI模型用于识别模式、关联和潜在结构的关键数据表示。随着AI和机器学习应用的普及,这些模型生成的嵌入包含大量属性或特征,使得它们的表示难以管理。这就是为什么数据从业者https://juejin.cn/post/7368419638987161600
4.向量数据库一文全面了解向量数据库的基本概念原理算法选型向量数据库的原理和实现,包括向量数据库的基本概念、相似性搜索算法、相似性测量算法、过滤算法和向量数据库的选型等等。向量数据库是崭新的领域,目前大部分向量数据库公司的估值乘着 AI 和 GPT 的东风从而飞速的增长,但是在实际的业务场景中,目前向量数据库的应用场景还比较少,抛开浮躁的外衣,向量数据库的应用场景还https://blog.csdn.net/a2875254060/article/details/139222079
5.列式数据库和向量化语言&开发SiddharthTeotia列式数据库有助于减少联机分析处理 (OLAP) 的负载,因为查询会涉及到列的一个子集,但这些列都有大量的行数。 列式存储格式使我们可以采用一些基于每列的轻量级压缩算法(lightweight compression algorithms) 。 向量化的数据处理通过有效使用 CPU 缓冲机制的方法,来开发更快速的分析查询引擎。 https://www.infoq.cn/article/columnar-databases-and-vectorization
6.向量数据库简介其它特征向量检索工具SPTAG 是由 Microsoft 于2019年5月发布的,基于最近邻搜索的向量检索算法库。 SPTAG 的优点是搜索速度快,毫秒内智能搜索数十亿条向量,并且在查询精确度和内存占用上表现佳。但缺点也很明显,其建图时间长,而且每次添加新向量进数据库,必须重新建图。 综上所述,当前工业界针对向量检索的实现中,并没有一个能擅长所有https://www.bookstack.cn/read/milvus-0.6-zh/aboutmilvus-vector_db.md
7.三大开源向量数据库大比拼向量数据库具有一系列广泛的好处,特别是在生成式人工智能方面,更具体地说,是在大语言模型(LLM)方面。这些好处包括先进的索引和精确的相似度搜索,有助于交付强大的先进项目。本文将对三种开源向量数据库:Chroma、Milvus和Weaviate进行如实的比较。我们将探讨它们的用例、关键特性、性能指标及支持的编程语言等,以便https://baijiahao.baidu.com/s?id=1782548694686573731&wfr=spider&for=pc
8.向量数据库Rapids VectorDB 是柏睿数据在RapidsDB(柏睿分布式全内存数据库)之上研发的一款轻量化、可扩展、高性能的向量数据库。 Rapids VectorDB 和现在的LLM以及大数据结合形成“飞轮效应”,助力企业迈向AI Native时代,为企业提供更全面的AI基础设施。企业可以借助柏睿柏睿数据的Rapids VectorDB为公司的数字化转型搭上智能的翅https://boraydata.cn/Vector_database.html
9.ZillizCloud向量数据库由Milvus 提供支持的 Zilliz 向量数据库管理系统支持亿级矢量搜索,并受到超过 1,000 家企业用户的信赖。https://zilliz.com.cn/
10.向量数据库灵活性:向量数据库提供高度的灵活性、允许容纳不同类型的数据和结构。 性能:它们提供高性能数据管理和检索、对于提高AI和ML操作的速度和效率至关重要。 可自定义索引编制:向量数据库提供可自定义的索引编制选项、可根据特定需求优化数据组织和检索。 向量数据库和用例。 http://docs.netapp.com/zh-cn/netapp-solutions/ai/vector-database-vector-database.html
11.向量数据库开源软件OSCHINA向量数据库(1) PostgresML- 基于 PostgreSQL 的 AI 应用数据库 荐 PostgresML是PostgreSQL的机器学习扩展,能让你使用SQL查询对文本和表格数据进行训练和推理。有了PostgresML,你可以将机器学习模型无缝集成到PostgreSQL数据库中 收藏32 评论1 更新于 2023/12/07 https://www.oschina.net/project/tag/505/vector-dbms
12.向量数据库向量数据库 出处:mp.weixin.qq.com 摘要随着各种大型语言模型 (LLM)的开源, 开发人员也意识到向量数据库越来越重要,因为它可以进一步增强这些模型。阅读原文 xiaozi 于2024-06-06 分享1377 海报分享 关联话题: #360 欢迎在评论区写下你对这篇文章的看法。评论https://tool.lu/index.php/article/6f5/detail
13.向量数据库大模型知识库向量数据存储向量数据检索腾讯云向量数据库(Tencent Cloud VectorDB)是一款全托管的自研企业级分布式数据库服务,专用于存储、检索、分析多维向量数据。该数据库支持多种索引类型和相似度计算方法,单索引支持千亿级向量规模,可支持百万级 QPS 及毫秒级查询延迟。腾讯云向量数据库不仅能为大模型提供外部知识库,提高大模型回答的准确性,还可广泛应用https://cloud.tencent.cn/product/vdb
14.向量数据图数据库火山引擎是字节跳动旗下的云服务平台,将字节跳动快速发展过程中积累的增长方法、技术能力和应用工具开放给外部企业,提供云基础、视频与内容分发、数智平台VeDI、人工智能、开发与运维等服务,帮助企业在数字化升级中实现持续增长。本页核心内容:向量数据图数据库https://www.volcengine.com/theme/869645-X-7-1
15.向量数据库和普通数据库的区别星环科技为您提供向量数据库和普通数据库的区别相关内容,帮助您快速了解向量数据库和普通数据库的区别。如果想了解更多向量数据库和普通数据库的区别资讯,请访问星环科技官网(www.transwarp.cn)查看更多丰富向量数据库和普通数据库的区别内容。https://www.transwarp.cn/keyword-detail/34397-1
16.什么是向量数据库,其工作原理是什么?InterSystems向量数据库(vector database)是一种数据库,用于存储、管理和查询代表图像、文本或其他信息等复杂数据的高维向量。 向量数据库是专为存储、管理和查询图像、文本甚至抽象概念等复杂数据而设计的强大工具。但是,向量数据库真正的超强之处在于能够以闪电般的速度进行相似性搜索,眨眼间就能在数字草堆中找到针。 https://www.intersystems.cn/cn/resources/what-are-vector-databases-and-how-do-they-work/
17.向量数据库Milvus向量数据库Milvus是专门设计用于处理输入向量查询的数据库,它能够处理百亿级别的向量索引。与现有的关系型数据库主要处理遵循预定义模式的结构化数据不同,Milvus从底层设计用于处理从非结构化数据转换而来的嵌入向量。 立即购买 使用限制 学习路径 了解 产品简介 简介 产品优势 应用场景 概念解释 上手 快速入门 购买向https://docs.ksyun.com/products/231
18.向量数据库技术全景本文深入探讨了向量数据库的基础概念、架构设计及实现技术,详细介绍了HNSW、FAISS和Milvus等关键算法和工具,旨在为高效管理和检索高维向量数据提供全面的技术指南。 关注TechLead,复旦博士,分享云服务领域全维度开发技术。拥有10+年互联网服务架构、AI产品研发经验、团队管理经验,复旦机器人智能实验室成员,国家级大学生赛事https://www.jianshu.com/p/07f021480744
19.国内首个向量数据库标准发布科技日报北京11月15日电 (记者都芃)15日,中国信通院联合腾讯云计算(北京)有限责任公司、中移(苏州)软件技术有限公司等多家企业共同编制的、国内首个向量数据库标准正式发布,将为我国向量数据库研发、测试及选型提供重要参考,推动我国人工智能产业高质量发展。 https://kjt.hebei.gov.cn/www/kxpj22/kjqy89/293766/index.html
20.向量数据库—大模型时代的存储新基座人人都是产品经理今年,黄仁勋的一次演讲让众多人的目光聚焦到向量数据库上,作者也介绍,如果大模型是肉体,那向量数据库则是灵魂。那么,向量数据库到底存在哪些我们不知道的潜在能力呢?让我们看看作者的分析吧~ AI大模型基座在以【日更】进展的同时,也给资本市场带来了焦虑的情绪价值:估值 130 亿美元的 AI 写作工具 Grammarly 在 Chahttps://www.woshipm.com/ai/5848163.html