有必要使用 Oracle 向量数据库吗?

news2025/3/12 7:08:00

向量数据库最主要的特点是让传统的只能基于具体值/关键字的数据检索,进化到了可以直接基于语义的数据检索。这在AI时代至关重要!

回到标题问题:是否有必要使用 Oracle 向量数据库?

这实际还要取决于你的具体应用需求。

客观来讲,Oracle 23ai 及其向量数据库功能在企业级应用中有一定优势,特别是在与现有 Oracle 生态整合时。以下是几个考虑点:

✅ 适用 Oracle 向量数据库的场景:

  • 已有 Oracle 生态:如果你的数据已经存储在 Oracle Database,直接使用 Oracle 的向量功能(如 AI Vector Search)可以减少系统复杂度,避免额外的数据 ETL 操作。
  • 混合查询(向量 + 关系型数据):Oracle 支持 向量搜索 + 传统 SQL 查询 的混合模式,适合 企业级 BI、数据分析、AI 赋能的业务应用。
  • 高可用性 & 安全性:Oracle 具备企业级的 数据安全、事务处理、可扩展性,相比一些开源向量数据库更可靠。
  • Exadata / ExaCC 加持:如果你的数据库运行在 Exadata 或 ExaCC,Oracle 的向量查询性能更优。

后面笔者工作需要,将测试下Oracle数据库的Vector能力,也会不定期分享。

在此之前,肯定会有不太熟悉Oracle发展的小伙伴会困惑,怎么感觉Oracle是老牌的关系型数据库,咋啥时候成了向量数据库?

答案是,Oracle是多模(Multi-model)数据库,主流模型都支持,早已不单是传统的关系型。

如果你去业界公认的 db-engines 查数据库排名,那么Complete ranking一直都是Oracle没疑问,但是在细分领域,Oracle也OK吗?

  • DB-Engines Ranking - popularity ranking of database management systems

从下图可以看到,DB综合排名Oracle一直还是第一位:

DB-Engines Ranking of Vector DBMS-complete-top15

那么继续查询下 Vector DBMS的排名:

  • DB-Engines Ranking - popularity ranking of vector DBMS

向量数据库排名:DB-Engines Ranking of Vector DBMS

DB-Engines Ranking of Vector DBMS

咦?默认老大是ES(Elasticsearch)?貌似没有看到Oracle的身影?
别着急,这是因为默认未考虑到多模态,勾选上 include secondary database models,你会发现ES直接下滑到第五位,Oracle又出现在了榜首:

DB-Engines Ranking of Vector DBMS-2

其实Oracle早已是多模(Multi-model)数据库,除了最近AI时代很火的向量数据库之外,其他相对常见的比如文档数据库、图数据库、空间数据库,甚至不算常见的RDF全部都支持。

如果去细分领域默认查询,提到 Document stores 你可能首先想到的是 MongoDB;提到 Graph DBMS 你可能首先想到的是图数据库 Neo4j,提到Spatial DBMS,你首先想到的是空间数据 PostGIS。但是你只要把这个 include secondary database models 勾选上,就会发现Oracle已经全部支持这些类型的DB,并处于领先地位。

所以,如果是企业级应用,比如 AI 赋能业务、BI 分析、数据库增强搜索,且你本身就有用到 Oracle 数据库,站在纯技术角度考量,在 Oracle 基础上继续扩展更多的可能场景,是个比较省心省力的选择。

但这也要求企业中的Oracle DBA能够不断扩展自己的技能,拥抱新技术,勇于承担新时代下的挑战。

不可停留在固有的认知上,那个曾经连大对象(LOB)都不允许存到库中的宝贵经验,在这个AI新时代的背景下,恐怕早已经过时了。

此外,在AI时代下,我们不得不面临的一个惨痛现状是,传统意义上的纯运维管理DBA,即便是资深级别,路也会越来越窄了。

但路在脚下,未来也还长,主动拥抱变化,允许一切发生,一起加油突破自己吧!共勉~

