从MaxCompute到Milvus:通过DataWorks进行数据同步,实现海量数据高效相似性检索

本文涉及的产品
智能开放搜索 OpenSearch行业算法版,1GB 20LCU 1个月
实时数仓Hologres,5000CU*H 100GB 3个月
实时计算 Flink 版,5000CU*H 3个月
简介: 如果您需要将存储在MaxCompute中的大规模结构化数据导入Milvus,以支持高效的向量检索和相似性分析,可以通过DataWorks的数据集成服务实现无缝同步。本文介绍如何利用DataWorks,快速完成从MaxCompute到Milvus的离线数据同步。

背景介绍

在如今大数据和人工智能应用场景中,企业往往需要对存储在云数据仓库(如云原生大数据计算服务 MaxCompute)中的大规模结构化数据进行向量化处理以支持高效的向量检索和相似性分析等AI应用。


阿里云向量检索服务Milvus版是一款全托管向量检索引擎,并确保与开源Milvus的完全兼容性,支持无缝迁移。它在开源版本的基础上增强了可扩展性,能提供大规模AI向量数据的相似性检索服务。凭借其开箱即用的特性、灵活的扩展能力和全链路监控告警,Milvus云服务成为多样化AI应用场景的理想选择,包括多模态搜索、检索增强生成(RAG)、搜索推荐、内容风险识别等。您还可以利用开源的Attu工具进行可视化操作,进一步促进应用的快速开发和部署。


结合MaxCompute与Milvus,可充分整合MaxCompute在处理海量结构化数据(如日志、元数据)及执行复杂计算(如特征工程、模型训练)方面的算力优势,同时利用Milvus高效存储与检索高维向量的性能特性,能够支撑电商用户行为分析医疗知识库构建游戏内容推荐等多种场景。并通过结构化数据处理与向量检索能力的协同,实现多模态数据的融合分析,满足行业应用中对高维度特征检索与复杂逻辑计算的双重需求。


然而,如何将存储在MaxCompute中的大规模结构化数据高效、稳定地导入Milvus,成为企业在数据智能化转型过程中的一大挑战。


DataWorks作为一站式智能大数据开发治理平台,提供了强大的数据集成服务。用户可以通过DataWorks数据集成服务实现无缝同步。本文介绍如何利用DataWorks,快速完成从MaxCompute到Milvus的离线数据同步


前提条件


操作流程

步骤一:数据准备

以下数据仅供测试使用,请您根据实际情况准备相应的数据。

  • 在MaxCompute创建表。

本文使用的建表语句及数据如下所示。

CREATE TABLE dl_1216.`default`.mc_table (
    id INT,
    namespace STRING,
    vector ARRAY<DOUBLE>
);
INSERT INTO dl_1216.`default`.mc_table VALUES(100, 'aaa', array(1554047123.0, 1554047123.0));
INSERT INTO dl_1216.`default`.mc_table VALUES(200, 'bbb', array(1554047999.0, 1554047999.0));
SELECT * FROM dl_1216.`default`.mc_table;
  • 在Milvus创建Collection。

本文通过Attu页面创建Collection,您也可以通过Python SDK方式来创建,详情请参见创建Collection

步骤二:新增数据源

  1. 进入数据集成页面。

登录DataWorks控制台,切换至目标地域,单击左侧导航栏的数据集成 > 数据集成,在下拉框中选择对应工作空间后单击进入数据集成

  1. 在左侧导航栏单击数据源,然后单击新增数据源
  2. 新增Milvus和MaxCompute数据源。

DataWorks通过创建数据源的方式,接入数据来源和数据去向,因此,本步骤需要分别创建Milvus和MaxCompute两个数据源。

  • 创建Milvus数据源
  • 新增数据源的搜索栏中,选择数据源类型为Milvus数据源。
  • 新增Milvus数据源对话框中,配置以下基础信息,其余参数保持默认值即可。

参数

说明

数据源名称

本示例为Milvus_Source。

配置模式

选择阿里云实例模式

地域

选择华东1(杭州)。

实例

选择已创建的Milvus实例。

数据库名称

配置为default

用户名

输入用户名root

密码

输入Milvus实例的密码。


  • 创建MaxCompute数据源
  • 新增数据源的搜索栏中搜索并单击MaxCompute
  • 新增MaxCompute数据源对话框中,配置以下基础信息,其余参数保持默认值即可。

参数

说明

数据源名称

本示例为MaxCompute_Source。

地域

选择华东1(杭州)。

MaxCompute项目名称

选择已在MaxCompute中创建的项目名。

默认访问身份

选择阿里云主账号


  1. 连接配置区域,找到工作空间已绑定的资源组,单击连通状态列的测试连通性
  • 如果测试资源组连通性状态为可连通,即完成新增数据源的创建。
  • 如果显示无法连通,表示资源组与数据源无法连通,后续相应数据源任务将无法正常执行,此时您需要根据右侧弹出的连通性诊断工具窗口,自助解决连通性问题,连通性诊断工具会提示目前连通失败的原因,请根据提示进行修改调整。
  1. 单击完成

步骤三:配置同步任务

  1. 在左侧导航栏中选择同步任务,对同步任务的来源去向进行设置,然后单击新建同步任务

  1. 新建同步任务页面,同步类型选择为单表离线,然后单击确定,前往DataStudio页进行数据传输设置。
  2. 新建节点对话框中,节点类型选择离线同步路径名称可以根据实际情况设置,然后单击确认

  1. 网络与资源配置阶段,分别对数据来源、资源组、数据去向的内容进行设置,然后单击下一步

涉及参数如下:

  • 数据来源:MaxCompute。对应的数据源名称,选择前一步骤中新增的MaxCompute数据源,例如,MaxCompute_Source。
  • 资源组:已在DataWorks中购买的DataWorks资源组。
  • 数据去向:Milvus。对应的数据源名称,选择前一步骤中新增的Milvus数据源,例如,Milvus_Source。


  1. 配置任务阶段,分别对数据来源与去向、字段映射、通道控制的内容进行设置,然后单击图标。

更多配置信息,请参见通过向导模式配置离线同步任务

  • 数据来源区域,选择待同步的表。

  • 数据去向区域,配置数据去向的各参数。
  • 字段映射区域中,设置来源字段目标字段的映射关系。

  • 字段映射中的来源字段和目标字段需要一致,并且同行相对应,详情请参见类型映射表格。如果字段本身在表中没有(或不支持)默认值填充,则同步会出错。

MaxCompute字段类型

Milvus字段类型

ARRAY<FLOAT>

Float Vector

ARRAY<FLOAT>

BFloat16 Vector

ARRAY<FLOAT>

Float16 Vector

BINARY

Binary Vector

STRING

JSON

ARRAY<INT>

Array

INT

Int64

TINYINT

Int8

INT

Int16

INT

Int32

FLOAT

Float

DOUBLE

Double

STRING

VarChar

BOOLEAN

Boolean


  • 通道控制区域,配置通道参数。


  1. 运行任务。
  • 在节点区域的左上角,单击 图标。
  • 在节点区域的左上角,单击 图标。

当运行日志中出现Shell run successfully时表明任务运行成功。


步骤四:查询测试

  1. 访问Attu页面
  2. 进入目标集合(本文示例为collection_name),在数据页签中查看同步的数据。

相关信息

  • 新用户首月免费试用->领取地址
  • 产品全规格年付5折->购买地址
  • 新增按量计费模式,使用更灵活
  • 2.5版本支持向量+文本混合检索,覆盖场景更广
