数据库管理-第160期 Oracle Vector DB AI-11(20240312)

数据库管理160期 2024-03-12

  • 数据库管理-第160期 Oracle Vector DB & AI-11(20240312)
    • 1 向量的函数操作
      • to_vector()
      • 将vector转换为标准值
        • vector_norm()
        • vector_dimension_count()
        • vector_dimension_format()
    • 2 将向量转换为字符串或CLOB
      • vector_serialize()
      • from_vector()
    • 总结

数据库管理-第160期 Oracle Vector DB & AI-11(20240312)

作者:胖头鱼的鱼缸(尹海文)
Oracle ACE Associate: Database(Oracle与MySQL)
国内某科技公司 DBA总监
10年数据库行业经验,现主要从事数据库服务工作
拥有OCM 11g/12c/19c、MySQL 8.0 OCP、Exadata、CDP等认证
墨天轮MVP、认证技术专家、年度墨力之星,ITPUB认证专家,OCM讲师
圈内拥有“总监”、“保安”、“国产数据库最大敌人”等称号,非著名社恐(社交恐怖分子)
公众号:胖头鱼的鱼缸;CSDN:胖头鱼的鱼缸(尹海文);墨天轮:胖头鱼的鱼缸;ITPUB:yhw1809。
除授权转载并标明出处外,均为“非法”抄袭。

来到了Oracle Vector DB基础介绍的最后阶段了,本期讲一下其他的vector函数,包含向量的函数操作、向量转换和绑定操作。

1 向量的函数操作

to_vector()

to_vector()函数是将一个字符串转换为向量,和vector()函数一样。

SELECT to_vector('[34.6, 77.8]', 2, float32) FROM dual;

SELECT to_vector('[34.6, 77.8, -89.34]', 3, float32);

image.png
注: 这里也演示了Oracle DB 23c中的新特性,可以不用from dual。

将vector转换为标准值

vector_norm()

vector_norm()函数输出原点到向量点的的距离:

SELECT vector_norm(vector('[4, 3]', 2, float32) );

SELECT vector_norm(vector('[4, 3]', 2, float64) );

SELECT vector_norm(vector('[4, 3]', 2, int8) );

image.png

vector_dimension_count()

vector_dimension_count()函数输出向量的维度数量:

SELECT vector_dimension_count(vector('[34.6, 77.8]', 2, float64));

SELECT vector_dimension_count(vector('[34.6, 77.8, 9]', 3, float32));

SELECT vector_dimension_count(vector('[34.6, 77.8, 9, 10]', 3, int8));

image.png

vector_dimension_format()

vector_dimension_format()函数输出向量的维度类型:

SELECT vector_dimension_format(vector('[34.6, 77.8]', 2, float64));

SELECT vector_dimension_format(vector('[34.6, 77.8, 9]', 3, float32));

SELECT vector_dimension_format(vector('[34.6, 77.8, 9, 10]', 3, int8));

image.png

2 将向量转换为字符串或CLOB

目前,python-oracledb和node-oracledb SQL驱动程序支持输入和输出向量的本地绑定(即直接使用向量)。其他SQL驱动程序,如JDBC和ODP.NET SQL只允许将向量绑定为字符串或CLOB。当Oracle 23.4提供Oracle AI Vector Search时,所有Oracle SQL驱动程序都应支持本地向量量绑定
较旧的SQL驱动程序[21c及之前版本]要求您通过使用vector()或to_vector()函数显式转换向量输入,并通过from_vector()或vector_serialize()将向量输出转换为字符串或CLOB。
注意: 如果您在SQL*Plus、sqlcl或SQL Developer中运行此实验室,您将不会在输出中看到明显的差异,但您可以确信Vector转换已经执行。

vector_serialize()

vector_serialize()函数可以将向量转换为字符串或CLOB:

SELECT vector_serialize(vector('[1.1, 2.2, 3.3]', 3, float32));

SELECT vector_serialize(vector('[1.1, 2.2, 3.3]', 3, float32)
       returning varchar2(1000));

