导读
本文将分享 MatrixOne 针对 GenAI 提供的能力。
1.
MatrixOne 产品及架构介绍
2.
MatrixOne 2.0 面向 GenAI 能力解读
3.
MatrixOne 助力 AI 搜索
4.
基于 MatrixOne 的图片检索落地案例
分享嘉宾|矩
阵起源(深圳)信息科技有限公司
编辑整理|
王红雨
内容校对|李瑶
出品社区|
DataFun
MatrixOne
产品及架构介绍
1.
MatrixOne
是什么
MatrixOne 是一款新兴数据库,始于 2021 年,定位于云原生超融合数据库,专攻混合负载,兼容多种数据处理类型,面向多种模态数据,集 OLTP、OLAP、向量处理、时序数据及搜索能力于一体。它基于云原生存算分离架构,实现了计算与存储的解耦,借助共享存储底层,使架构具备出色的扩展与调度能力。
经过近四年的自主研发,现以云原生架构支持众多客户业务,涵盖运营商、工业企业及科技公司,提供开源、私有化部署及公有云服务选项,与 MySQL 高度兼容且使用体验相近。其完全开源,遵循 Apache 2.0 许可协议,是开发者友好型数据库解决方案。
2.
MatrixOne
的发展历程
MatrixOne 始于 2021 年,从零构建,起初采用 share-nothing 架构,类似于 TiDB,侧重云环境下的性能与成本问题。
2022 年,面对云环境下的扩展与成本挑战,转向 share-storage 架构,受 Snowflake 启发,彻底解耦计算与存储,利用云端线程底层能力,重构 MatrixOne 核心。面向共享存储,把计算存储以及事务完全拆分,以此架构为底座,一直沿着这个方向去演进和开发。
2023 年 8 月,发布 1.0 版,聚焦 HTAP 基座能力,解决 OLTP 与 OLAP 统一融合需求。
近期,2.0 版本发布,历时一年多时间,专注于生成式 AI 数据库内核整合与企业级特性强化,应对行业浪潮,优化高可用与容灾备份。
3.
MatrixOne
的技术架构
MatrixOne 云原生数据库,完全基于 Kubernetes 容器化架构,由下而上三层次设计。
-
存储层革新——对象存储为核心,兼容 S3/NFS 协议,存储数据文件与源数据,具备高可用与低成本优势。
-
事务层优化——针对高频写入场景设计,弥补了S3在读写能力不足的问题,通过专用节点处理写入,利用 Raft 三副本机制保障一致性。
-
计算层弹性——无状态容器节点组成,灵活扩容,即时调度,支持多元化负载与业务需求。
4.
MatrixOne
的部署形态
MatrixOne 数据库部署灵活,提供了三种架构选择,分别服务于不同规模与需求的生产环境:
-
单机主从部署:类似于 MySQL 的经典架构,包括主备机与 CDC 链路,无需外部共享存储,可通过 Docker 或二进制包快速部署,实现轻量级应用。
-
单机对象部署:存算分离,充分利用云特性,存储层迁移至 S3 对象存储,实现无限容量与低成本扩展。MHS 扮演写入引擎,配合 S3 海量存储,适合大规模数据采集与存储场景。
-
Kubernetes(K8s)分布式部署:基于 K8s 生态系统,全面覆盖计算层(CN 节点)、事务处理(TN 节点)与日志服务(log service),构成完整分布式数据库架构。容器化部署确保高度管理与灵活性,适宜复杂环境与高性能需求。
综上,其多样化部署选项满足了从轻量级到分布式集群的不同场景,借助 S3 存储与 K8s 技术,既保证了扩展性又提升了管理便捷性,充分体现了现代数据库体系的先进特征。
5.
MatrixO
ne
的使用方式
MatrixOne 的设计理念之一即为高度兼容 MySQL,致力于简化应用开发与日常运维流程。以下概述其关键特性与优势:
-
使用习惯一致:MatrixOne 遵循 MySQL 的使用习惯,无论是应用程序接口(API)、数据定义语言(DDL)、数据操作语言(DML)、数据类型、索引编写,乃至查询功能,均与 MySQL 保持高度一致性,确保用户能无缝切换,无需额外学习成本。
-
事务管理:秉承 MySQL 的 ACID 特性,MatrixOne 提供悲观锁(Pessimistic Locking)与读提交(Read Committed)隔离级别的事务支持,确保数据一致性与并发控制。
-
开发组件与工具:MatrixOne 兼容 Java 与 Go 等主流编程语言的连接器,以及 ORM 框架,延续 MySQL 的开发体验。
-
运维便利性:内置多种自研备份与恢复机制,如逻辑备份、物理备份、快照备份,以及监控与日志管理工具,助力高效运维。
-
生态系统兼容:MatrixOne 广泛支持 MySQL 生态内的数据源接入、数据转换及科学计算,兼容BI工具,无缝衔接现有工作流程。
综上,MatrixOne 通过深度兼容 MySQL,大幅降低了迁移门槛,使得开发人员能够迅速上手,同时保持了高性能与稳定性,成为替代或扩展 MySQL 的理想选择。
MatrixOne 2.0
面向 GenAI 能力解读
接下来介绍 MatrixOne 2.0 版本中专门针对 GenAI 的一些设计。
1.
LLM
在企业级应用中的缺陷和 RAG 增强方案
近年来,大语言模型(LLM)引发行业热潮,因其强大的通用知识整合能力而广受欢迎。然而,企业在尝试将其落地时常遭遇瓶颈——LLM 缺乏行业特异性知识,难以捕捉专业领域细微之处,从而导致信息不准确或“幻觉”问题频发。根源在于模型仅浓缩公共知识,未能涵盖企业专有数据的独特性。
企业内部数据丰富多样,远超单纯文本范畴,涉及代码、图像、音频、视频等多种模态,以及爬虫抓取的网页等,构成了复杂的多模态数据集合。这些数据经由向量化处理,映射至向量空间,存入向量数据库,以供后续检索与分析。此步骤至关重要,决定着 LLM 能否有效解读企业数据。
-
数据处理困难:多模态数据的预处理复杂,涉及结构化与非结构化数据转换,格式多样,需精确且高效的转换策略。
-
精准检索挑战:如何在海量异构数据中找到关联信息,精准搜索变得极为重要,要求高效检索算法与深度理解模型相辅相成。
针对上述难题,多数企业采用“大模型+企业数据”的 RAG(Relevant Answer Generation)策略,即融合企业自有数据,强化生成更贴合行业特性的内容,提高回答的准确性与实用性。此方案强调向量化技术与 AI 算法相结合,将企业数据转化为向量表示,便于存储与检索,结合 LLM 搜索能力,实现数据驱动的内容生成。以此,突破现有技术局限,实现真正的行业知识融合,开启企业专属知识图谱的新篇章。
2.
数据处理瓶颈
多模态数据处理能力是落地大模型应用的关键,而这也正是很多企业的痛点所在。
某大型传媒集团欲结合大模型技术,利用其丰富的多媒体资料库创作新内容,而非任凭模型自主生成。集团积累多年的历史资料,包含图片、音视频及数字化报纸,亟待整合利用,创建独家媒资数据库。然而,企业内部长期积累的多元数据未经整理,散落于各类媒介与系统中,缺乏系统管理,识别与整合困难;并且缺乏有效的搜索能力,无法精准定位所需主题素材,因此形成了从原始数据到 AI-ready 状态的巨大鸿沟。
这种现象非常普遍,以往企业面对的多为结构化数据,使用流程相对成熟。而大模型场景下,转向非结构化数据处理,传统 ETL pipeline 不再适用。非结构化数据的多样性和复杂性要求超越单一向量数据库解决方案,即便是一份文档,也可能含图、表、文本混排,需多轮 AI 算法处理方可提取有效信息。另外,结构化数据承载高价值与现实联系,须与非结构化数据协同,构建综合性数据管理方案。因此整个过程纷繁复杂,涉及多元数据类型的处理与大模型交互,形成了“麻花式”数据链路。
加速大模型应用的关键要素为协助企业高效整合大模型与多模态数据。AI Ready 数据需满足四大条件,以促进企业级多模态数据高效应用:
-
可触达:跨越异构数据源,触及文件系统、对象存储、SaaS 网盘等新兴数据源头,对接复杂度超越传统数据中台。
-
可解析:AI 算法解析数据内涵,打标、向量化,使机器理解并分类,克服人类手动审查极限。
-
可搜索:构建跨模态数据检索能力,精准匹配主题,挖掘潜在关联,提升数据利用率。
-
可生成:促成数据生产闭环,实现多模态数据驱动的创造性产出。
3.
基于 MatrixOS 的解决方案
Matrix
Origin 集成了 MatrixOne 数据库、GPU 算力管理平台 MatrixDC,以及 AI 与多模态数据管理 MatrixGenesis 和 MatrixSearch 引擎。此组合覆盖多模态数据处理全流程,从获取、解析、搜索到生成,满足 AI 时代混合多模态数据处理需求。通过整合先进技术,构建了完整数据价值链,赋能企业把握数据潜力,加速 AI 应用落地。
数据来源多元,包括数据库、SaaS、文件系统、对象存储等,需通过数据连接器集成,明确各源中的数据资产。ETL(Extract, Transform, Load)环节尤为重要,尤其对于多模态数据,如 PDF,涉及版式检测、文本/图像区分、OCR 文本抽取、图片描述提取及向量化等复杂步骤,形成综合索引,包含元数据、文本、向量等元素,融合 AI 技术完成这一过程。
多模态数据处理需运用 AI 能力,如版式检测、文本分析、图像理解和向量化,依赖大模型和小模型执行任务。MatrixGenesis 平台承担模型托管和服务,依托 NVIDIA 技术框架加速模型托管使用,配合 MatrixDC 平台的 GPU 管理和资源调度,实现模型高效运行。
MatrixDC 平台负责 GPU 管理与资源分配,提供接口屏蔽 GPU 配置复杂性;同时,MatrixDC 支撑 MatrixOne 和 MatrixGenesis 的容器服务管理,确保基于 Kubernetes(K8s)和容器化服务稳定运行。MatrixGenesis 和 MatrixSearch 引擎专注多模态数据搜索,整合已加工信息,执行向量、关键字与 SQL 结构化搜索,经大模型重排序后,提供最相关数据结果,构建多模态搜索架构。
综上,Matrix Origin 解决方案整合数据集成、AI 处理、资源管理与搜索服务,形成了完整的多模态数据处理链条。
4.
MatrixOne
核心能力及应用
MatrixOne 作为整个解决方案中的数据库内核,具备如下一些核心能力:
-
向量检索能力:
MatrixOne 纳入向量数据类型,实现了与结构化表一体化建模,并支持向量索引,优化查询效率,嵌入向量函数,完善搜索能力。
-
关键词检索能力:
面对语义匹配局限,引入传统关键词检索能力,适用于短词短句搜索,借鉴 Elasticsearch 全文检索,提升了灵活性与准确性。
-
多模态数据管理能力:
支持 JSON、BLOB、DATALINKS 与 STAGE,可实现不同类型数据统一管理,连结外部数据源,确保数据整合与可访问性。利用共享存储搭建数据湖,适应多模态数据特点,轻松容纳与预处理数据,实现便捷的数据入湖。
-
大小 AI 模型联动能力:
实现了 LLM
Index,并支持自定义函数,可以轻松整合大小模型,实现模型调用与扩展,以适应多样需求。
-
多租户及数据共享能力:
内置多租户支持,保障每个开发者拥有独立数据空间,协作开发,数据共享,通过发布订阅机制促进团队间资源共享。
-
用户自定义能力:
支持 Python
UDF,允许用户定义数据转换逻辑与自定义计算,从而满足复杂数据处理与转换需求,提升 AI 流水线灵活性。
MatrixOne 面向混合负载应用,可替代多组件 ETL 工作流,简化数据处理流程。适用于以下几种典型场景:
-
解决
MySQL
应用分析瓶颈,提升复杂聚合查询(如
GROUP BY
)效能。
-
实时大量数据摄入,如物联网(IoT)数据采集,适配高写入速度需求。
-
应对数据量增长与高并发挑战,自动水平扩展,增加计算节点,提高系统性能。
-
融合采集与计算,时序数据库之上,实现复杂多表联接与高级分析能力。
-
ERP 或 CRM 应用中融入自然语言交互,需兼容传统事务处理与 AI 模型能力。
-
推动 BI 与搜索功能智能化升级,适应多模态数据搜索需求。
MatrixOne
助力 AI 搜索
1.
AI
搜索(Multimodal
RAG)概要介绍
在展示 MatrixOne 如何助力 AI 搜索之前,先来简要介绍一下 RAG 的基础原理与应用场景。
RAG(Retrieval-Augmented
Generation)由三个阶段构成,即索引、检索与生成。首先数据经过提取、分块和向量化操作,存储于向量数据库中,当用户输入文本时,会从中检索出相似度最高的向量,检索结果作为上下文,再加上提示词,输入给大模型,得到生成的答案。通过 RAG 可以提升回答质量,减少幻觉现象。
当前,RAG 有三种范式。前面介绍的是最朴素的形式(Naïve RAG)。为了进一步提高准确性,针对检索模块增加了前处理和后处理,如查询改写和结果重排等,这就是进阶模式(Advanced RAG)。现今趋势转向模块化设计,可以灵活组合各个组件,也就是 Modular
RAG 的模式,但仍坚守三段式核心。
我们重点聚焦于多模态搜索领域,突破文本限制,实现文本、图片、视频、音频等多种格式的交叉检索。
跨模态检索,涉及模型预处理,使异构数据在同一向量库中实现互联。本次分享聚焦于图文多模态检索。具体而言,图片转文本描述,注入文本向量库,便于与文本询问时共索,无论纯文本或图文结合提问,均能在同一向量库检索,扩展查询范围与应答能力。
实现跨模态检索的核心在于将文本和图像的向量表示对齐到同一个语义空间,确保它们能够实现语义融合。CLIP(ContrastiveLanguage-Image Pre-training)架构通过对比学习损失函数,有效缩小匹配文本和图像在语义空间中的距离,建立两者之间的紧密关联。例如,当用户输入“狗的图片”作为查询,CLIP 可以将文本转化为向量,与候选图像的向量进行相似性比较,从而完成检索任务。CLIP 这一架构提供了强大的跨模态表示能力,已成为跨模态预训练的经典范式。
接下来将介绍 MatrixOne 是如何在 AI 搜索应用中发挥作用的。
2.
Indexing &
Retrieval
MatrixOne 采用向量类型存储,可以同时存储和检索文本、图像、视频、音频等不同类型的向量化数据,为多模态检索提供了底层支持。MatrixOne 内置了距离与相似度函数,通过计算向量相似度,搜索系统能够识别出意义相近的内容,而不仅仅依赖于关键词匹配。
为了提升检索性能,MatrixOne 提供了向量索引的能力,可以显著提高相似性搜索的速度。同时,支持动态索引更新,新文件上传后,如 PDF 文档,无需等待全局更新,即可快速完成索引,保证数据时效性。
针对短词短句,提供了全文索引,可以为文本描述、标签等生成索引,使 AI 能够将不同模态数据通过文本关联起来,从而实现跨模态检索。
3.
Data Source
针对外部数据管理,MatrixOne 提供了 Stage 功能,用于连接外部存储位置,从而支持数据文件的批量导入、导出以及管理。
DATALINK 则是一种数据类型,用于引用和访问外部存储上的数据文件,使得数据库能够直接关联外部资源,而无需将文件内容直接存储在数据库内。
MatrixOne 支持半结构化和非结构化数据的存储与管理,还支持在 JSON 上创建全文索引。MatrixOne 提供了一体化服务,将元数据集中于数据库中,避免分散存放,更易于管理和访问,同时可以保证数据一致性。
4.
MatrixOne
对 RAG 应用的全链路支持
MatrixOne 打通了从数据源到检索,到重排合并,再到生成回答的整个过程,实现了在一个平台中对 RAG 应用提供全链路支持。
基于 MatrixOne 的图片检索落地案例
接下来将分享一个实际落地案例,直观展现 MatrixOne 在 AI 搜索领域的成效与价值。
该案例是一个瓷砖样本检索的场景。瓷砖外观相近,业务员要人工在成千上万种瓷砖中查找,效率非常低下,影响订单成交率。
我们提供的解决方案是一个开发定制小程序,上传瓷砖样本图片,即可快速定位相似款型,协助业务员迅速决策,提升工作效率。