Jeffrey Erickson | 内容策略师 | 2024 年 10 月 29 日
作为一种数据类型,向量在过去少为人知,最近却凭借生成式 AI 的赋能者这一身份成为了人们关注的焦点。其实,向量(以及用于存储和分析向量的向量数据库)多年来一直在幕后辛勤工作。它们被用在地理空间绘图和分析中,为城市规划、运输物流和环境分析提供支持。最近,向量已被用于零售产品以及音乐和视频流媒体服务网站的推荐引擎。
生成式 AI 基于这些使用场景构建,它利用向量、向量数据库以及一系列其他技术(包括 RAG,即“检索增强生成”)为我们开辟了一条通往创新的新道路。
向量只是用于描述词、句、文档、图像、视频以及音频文件等对象的特征的数组。之所以使用向量,是因为计算机难以对比/搜索这种非结构化内容。相比之下,向量对比/搜索则要容易的多,它是以更容易理解的数学为基础的。
向量及其描述的数据对象(或指向数据对象的链接)一起存储在数据库中。在数学上彼此接近的向量所描述的对象通常具有相似的特征,因此您可以快速对比/搜索向量,返回相似的对象。您还可以通过已识别的特定特征来创建查询向量。搜索操作将返回与查询向量中指定的对象有相似特征的对象。
向量数据库是指任何可以原生存储和管理向量嵌入并可以处理向量所描述的非结构化数据(如文档、图像、视频、音频等等)的数据库。
考虑到向量搜索对于生成式 AI 的重要价值,科技界已出现了很多可纳入企业数据基础设施的专门的独立式向量数据库。同时,一些成熟数据库(例如 Oracle Database 和开源的 MySQL 数据库)也已经将向量和许多其他数据类型作为原生数据类型。这样,在搜索业务数据和语义数据组合时,执行速度会更快,结果也更准确,因为两种数据类型都存在于一个数据库中。这种方法还可避免企业在主数据库以外使用一个单独的、专门的向量数据库时会产生的数据一致性问题。
向量索引和向量数据库的设计目标都是高效存储和检索向量(一种用于描述文档、图像、视频、音频等对象的特征的数组)。不过,它们各有特点,分别适用于不同的场景。其中,向量索引主要用于“最近邻”搜索(即查找与给定查询向量最接近的向量),非常适合需要快速、精确的相似性搜索场景(例如推荐引擎)。相比之下,向量数据库用于存储向量数据(以供检索和分析)。企业级向量数据库可提供超越“最近邻”搜索的更多特性,例如元数据存储、数据版本控制以及与其他系统集成。
向量索引与向量数据库的主要差异在于,向量索引存储的是非结构化数据(例如文本、图像、音频文件)的属性信息。这类信息通过一组数字(也就是“向量”)表示。向量索引存储这些向量,并通过有利于数据库快速识别和匹配对象的方式创建索引。
向量数据库则存储这些索引及其描述的对象。不过,不同的数据库采用不同的方式来组织向量索引和数据对象。支持向量的数据库(例如 Oracle Database)单独执行数据对象存储,独立运行数据和向量搜索。这样,在利用 SQL 语言强大的查询能力来查询元数据和最新业务数据的同时,还能够获得向量搜索的速度和上下文相关性优势。举例来说,这意味着当搜索高度相关的零售产品时,向量搜索还能返回最新的产品定价和产品可用性信息。
关键要点
如今,专为向量存储和分析工作而优化的数据库的应用范围正快速扩展。过去,向量数据库主要用于绘图和数据分析。现在,向量数据库已成为推荐引擎(常见于热门零售商和音视频流媒体服务商)、虚拟助手、生物特征模式识别、异常检测等领域的重要基石。此外,向量数据库还开辟了一个新的重要使用场景:存储大规模的非结构化数据,以供生成式 AI 模型访问并输出更优结果。
一个日渐流行的趋势是,一些成熟数据库(例如 MySQL 和 Oracle Database)将向量数据以及其他数据(如 JSON、图形、空间和关系型数据)一起作为原生数据类型。这种融合不再需要将数据迁移到一个单独的数据库来执行生成式 AI 操作,既简化了流程,又确保了珍贵的数据始终保留在可靠的资料库中。
生成式 AI 使用场景的扩展意味着,在成熟的 NoSQL 和关系数据库增加向量数据类型管理特性的同时,市场上也出现了很多新的向量数据库。
向量数据库将数据作为向量(向量即三维空间中对象的特征的数学表征)存储和处理。这种方法能够高效地存储和查询复杂的数据类型(如图像、音频、视频和传感器数据),使向量成为推荐系统、自然语言处理和图像识别等使用场景的理想选择。
其操作分为以下几步:
向量数据库可细分为多种类型,如列式数据库(按存储结构划分)和内存中数据库(按实施方式划分)等。每一种向量数据库都有其优势,您应根据自身需求和使用场景进行选择。
列式数据库在磁盘上以列的方式存储数据并进行分组。由于分析工作通常要求筛选和组合不同列的数据,这可以加快数据分析速度。数据库当然也能以行格式存储数据(这种格式适用于需要更新数据记录中单个数据项的事务),但对于数据分析,列式数据库支持分析人员非常快速地扫描数千或数万条记录的任意列。
文档存储数据库(即面向文档的数据库)是一种可管理、检索和存储面向文档的信息的程序和数据存储系统。文档数据库在适用于各种动态数据结构的灵活的类 JSON 文档中存储数据。这一点不同于关系数据库,关系数据库以固定模式使用表来组织数据。
图形分析是一个以图形格式分析数据的过程,它以数据点作为节点,以数据关系作为边。以这种方式查看数据可以帮助您揭示其他方法无法清晰展示的数据联系和关系。图形分析需要一个支持图形格式的数据库。该数据库可以是专用图形数据库或支持多种数据模型(包括图形)的融合数据库。
内存中数据库在应用的内存层(而不是存储磁盘)中存储和处理数据。这种结构常用于列式存储功能和向量查询计划,可加快分析查询速度。这种数据存储方法可满足超快速操作需求,适用于电信以及需要基于实时数据制定决策的企业。
键值存储数据库(有时也称为“键值数据库”)可快速存储和查询经常性变动的数据,如线上门店的商品数据。键值存储数据库属于一种 NoSQL 数据库,使用键值来指定特定记录(以供查询或更新)。
空间数据库可存储和管理用以描述物理位置和几何属性的空间数据,基于索引技术和查询操作运行。空间数据库用于在线绘图和分析以及航运物流运营作业。
时序数据库用于高效存储和分析带时间戳的数据(即每个数据点与特定时间戳或时间间隔关联)。这些数据库通常用于需执行日志分析的 IT 监视系统以及金融行业。
向量数据库支持商用/开源大语言模型访问来自本地组织或企业的最新信息,以此增强大语言模型。这有助于提高大语言模型输出的相关性和个性化水平。
向量数据库广泛用于各种要处理大量空间数据和几何数据的应用和组织,例如零售、物流行业以及自动驾驶系统。如今,很多有意挖掘高级 AI 和机器学习潜力的企业也正积极采用向量数据库。例如,生成式 AI 模型就依靠向量数据库,利用来自向量数据库的最新本地数据来优化输出结果。
其他特定使用场景包括:
向量数据库的使用场景多式多样,在不同的组织和应用中是不同的。除了实时数据分析、财务系统和推荐引擎,向量数据库还可以在经过优化后处理复杂的数据结构(常见于图像识别、自然语言处理等工作)。
通过高效存储和处理数据,向量数据库可助力企业充分利用复杂的数据结构来满足各种应用的需求,包括:
向量数据库有诸多优势,其中之一就是支持快速相似性搜索。向量数据库针对高效的“最近邻”搜索进行了优化,支持快速从大型数据集中检索相似项。这使其成为了需要实时处理和分析非结构化数据的应用/行业的理想之选,并适用于新兴的生成式 AI 使用场景。
其他优势还包括:
无论您是使用生成式 AI 技术还是执行其它(几乎)任何使用向量的操作,Oracle 都能为您提供强大支持。
作为广受欢迎的企业数据库,Oracle Database 为向量数据和所有业务数据提供一个单一数据平台。您可以轻松地对企业数据运行相似性搜索,无需管理和同步多种数据库。Oracle AI Vector Search 支持您通过语义(或意义)和值执行结构化和非结构化数据搜索。
结合使用一个数据库中的关系数据、JSON 文档、图形、地理空间数据、文本和向量数据,您能够快速构建新的应用特性。Oracle Database 的 AI Vector Search 还可以与任何 GenAI 服务一起在 RAG 管道中使用。此外,Oracle HeatWave MySQL 数据库服务能够原生处理向量数据,满足向量搜索以及其他使用场景需求。例如,将其与 Oracle Cloud Infrastructure (OCI) 中的 RAG 服务结合使用,您可以为您的私有文档构建一个生成式 AI 界面,打造一个精通您企业运营数据的 AI 工具。
无论您是使用向量来开展数据分析、运行地理空间应用、为客户推荐产品还是赋能生成式 AI,Oracle 都能助您一臂之力。Oracle 的旗舰产品 Oracle Autonomous Database 和 Oracle HeatWave MySQL 均将向量和许多其他数据类型作为原生数据类型管理,为用户提供更简单的开发体验。这两款数据库都基于 Oracle Cloud Infrastructure (OCI) 运行。OCI 搭载了最新处理器,采用了超级集群架构,可以高效处理要求最严苛的 AI 工作负载,包括生成式 AI、计算机视觉和预测性分析。无论您是使用 Oracle Database 还是开源的 MySQL 数据库构建应用,都可以立即开始利用向量搜索。
在如今的生成式 AI 时代,向量数据库对企业的重要性比以往任何时候都更高。随着越来越多的开发团队开始探索向量数据的存储和管理之道,他们需要做一个决定:是使用专门的专用向量数据库,还是 Oracle Database 这类既支持向量又支持众多其他数据类型的多模型数据库?
向量数据库对于激动人心的 AI 使用场景至关重要,这些使用场景包括可革新客户服务工作的聊天机器人和可驱动医疗卫生行业转型的算法。立即了解企业如何在实践中运用向量创造业务价值。
何时应使用向量数据库?
向量数据库可用于各种使用场景,包括航运物流和环境分析等领域的地理空间应用、零售和线上娱乐业的推荐引擎等。最近,一些组织还将向量数据库用作生成式 AI 应用的主信息库。
Netflix 使用向量数据库吗?
Netflix 曾宣布使用向量数据库来支持自己大受欢迎的推荐引擎。该平台将向量嵌入用于节目表中的每一个娱乐节目,通过向量数据库赋能实时相似标题搜索。
注:为免疑义,本网页所用以下术语专指以下含义: