HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

谷歌云为 Valkey 和 Redis 集群的 Memorystore 添加了可扩展的向量搜索

作者:Mohit Palriwal

  • 2024-11-20
    北京
  • 本文字数:1613 字

    阅读完需:约 5 分钟

谷歌云为 Valkey 和 Redis 集群的 Memorystore 添加了可扩展的向量搜索

谷歌云(Google Cloud)为 Valkey 和 Redis 集群的 Memorystore 引入了可扩展的向量搜索功能。该更新允许开发人员以超低的延迟在数十亿个向量上执行向量搜索。


这种增强对于依赖于生成式人工智能的应用程序来说特别有益,例如检索增强生成(RAG)、推荐系统和语义搜索。


该更新利用了在集群中跨节点划分向量索引进行分区的能力。每个节点都包含一个索引分区,该分区与其键空间部分相对应,可使集群能够处理数十亿个向量,同时保持个位毫秒数的延迟和 99% 以上的召回率。这种架构不仅在添加节点时线性地加速了索引的构建时间,而且优化了搜索性能——对分层可导航小世界(hierarchical navigable small-world,HNSW)搜索进行对数优化,对暴力搜索进行线性优化。


开发人员可以使用这些新功能将他们的集群扩展到 250 个分片,在单个实例中存储数十亿个向量。这种可扩展性对于需要在大量数据集上执行语义搜索的企业应用程序来说至关重要。


除了可扩展性之外,此次更新还引入了对混合查询(Hybrid Query)的支持。混合查询使开发人员能够将向量搜索与数字和标签字段上的过滤器相结合。该功能对于基于特定条件微调搜索结果来说特别有用。例如,在线服装零售商可以使用混合搜索来推荐类似的商品,同时根据服装类型和价格范围过滤结果。


为了实现混合查询,开发人员可以创建一个新的向量索引,其中包含用于过滤的其他字段:


FT.CREATE inventory_index SCHEMA embedding VECTOR HNSW 6 DIM 128 TYPE FLOAT32 DISTANCE_METRIC L2 clothing_type TAG clothing_price_usd NUMERIC
复制代码


这将创建一个索引’investory_index’,其中包含一个向量字段’embedment’,用于服装条目的语义嵌入;一个标签字段“clothing_type”,用于服装类目表示(例如“连衣裙”或“帽子”);以及一个数字字段’clothing price_usd’,用于服装的价格表示。


要对“investory_index”执行混合查询,可执行如下操作:


FT.SEARCH inventory_index “(@clothing_type:{dress} @clothing_price_usd:[100-200])=>[KNN 10 @embedding $query_vector]“ PARAMS 2 query_vector “...” DIALECT 2
复制代码


该查询检索了 10 条结果,这些结果按服装类型为“连衣裙”、价格范围在 100-200 之间进行过滤,并结合了向量相似性搜索。


一些社区成员警告说,如果组织内尚未部署 Redis 的向量搜索技术,则不要采用该技术。例如,Reddit 上的 marr75 表示:


不过,更好的建议可能是坚持使用占主导地位的数据持久和查询技术。如果是 RediSearch,那就坚持用下去。如果不是,不要因为它的向量搜索支持而选择它,这很好,但不是同类中最好的或最先进的。


谷歌云还通过将其向量搜索功能捐赠给了 Valkey 键值数据存储,为开源社区做贡献。该计划旨在使 Valkey 的开发人员能够利用向量搜索来创建高级的生成式人工智能应用程序。


在谷歌最近发布的一篇公告博客中,SanjieMo 的首席分析师、前 Gartner 的副总裁 Sanjeev Mohan 分享了他对谷歌贡献的看法:


Valkey 对于继续推进社区主导的以提供功能丰富的开源数据库替代品的努力来说非常重要。在 Memorystore 中推出 Valkey 支持是谷歌致力于为用户提供真正开放且可访问的解决方案的又一例证。他们对 Valkey 的贡献不仅使寻求灵活性的开发人员受益,而且还加强了更广泛的开源生态系统。


快速和精确的向量搜索与电子商务等行业息息相关,在这些行业中,了解客户偏好并提供量身定制的建议可能会大有裨益。

作者介绍

Mohit Palriwal 是奈飞(Netflix)的高级软件工程师,也是 Netflix 可观测性团队的重要成员。Netflix Atlas 项目团队的一员,该项目是一个开源的多维时间序列数据库,旨在处理大规模需求。在加入 Netflix 之前,Mohit 是 Salesforce 的首席软件工程师,在那里他与人合作构建了 AWS 上的可观测云。Mohit 的经验还延伸到了亚马逊网络服务(AWS),在那里他花了四年多的时间开发并推出了基于无服务器架构的 AWS Pinpoint。


查看原文链接:

https://www.infoq.com/news/2024/10/vector-search-memorystore/

2024-11-20 08:021

评论

发布
暂无评论
发现更多内容

NFT挖矿分红系统开发模式定制

开发微hkkf5566

NFT卡牌链游系统Dapp开发搭建

薇電13242772558

NFT 链游

TIME的新封面:元宇宙将改变一切

智捷云

元宇宙 Metaverse 智捷云 智捷云科技

STM32+ESP8266+MQTT协议连接OneNet物联网平台

DS小龙哥

7月月更

strncpy() 复制字符串(受长度限制)

謓泽

7月月更

C# 窗体应用DataGridView,使用数据库(Sql和MySQl)对DataGridView绑定数据源,获取数据

IC00

C# 7月月更

面向高性能计算场景的存储系统解决方案

Baidu AICLOUD

异构计算 云原生存储 AI加速

JAVA编程规范之日志规约

源字节1号

后端技术

阿里JAVA架构师面试136题含答案:JVM+spring+分布式+并发编程!

程序知音

Java 程序员 java面试 后端技术 八股文

SeekTiger的Okaleido有大动作,生态通证STI会借此爆发?

鳄鱼视界

敏捷 ? DevOps ?

FunTester

如何做好研发精益需求管理

思码逸研发效能

研发管理 研发效能 科技

实时计算基本概念解析

五分钟学大数据

实时计算 7月月更

多商户系统的直播功能用过吗?用过的朋友扣个 666!

CRMEB

一文读懂Elephant Swap的LaaS方案的优势之处

西柚子

mysql进阶(十七)Cannot Connect to Database Server问题分析

No Silver Bullet

MySQL 数据库 7月月更

干货分享-作为Lead 接手一个新的数据团队一 问题盘点 与Insights的发现

松子(李博源)

经验分享 数据分析师 成长笔记 带团队

面试突击67:说一下 TCP/IP 协议?以及每层的作用?

王磊

Java 面试

CSS 炫酷文本过渡动画

南城FE

CSS css3 前端 7月月更

SENSORO 付刘伟:创新技术服务为基层政府筑造数字底座

SENSORO

人工智能 大数据 物联网 城市大脑 数字政府

妙啊!美团 OCTO 分布式服务治理系统,这描述也太清晰了

冉然学Java

Java 分布式 美团 #技术干货# Java 开发

关于数据产品经理的三个小的知识点

松子(李博源)

数据中台 数据产品经理 数据产品

在 Kyma 云原生平台上开发并部署 Node.js 应用

汪子熙

Kubernetes 云原生 SAP Kyma 7月月更

NFT数字藏品系统搭建—app开发

开源直播系统源码

软件开发 数字藏品 NFT数字藏品系统

图文并茂,讲解TCP和UDP协议的原理以及区别

程序知音

程序员 网络 TCP/IP 后端技术 底层原理

LeetCode-88. 合并两个有序数组(java)

bug菌

Leet Code 7月月更

开幕在即 | “万物互联,使能千行百业”2022开放原子全球开源峰会OpenAtom OpenHarmony分论坛

OpenHarmony开发者

OpenHarmony

优博讯助力深圳打造全球“鸿蒙欧拉之城”

Geek_2d6073

算法题每日一练---第5天:星系炸弹

知心宝贝

算法 前端 后端 7月月更

Android 开发遇到的Exception

沃德

android 7月月更

java零基础入门-java8新特性(上篇)

喵手

Java 7月月更

谷歌云为 Valkey 和 Redis 集群的 Memorystore 添加了可扩展的向量搜索_Google_InfoQ精选文章