速来报名!AICon北京站鸿蒙专场~ 了解详情
写点什么

MariaDB 发布开源向量的预览功能,致力于成为默认的 MySQL 方案

Renato Losio

  • 2024-09-17
    北京
  • 本文字数:1179 字

    阅读完需:约 4 分钟

MariaDB 发布开源向量的预览功能,致力于成为默认的 MySQL 方案

随着 MariaDB 11.6 的发布,MariaDB 基金会宣布了公开预览的向量(Vector)搜索,以用于开源 fork 的 MySQL 引擎。数据库专家和开源倡导者认为向量搜索是 MariaDB 引领 MySQL 生态系统的一个机会,尤其是在甲骨文公司只为其企业版保留了大部分新特性的情况下。


根据发布公告,特性完备的 MariaDB 11.6 向量版本预计在几个月内发布,向量功能将会在 MariaDB 11.7 及以后的版本中全面可用。与 MySQL 9.0 目前提供的不带索引(Indexes)的新向量类型不同,MariaDB 没有提供专门的数据类型,但是引入了专门的索引以及 VEC_ToText 和 VEC_FromText 函数,这是向量存储的新可选方案。


向量搜索是基于行业标准 HNSW 算法实现的,新的 MariaDB Vector(也就是在今年早些时候 FOSDEM 上演示的 LLM 存储引擎)即将成为标准 MariaDB 服务器的一部分。


MariaDB 基金会首席执行官 Kaj Arnö 这样写到:


我们与 MySQL 服务器中的向量支持(称为 Heatwave)的差异在于,我们的向量搜索是开源的。实际上,与 MySQL 不同的是,我们仍然缺少一个单独的向量数据类型,不过我们会在正式发布前添加该数据类型。


Percona 创始人、开源倡导者 Peter Zaitsev 评论说:


显然,这个项目还处于早期阶段,但是它展示了一个重要的现象,那就是,在对现代开发人员至关重要的向量搜索方面,MariaDB 击败了甲骨文 MySQL。我很好奇甲骨文公司会有什么反应。它是否会迫使甲骨文在 MySQL 社区版中采用向量搜索,还是甲骨文不再关心他们的开源版本是否会受到现代开发者青睐?


Arnö补充道:


我们不仅要帮助 MariaDB 服务器的用户,还要帮助 MySQL 服务器的用户能够轻松地以开源方式采用向量功能。我们一直认为,从 MySQL 服务器迁移到 MariaDB 服务器非常容易,而获得向量功能则是迁移的一个重要原因。


向量搜索的实现是 MariaDB plc 员工、MariaDB 基金会和其他贡献者(尤其亚马逊云科技,它是 MariaDB 最新的支持者之一)共同努力的结果。


随着生成式 AI 工作负载越来越流行,MariaDB 并不是唯一一家致力于支持向量搜索的关系型数据库。正如 InfoQ 此前报道的那样,谷歌和亚马逊云科技已经在其托管的 RDBMS 中引入了这一选项,而 MySQL 9.0 则是首个支持向量搜索的甲骨文产品。此外,PlanetScale 去年 宣布计划 fork MySQL,以增加向量搜索的功能。


虽然许多开发人员对向量搜索的众多可选方案表示了赞赏,但用户 nhatnv 在 Reddit 上发表了这样的评论:


除非你面对的是数十亿的规模,否则我认为没有必要为向量数据库提供如此多样的选择。


MariaDB plc 首席架构师 Sergei Golubchik 在“MariaDB 向量有多么快?”一文中使用 ann-benchmarks 套件将新功能与其他向量数据库进行了对比。


鉴于目前还是 alpha 版本,所以还没有完整的二进制包;不过,Quay.io 上已经提供了支持向量搜索并启用了 CPU 优化的容器镜像。


查看英文原文

https://www.infoq.com/news/2024/08/mariadb-vector-search/

2024-09-17 08:309953

评论

发布
暂无评论
发现更多内容

C++ 赋值运算符‘=‘的重载(浅拷贝、深拷贝)

小林coding

c++ 编程 浅拷贝和深拷贝

Linux 平均负载高了怎么办?

小林coding

Linux 问题处理 linux命令

SpringCloud(Netflix)-技术专题-Ribbon的基本使用

洛神灬殇

Java 技术 SpringCloud

Volcano:带你体验容器与批量计算的碰撞的火花

华为云开发者联盟

Kubernetes 容器 分布式 Volcano 批量计算

C++ this指针的理解和作用

小林coding

c c++ 指针

区块链:在发展的同时,准备好你的产品。

石云升

区块链 DCEP 创新

排序算法一(冒泡排序、选择排序、插入排序)

xcbeyond

Java 算法 冒泡排序 选择排序 插入排序

C++ 一篇搞懂多态的实现原理

小林coding

c++ 编程 封装、继承、多态

C++ 手把手教你实现可变长的数组

小林coding

c++ 编程 数组

2. 整体把握 CocoaPods 核心组件

Edmond

ruby ios swift CocoaPods 包管理工具

使用 Golang 和 HTML5 开发一个 MacOS App

郭旭东

macos Go 语言

SpreadJS 纯前端表格控件应用案例:铭天预算执行系统

葡萄城技术团队

SpreadJS 预算执行系统

经济优势再显,江苏如何通过职教打造人才高地?

InfoQ_967a83c6d0d7

C++ 模板常见特性(函数模板、类模板)

小林coding

c++ 编程 模板方法

白鹭引擎助力《迷你世界》研发团队开发3D小游戏版

DT极客

微服务-技术专题-初步介绍服务发现

洛神灬殇

Java 技术 微服务

Java NIO 是 NIO么?

soolaugust

Java io nio

C++ 运算符重载的基本概念

小林coding

c++ 编程

Go语言专家测试,80%的人第一题就挂了!

博文视点Broadview

云原生 评测 Go 语言

C++ 自增、自减运算符的重载和性能分析

小林coding

c++ 编程 运算符

Java-技术专题-final关键字

洛神灬殇

高效程序员的45个习惯:敏捷开发修炼之道(2)

石云升

读书笔记 敏捷开发 对事不对人 欲速则不达

最佳实践:使用阿里云CDN加速OSS访问

阿里云Edge Plus

CDN

C++ 一篇搞懂继承的常见特性

小林coding

c++ 编程 继承

职教黄金时代,河南如何继续“乘风破浪”?

InfoQ_967a83c6d0d7

云计算的可信新边界:边缘计算与协同未来——【两万五千字长文】

华为云开发者联盟

云计算 云原生 5G 边缘计算 云服务

大数据技术发展(一):大数据技术的起源

cristal

Java 大数据 hadoop

C++ static 与 const 的认识

小林coding

c++ 编程 static关键字

C++ 流插入和流提取运算符的重载

小林coding

c++ 编程

央行发行的数字货币会带来哪些变化?

石云升

区块链 数字货币 DECP

超超超全递归技巧讲解,这次带你拿下递归

多选参数

数据结构 算法 递归 数据结构与算法

MariaDB 发布开源向量的预览功能,致力于成为默认的 MySQL 方案_后端_InfoQ精选文章