Oracle向量数据库实战

📢📢📢📣📣📣

作者:IT邦德

中国DBA联盟(ACDU)成员,15年DBA工作经验

Oracle、PostgreSQL ACE

CSDN博客专家及B站知名UP主,全网粉丝15万+

擅长主流Oracle、MySQL、PG、高斯及Greenplum备份恢复,

安装迁移,性能优化、故障应急处理

1.Vector DB

Oracle AI Vector Search(Oracle向量数据库)作为Oracle Database 26ai的核心AI功能,代表了企业级AI原生数据库的技术演进方向。其应用场景不仅限于传统的向量相似性搜索,更通过与企业数据的深度集成、混合搜索能力和完整的RAG支持,构建了从数据到智能的完整闭环。

2.LLM

Large Language Model,大语言模型,是生成式AI的一个类型,是一种人工智能模型,旨在理解和生成人类语言。它们在大量的文本数据上进行训练,单一模型可以执行广泛的任务,包括词法分析、文本分类、命名实体识别、关键词提取、翻译、情感分析、摘要、对话、写作文、写代码等。

3.RAG

Retrieval-Augmented Generation ,检索式增强生成方法,从企业专业知识库中检索与请求最相关的信息,并与用户请求捆绑一起作为提示,发送给LLM以获得响应。

同时,包括AI聊天等功能,也可以创建专用的知识库,来增加聊天的能力,比如更强的上下文理解能力,或者更平稳柔和倾向于人类的语言沟通。

4.AI 向量搜索

AI Vector Search 是一项创新技术,它可以大大增强信息检索,通过基于语义进行高效搜索,而不是确切的关键字。AI向量搜索是现代 生成式AI 生态系统的重要组成部分。

AI应用关键革新:基于向量用于表示图像、文档、视频等的语义内容。

4.1 向量检索方法

近似搜索:内存中邻居图向量索引( In-Memory Neighbor Graph Vector Index )

基于图的索引,其中顶点表示向量,顶点之间的边表示相似性(例如,HNSW

索引)。

4.2 内存邻居图

邻居分区向量索引( Neighbor Partition Vector Index )基于分区的索引,其向量根据相似性聚类到表分区中(例如,IVF FLAT 索引)高效的横向扩展索引,提供快速无缝的事务支持。

5. 向量索引

在Oracle Vector DB中,可以在Vector数据类型 列上创建vector index来提升向量检索的性能,向量索引的选择取决于organization子句:

create vector index vector_idx on vector_table (data_vector)

organization [inmemory neighbor graph | neighbor partition]

常用2个种索引是:

bash 复制代码
In-Memory Neighbor Graph organization:HNSW
Neighbor Partition organization:IVF
也可以指定向量索引类型参数、距离函数、精度等:
create vector index vector_idx on vector_table (data_vector) organization neighbor partition parameters (num_centroids 1024);

6.向量基本操作

让我们从基本的向量操作开如:

1.字符串转换为向量

TO_VECTOR()用来将字符串类型的数字数组转换为向量类型

SELECT TO_VECTOR( '[3,3]');

2.向量转换为字符串

FROM_VECTOR()用来将向量类型转换为字符串类型。

SELECT FROM_VECTOR(TO_VECTOR( '[3,3]') );

3.向量间距离计算

VECTOR_DISTANCE(v1, v2, 距离策略) 是向量检索的关键操作,用来比较两个向量的距离(相似度)。

距离越大,说明相似度越小;反之,说明两个向量越相似。

Oracle支持的距离策略主要有:EUCLIDEAN, COSINE, DOT, HAMMING

相关推荐
2401_873544922 小时前
使用Python处理计算机图形学(PIL/Pillow)
jvm·数据库·python
路由侠内网穿透2 小时前
本地部署开源工作空间工具 AFFiNE 并实现外部访问
运维·服务器·数据库·物联网·开源
njidf2 小时前
自动化机器学习(AutoML)库TPOT使用指南
jvm·数据库·python
F1FJJ2 小时前
什么是 Shield CLI?视频讲解:一条命令,可浏览器远程访问一切内部服务(RDP/VNC/SSH/数据库等)
运维·网络·数据库·网络协议·ssh
星辰_mya2 小时前
InnoDB的“身体结构”:页、Buffer Pool与Redo Log的底层奥秘
数据库·mysql·spring·面试·系统架构
F1FJJ3 小时前
Shield CLI 命令全解析:15 个命令覆盖所有远程访问场景
网络·数据库·网络协议·容器·开源软件
IMPYLH3 小时前
Linux 的 dircolors 命令
linux·运维·服务器·数据库
2301_822782823 小时前
自动化与脚本
jvm·数据库·python
qq_148115373 小时前
为你的Python脚本添加图形界面(GUI)
jvm·数据库·python