SeekDB 向量检索实践全记录:从理论到 OceanBase Seekdb 落地的探索之旅

前言

11月18日,OceanBase开源了其首款AI原生数据库seekdb(详见https://www.oceanbase.ai/)。专注于为 AI 应用提供高效的混合搜索能力,支持向量、全文及多模数据的统一存储与检索

seekdb 继承了OceanBase 高性能优势与 MySQL 全面兼容的特性,却更轻量,更贴近个人开发者与中小型企业,更适用于 AI 数据处理场景:

  • RAG和知识检索,如客户支持、个人知识、企业质量保证等。
  • AI Agent,如私人助理、代理平台、垂直代理商、企业自动化。
  • 设备端和边缘端AI应用,如车载系统、人工智能教育、陪伴机器人、医疗设备等。
  • 人工智能辅助编程,或编码与开发,如IDE插件、设计到网页、本地 IDE、Web IDE。
  • 语义搜索引擎,如产品搜索、文本转图像、图片到产品。

开启体验之旅的前期准备

安装配置seekdb

本次部署体验场景是CentOS系统进行搭建起完整的SeekDB运行环境:

复制代码
yum-config-manager --add-repo https://mirrors.aliyun.com/oceanbase/OceanBase.repo

安装OBD工具

复制代码
yum install -y ob-deploy

激活环境变量:安装完成后,会在/etc/profile.d/目录下生成obd.sh,需要执行 source 命令来使 OBD 的命令行工具立即生效。

复制代码
source /etc/profile.d/obd.sh

安装SeekDB与obclient

复制代码
yum install seekdb obclient

启动SeekDB

复制代码
systemctl start seekdb
systemctl status seekdb

登录验证

复制代码
obclient -h127.0.0.1 -uroot -P2881 -A oceanbase

正式开启体验之旅

准备测试所用的基础表

复制代码
CREATE DATABASE shanjiatstdb;

use shanjiatstdb;

CREATE TABLE products_josn (
    id BIGINT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(255) NOT NULL,
    description TEXT,
    category VARCHAR(100),
    price DECIMAL(10,2),
    -- 使用 JSON 存储向量数组
    embedding JSON,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    metadata JSON
) DEFAULT CHARSET=utf8mb4;


CREATE INDEX idx_products_embedding ON products_josn((JSON_LENGTH(embedding)));

创建计算余弦相似度的函数

创建计算欧氏距离的函数

测试数据插入

向量检索查询

余弦相似度搜索

欧氏距离搜索

带过滤条件的向量搜索

混合搜索(文本 + 向量)

创建实用的向量搜索函数与尝试使用

这次 OceanBase Seekdb 向量检索实践,让我深刻体会到:

  1. 技术没有银弹:每个方案都有适用场景
  2. 实践出真知:只有动手才能理解本质
  3. 问题即机会:每个障碍都是进步的阶梯

虽然当前 OceanBase 在向量检索上还有局限,但这次探索的价值在于:

  • 验证了可行性:向量检索可以用传统数据库模拟
  • 明确了边界:知道了什么时候需要专门方案
  • 积累了经验:为未来技术选型打下基础

数据库的进化史,就是不断吸收新技术、满足新需求的历史。 向量检索只是其中一站,未来还会有更多的"理解"能力被赋予数据库。

技术的世界没有银弹,但有无数种组合方式。 真正的技术能力,不是在理想条件下使用完美工具,而是在现实约束中找到最佳路径。

相关推荐
gjc5925 天前
零基础OceanBase数据库入门(6):连接OB集群
数据库·oceanbase
gjc5926 天前
零基础OceanBase数据库入门(5):MySQL模式用户创建与权限管理
数据库·mysql·oceanbase
gjc5927 天前
零基础OceanBase数据库入门(2):查看集群基本信息
数据库·oceanbase
gjc5928 天前
零基础OceanBase数据库入门(3):创建租户
数据库·oceanbase
悢七8 天前
单机部署 OceanBase 集群
数据库·ffmpeg·oceanbase
gjc5928 天前
零基础OceanBase数据库入门(4):创建MySQL模式数据库
数据库·mysql·oracle·oceanbase
Maverick0622 天前
OceanBase 架构原理深入
架构·oceanbase
云贝教育-郑老师22 天前
【OceanBase 的多租户架构是怎样的?有什么优势?】
数据库·oceanbase
Nonoas1 个月前
【教程】DataGrip连接OceanBase
oceanbase·datagrip
ActionTech1 个月前
某马来西亚游戏公司如何从 SQL Server 迁移至 OceanBase?
游戏·oceanbase