SELECT vector_serialize(vector('[1.1, 2.2, 3.3]', 3, float32)
       returning clob);

image.png

from_vector()

from_vector()函数可以将向量转换为字符串或CLOB,等同与vector_serialize()函数:

SELECT from_vector(vector('[1.1, 2.2, 3.3]', 3, float32));

SELECT from_vector(vector('[1.1, 2.2, 3.3]', 3, float32) returning varchar2(1000));

SELECT from_vector(vector('[1.1, 2.2, 3.3]', 3, float32) returning clob);

image.png

总结

本期简单演示了vector相关的其他函数。
下一期可能需要等待一段时间,将自己做一个演示DEMO来更直观展示Oracle Vector DB和AI Vector Search的功能。
老规矩,知道写了些啥。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

ChatGPT发了消息没有反应,并且搜索框变空是怎么回事?怎样解决?

最近许多用户反映使用ChatGPT时发了消息没有反应,并且搜索框变空了导致无法使用,接下来闪电发卡就分析一下是什么原因。 根本原因:是因为官方前端更新,后端接口部分报错,老用户使用Alpha测试中文语言导致。 解决方法&a…

【数据挖掘】实验1:R入门(内含详细R和RStudio安装教程)

实验1:R入门 一:实验目的与要求 1:根据上课PPT内容,掌握课堂知识并进行代码练习操作,提供练习过程和结果。 2:可COPY代码运行结果直接提交,如涉及到输出图等可截图。 二:实验内容 …

自建GitLab代码仓库ssh访问地址为localhost修改成域名

ssh改localhost为域名 抛出问题配置过程效果展示 抛出问题 自建的GitLab,代码仓库ssh访问地址为localhost,http地址显示域名没问题,就很奇怪。 找了很久帖子发现这个访问地址不在/etc/gitlab/gitlab.rb的系统配置中。 还有个帖子让改/etc/gi…

游戏开发中的坑之十三 Lut贴图相关问题

1.网上下载的或者游戏截帧得到的Lut贴图贴上之后可能效果如下,需要在PS里垂直方向反转一下贴图。 2.相关设置: (1)取消勾选sRGB; (2)像素为1024x32或者512x16; (3&#…

学习笔记-华为IPD转型2020:2,IPD的核心思想

2,IPD的核心思想 以客户为导向:应该开发什么产品? 应该开发哪些产品?华为的“基本法”规定,其目的是为客户服务(Huawei,1998)。然而,在IPD实施后,对这种以客…

微信小程序开发系列(三十)·小程序本地存储API·同步和异步的区别

目录 1. 同步API 1.1 getStorageSync存储API 1.2 removeStorageSync获取数据API 1.3 removeStorageSync删除 1.4 clearStorageSync清空 2. 异步API 2.1 setStorage存储API 2.2 getStorage获取数据API 2.3 removeStorage删除API 2.4 clearStorage清空 3. …

YOLOv8改进 | 图像去雾 | 利用图像去雾网络AOD-PONO-Net网络增改进图像物体检测

一、本文介绍 本文给大家带来的改进机制是利用AODNet图像去雾网络结合PONO机制实现二次增强,我将该网络结合YOLOv8针对图像进行去雾检测(也适用于一些模糊场景,图片不清晰的检测),同时本文的内容不影响其它的模块改进…

网康科技 NS-ASG 应用安全网关 SQL注入漏洞复现(CVE-2024-2330)

0x01 产品简介 网康科技的NS-ASG应用安全网关是一款软硬件一体化的产品,集成了SSL和IPSec,旨在保障业务访问的安全性,适配所有移动终端,提供多种链路均衡和选择技术,支持多种认证方式灵活组合,以及内置短信认证、LDAP令牌、USB KEY等多达13种认证方式。 0x02 漏洞概述 …

Redis底层数据结构之String

文章目录 1. 前提回顾2. RedisObject三大数据类型简介3. SDS字符串4. SDS字符串源码分析5. 总结 1. 前提回顾 前面我们说到redis的String数据结构在底层有多种编码方式。例如我们执行下面两条语句 set k1 v1 set age 17我们查看类型,发现这类型都是String类型 我们…

【力扣精选算法100道】——二进制求和

LCR 002. 二进制求和 - 力扣(LeetCode) 目录 🎈了解题意 🎈算法分析 🚩cur1>0 🚩cur2>0 🚩t 🎈实现代码 🎈了解题意 遵循二进制加法法则,如果俩…

工具篇--分布式定时任务springBoot 整合 elasticjob使用(3)

文章目录 前言一、Springboot 整合:1.1 引入jar:1.2 配置zookeeper 注册中心:1.3 定义job 业务类:1.4 job 注册到zookeeper:1.5 项目启动:1.5.1 zookeeper 注册中心实例:1.5.2 任务执行日志输出…

【数据挖掘】练习1:R入门

课后作业1:R入门 一:习题内容 1.要与R交互必须安装Rstudio,这种说法对不对? 不对。虽然RStudio是一个流行的R交互集成开发环境,但并不是与R交互的唯一方式。 与R交互可以采用以下几种方法: 使用R Conso…

AHU 汇编 实验六

一、实验名称:实验6 输入一个16进制数,把它转换为10进制数输出 实验目的: 培养汇编中设计子程序的能力 实验过程: 源代码: data segmentbuff1 db Please input a number(H):$buff2 db 30,?,30 dup(?),13,10buff3 …

社交革命的引领者:探索Facebook如何改变我们的生活方式

1.数字社交的兴起 随着互联网的普及,社交媒体成为我们日常生活的重要组成部分。Facebook作为其中的先驱,从最初的社交网络演变成了一个拥有数十亿用户的全球化平台。它不仅改变了我们与世界互动的方式,还深刻影响了我们的社交习惯、人际关系以…

数据结构:树和二叉树

树的概念 1.树是一种非线性的数据结构。它是由n个有限节点的集合。 2.树分为根节点和子树。根节点没有前驱节点。 3.树的子树是由一个个子树组成,它们可以看作一个个集合。每个集合下面又有集合。 因此,树是递归定义的。 树形结构中,子树…

搜索引擎SEO策略介绍

baidu搜索:如何联系八爪鱼SEO baidu搜索:如何联系八爪鱼SEO baidu搜索:如何联系八爪鱼SEO 第一、 关键词的选择策略: 1、门户类的网站关键词选择策略: 网站每个页面本身基本都包含有关键词:网站拥有上百…

嵌入式数据库SQlite3-进阶篇

嵌入式数据库sqlite3 - HQ 文章目录 嵌入式数据库sqlite3 - HQ[toc] 嵌入式数据库sqlite3【进阶篇】数据库准备order子句Where 子句与逻辑运算符语法实例 group by子句having子句举例 函数SQLite COUNT 函数SQLite MAX 函数SQLite MIN 函数SQLite AVG 函数SQLite SUM 函数SQLit…

Qt 使用RAW INPUT获取HID触摸屏,笔设备,鼠标的原始数据,最低受支持的客户端:Windows XP [仅限桌面应用]

在开发绘图应用程序时,经常会需要读取笔设备的数据,通过对笔数据的解析,来判断笔的坐标,粗细。如果仅仅只是读取鼠标的坐标,就需要人为在应用程序端去修改笔的粗细,并且使用体验不好,如果可以实…

【C++】STL(五) Stack Queue容器

5、 stack容器 5.1 简介 ① stack是一种先进后出的容器,它只有一个出口。 ② 栈中只有顶端的元素才可以被外界使用,因此栈不允许有遍历行为。 ③ 栈中进入数据称为:入栈 push ④ 栈中弹出数据称为:出栈 pop 5.2 常用接口 …

Fair Data Exchange:区块链实现的原子式公平数据交换

1. 引言 2024年斯坦福大学和a16z crypto research团队 论文 Atomic and Fair Data Exchange via Blockchain 中,概述了一种构建(包含过期EIP-4844 blobs的)fair data-markets的协议。该论文源自a16z crypto的暑期实习计划,与四名…