转载出处:https://www.cnblogs.com/jyzhao/p/18751798/shi-fou-you-bi-yao-shi-yong-oracle-xiang-liang-shu

行业拓展

分享一个面向研发人群使用的前后端分离的低代码软件——JNPF,适配国产化,支持主流数据库和操作系统。

提供五十几种高频预制组件,包括表格、图表、列表、容器、表单等,内置常用的后台管理系统使用场景和基本需求,配置了流程引擎、表单引擎、报表引擎、图表引擎、接口引擎、门户引擎、组织用户引擎等可视化功能引擎,超过数百种功能控件以及大量实用模板,使得在拖拉拽的简单操作下,也能完成开发。

对于工程师来说,灵活的使用高质量预制组件可以极大的节省时间,将更多精力花费在更有创造性和建设性的代码上。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2313628.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

小肥柴慢慢手写数据结构(C篇)(4-3 关于栈和队列的讨论)

小肥柴慢慢学习数据结构笔记(C篇)(4-3 关于栈和队列的讨论) 目录1 双端栈/队列2 栈与队列的相互转化2-1 栈转化成队列2-2 队列转化成栈 3 经典工程案例3-1 生产者和消费者模型(再次重温环形缓冲区)3-2 MapR…

java-单列模式-final-继承-多态

内存存储区域 引用变量和普通变量引用变量放在栈中,基本数据类型的内容是在堆内存中。 对象放在堆内存中,其引用变量放在栈中,指向堆内存存放对象的地址。 静态变量放在静态区中,静态变量在程序的执行始中中分配一次,…

基于杀伤链的勒索软件控制框架

40s说清楚勒索软件如何工作 基于杀伤链的勒索软件控制框架开发了4种缓解策略(预防、阻止、检测&响应、重建),覆盖18个控制域90项控制措施,以正确管理与勒索软件攻击杀伤链各阶段相关的风险。 注:本文节选出自《基于杀伤链的勒索软件防御指…

Windows编程----结束进程

进程有启动就有终止,通过CreateProcess函数可以启动一个新的子进程,但是如何终结子进程呢?主要有四种方法: 通过主线程的入口函数(main函数、WinMain函数)的return关键字终止进程 一个应用程序只有一个入…

无标签数据增强+高效注意力GAN:基于CARLA的夜间车辆检测精度跃升

目录 一、摘要 二、引言 三、框架 四、方法 生成合成夜间数据 昼夜图像风格转换 针对夜间图像的无标签数据增强技术 五、Coovally AI模型训练与应用平台 六、实验 数据 图像风格转换 夜间车辆检测和分类 结论 论文题目:ENHANCING NIGHTTIME VEHICLE D…

SqlSugar 进阶之原生Sql操作与存储过程写法 【ORM框架】

系列文章目录 🎀🎀🎀 .NET开源 ORM 框架 SqlSugar 系列 🎀🎀🎀 文章目录 系列文章目录一、前言 🍃二、用法介绍三、方法列表四、使用案例五、调用存储过程六、in参数用法七、SqlServer带Go的脚…

NO.33十六届蓝桥杯备战|函数|返回值|声明|调用|引用|函数重载(C++)

返回值 我们在设计的函数的时候,函数在经过计算后,有时候需要带回⼀些计算好的数据,这时候往往使⽤return 来返回,这⾥我们就讨论⼀下使⽤ return 返回。 return 后边可以是⼀个数值,也可以是⼀个表达式,…

5G工业路由器赋能无人码头,港口物流智能化管理

全球贸易发展促使港口需提升运营效率,传统港口面临诸多难题,无人码头成为转型关键方向。5G 工业路由器为其提供有力通信支持,引领港口物流变革。 随着无人码头建设在全球兴起,如荷兰鹿特丹港、中国上海洋山港等。码头作业设备需实…

【Academy】OAuth 2.0 身份验证漏洞 ------ OAuth 2.0 authentication vulnerabilities