相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
一站式大数据开发治理平台DataWorks初级课程
DataWorks 从 2009 年开始,十ー年里一直支持阿里巴巴集团内部数据中台的建设,2019 年双 11 稳定支撑每日千万级的任务调度。每天阿里巴巴内部有数万名数据和算法工程师正在使用DataWorks,承了阿里巴巴 99%的据业务构建。本课程主要介绍了阿里巴巴大数据技术发展历程与 DataWorks 几大模块的基本能力。 产品官网 https://www.aliyun.com/product/bigdata/ide 大数据&amp;AI体验馆 https://workbench.data.aliyun.com/experience.htm#/ 帮助文档https://help.aliyun.com/zh/dataworks 课程目标 &nbsp;通过讲师的详细讲解与实际演示,学员可以一边学习一边进行实际操作,可以深入了解DataWorks各大模块的使用方式和具体功能,让学员对DataWorks数据集成、开发、分析、运维、安全、治理等方面有深刻的了解,加深对阿里云大数据产品体系的理解与认识。 适合人群 &nbsp;企业数据仓库开发人员 &nbsp;大数据平台开发人员 &nbsp;数据分析师 &nbsp;大数据运维人员 &nbsp;对于大数据平台、数据中台产品感兴趣的开发者
相关文章
|
1月前
|
Java 测试技术 微服务
最新技术栈下 Java 面试高频技术点实操指南详解
本指南结合最新Java技术趋势,涵盖微服务(Spring Cloud Alibaba)、响应式编程(Spring WebFlux)、容器化部署(Docker+Kubernetes)、函数式编程、性能优化及测试等核心领域。通过具体实现步骤与示例代码,深入讲解服务注册发现、配置中心、熔断限流、响应式数据库访问、JVM调优等内容。适合备战Java面试,提升实操能力,助力技术进阶。资源链接:[https://pan.quark.cn/s/14fcf913bae6](https://pan.quark.cn/s/14fcf913bae6)
109 25
|
4月前
|
存储 人工智能 自然语言处理
方案介绍|基于百炼生成向量数据并使用阿里云Milvus存储和检索
阿⾥云Milvus是⼀款云上全托管服务,提供⼤规模向量数据的相似性检索服务。100%兼容开源Milvus,在开源版本的基础上增强了可扩展性,具备易⽤性、可⽤性、安全性、低成本与⽣态优势。阿⾥云Milvus可以⽀持⼏乎所有涉及到向量搜索的场景。例如检索增强⽣成RAG,以及经典的搜索推荐、多模态检索等。阿里云Milvus可存储百炼产生的向量数据,并进行大规模向量数据的检索。本文将重点介绍这一过程的方案。
|
19天前
|
人工智能 Kubernetes 调度
基于 AI 网关和 llmaz,提升 vLLM 推理服务可用性和部署易用性的实践
本文介绍了如何使用 llmaz 快速部署基于 vLLM 的大语言模型推理服务,并结合 Higress AI 网关实现流量控制、可观测性、故障转移等能力,构建稳定、高可用的大模型服务平台。
209 17
|
19天前
|
人工智能 IDE 定位技术
通义灵码 AI IDE 上线,第一时间测评体验
通义灵码 AI IDE 重磅上线,开启智能编程新纪元!无需插件,开箱即用,依托通义千问大模型,实现高效、智能的编程体验。支持 MCP 工具链,可快速调用多种服务(如12306余票查询、高德地图标注等),大幅提升开发效率。结合 Qwen3 强大的 Agent 能力,开发者可通过自然语言快速构建功能,如智能选票系统、地图可视化页面等。行间代码预测、AI 规则定制、记忆能力等功能,让 AI 更懂你的编码习惯。Lingma IDE 不仅是工具,更是开发者身边的智能助手,助力 AI 编程落地实践。立即下载体验,感受未来编程的魅力!
172 17
|
2月前
|
SQL DataWorks 大数据
DataWorks x 婚礼纪:智能一站式数据开发治理平台让千万新人的幸福时刻“数智化”
婚礼纪是杭州火烧云科技推出的结婚服务平台,覆盖婚宴酒店、婚纱摄影等全产业链,年服务超2000万对新人。为应对海量数据处理挑战,婚礼纪选择阿里云DataWorks作为一站式大数据开发治理平台,解决数据血缘不清、指标口径混乱等问题。通过湖仓一体架构与全链路数据治理,实现多源异构数据高效整合,支撑精准营销、交易风控等核心场景。DataWorks新版数据开发Data Studio大幅提升开发效率,Copilot智能助手优化SQL代码生成与测试,助力婚礼纪构建数据驱动的结婚产业服务中枢。
|
3月前
|
存储 消息中间件 分布式计算
Hologres实时数仓在B站游戏的建设与实践
本文介绍了B站游戏业务中实时数据仓库的构建与优化过程。为满足日益增长的数据实时性需求,采用了Hologres作为核心组件优化传统Lambda架构,实现了存储层面的流批一体化及离线-实时数据的无缝衔接。文章详细描述了架构选型、分层设计(ODS、DWD、DIM、ADS)及关键技术挑战的解决方法,如高QPS点查、数据乱序重写等。目前,该实时数仓已广泛应用于运营分析、广告投放等多个场景,并计划进一步完善实时指标体系、扩展明细层应用及研发数据实时解析能力。
Hologres实时数仓在B站游戏的建设与实践
|
3月前
|
存储 人工智能 监控
通过阿里云Milvus与通义千问VL大模型,快速实现多模态搜索
阿里云向量检索服务Milvus版是一款全托管向量检索引擎,并确保与开源Milvus的完全兼容性,支持无缝迁移。它在开源版本的基础上增强了可扩展性,能提供大规模AI向量数据的相似性检索服务。凭借其开箱即用的特性、灵活的扩展能力和全链路监控告警,Milvus云服务成为多样化AI应用场景的理想选择,包括多模态搜索、检索增强生成(RAG)、搜索推荐、内容风险识别等。您还可以利用开源的Attu工具进行可视化操作,进一步促进应用的快速开发和部署。
|
1月前
|
SQL 分布式计算 编译器
流批一体向量化引擎Flex
本文整理自蚂蚁集团技术专家刘勇在Flink Forward Asia 2024上的分享,聚焦流批一体向量化引擎的背景、架构及未来规划。内容涵盖向量化计算的基础原理(如SIMD指令)、现有技术现状,以及蚂蚁在Flink 1.18中引入的C++开发向量化计算实践。通过Flex引擎(基于Velox构建),实现比原生执行引擎更高的吞吐量和更低的成本。文章还详细介绍了功能性优化、正确性验证、易用性和稳定性建设,并展示了线上作业性能提升的具体数据(平均提升75%,最佳达14倍)。最后展望了未来规划,包括全新数据转换层、与Paimon结合及支持更多算子和SIMD函数。
139 9
流批一体向量化引擎Flex
|
6月前
|
人工智能 自然语言处理 安全
通过阿里云Milvus与PAI搭建高效的检索增强对话系统
阿里云向量检索Milvus版是一款全托管的云服务,兼容开源Milvus并支持无缝迁移。它提供大规模AI向量数据的相似性检索服务,具备易用性、可用性、安全性和低成本等优势,适用于多模态搜索、检索增强生成(RAG)、搜索推荐、内容风险识别等场景。用户可通过PAI平台部署RAG系统,创建和配置Milvus实例,并利用Attu工具进行可视化操作,快速开发和部署应用。使用前需确保Milvus实例和PAI在相同地域,并完成相关配置与开通服务。

热门文章

最新文章