OAuth 2.0 身份验证漏洞 ------ OAuth 2.0 authentication vulnerabilities 1. 什么是 OAuth?2. OAuth 2.0 是如何工作的?3. OAuth 授权类型3.1 OAuth 范围3.2 授权代码授权类型3.3 隐式授权类型 4. OAuth 身份验证4.1 识别 OAuth 身份验证4.2 侦察OAuth…

有关Java中的多线程

学习目标 ● 掌握线程相关概念 ● 掌握线程的基本使用 ● 掌握线程池的使用 ● 了解解决线程安全方式 1.为什么要学习线程? ● 从1946年2月14日世界上第一台计算机在美国宾夕法尼亚大学诞生到今天,计算和处理的模式早已从单用户单任务的串行模式发展到了多用户多…

【eNSP实战】配置交换机端口安全

拓扑图 目的:让交换机端口与主机mac绑定,防止私接主机。 主机PC配置不展示,按照图中配置即可。 开始配置之前,使用PC1 ping 一遍PC2、PC3、PC4、PC5,让交换机mac地址表刷新一下记录。 LSW1查看mac地址表 LSW1配置端…

LLMs基础学习(一)概念、模型分类、主流开源框架介绍以及模型的预训练任务

文章目录 LLM基础学习(一)一、大语言模型(LLMs)的简单介绍定义与基本信息核心特点局限性参考的模型 二、大语言模型(LLMs)名称后 “175B”“60B”“540B” 等数字的含义数字代表模型参数数量具体示例参数数…

软件IIC和硬件IIC的主要区别,用标准库举例!

学习交流792125321,欢迎一起加入讨论! 在学习iic的时候,我们经常会遇到软件 IC和硬件 IC,它两到底有什么区别呢? 软件 IC(模拟 IC)和硬件 IC(外设 IC)是两种实现 IC 总线通信的方式…

4个 Vue 路由实现的过程

大家好,我是大澈!一个喜欢结交朋友、喜欢编程技术和科技前沿的老程序员👨🏻‍💻,关注我,科技未来或许我能帮到你! Vue 路由相信朋友们用的都很熟了,但是你知道 Vue 路由…

git文件过大导致gitea仓库镜像推送失败问题解决(push failed: context deadline exceeded)

问题描述: 今天发现gitea仓库推送到某个镜像仓库的操作几个月前已经报错终止推送了,报错如下: 首先翻译报错提示可知是因为git仓库大小超过1G限制。检查本地.git文件,发现.git文件大小已达到1.13G。确定是.git文件过大导致&…

怎么利用DeepSeek进行PCB设计?

最近在琢磨利用Deepseek改善PCB的细节设计,毕竟立创EDA里面没有集成DS,因此,如何让DS能识别图片成了重中之重。所幸最近腾讯元宝里面集成了R1的满血版,这个版本可以上传图片,于是让DS识别图片就可能了。 在原理图设计…

详细介绍 Jupyter nbconvert 工具及其用法:如何将 Notebook 转换为 Python 脚本

nbconvert 是 Jupyter 提供的一个非常强大的工具,允许用户将 Jupyter Notebook 文件(.ipynb)转换成多种格式,包括 Python 脚本(.py)、HTML、PDF、LaTeX 等。你可以通过命令行来运行 nbconvert,也…

windows上传uniapp打包的ipa文件到app store构建版本

uniapp是一个跨平台的框架,使用windows电脑也可以开发ios软件,因为uniapp的打包是在云端实现的,本地电脑无需使用mac电脑即可完成打包。 但是打包后的ipa文件需要上架到app store的构建版本上,没有mac电脑,又如何上架…

PySide(PyQT),QGraphicsItem的pos()和scenePos()区别

在QGraphicsItem中,pos()和scenePos()是两个重要的方法,用于描述图形项的位置,但它们的含义和用途有所不同。理解它们的区别对于正确操作和管理QGraphicsItem的位置至关重要。 1. pos()方法 • 定义:pos()返回的是QGraphicsItem在…