大数跨境
0
0

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

从MaxCompute到Milvus:通过DataWorks进行数据同步,实现海量数据高效相似性检索 阿里云大数据AI平台
2025-06-11
2
导读:DataWorks作为一站式智能大数据开发治理平台,提供了强大的数据集成服务。用户可以通过DataWorks的数据集成服务实现无缝同步。本文介绍如何利用DataWorks,快速完成从MaxComput



01

背景介绍

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

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

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

然而,如何将存储在 MaxCompute 中的大规模结构化数据高效、稳定地导入 Milvus,成为企业在数据智能化转型过程中的一大挑战。DataWorks 作为一站式智能大数据开发治理平台,提供了强大的数据集成服务。

用户可以通过 DataWorks 的数据集成服务实现无缝同步。本文介绍如何利用 DataWorks,快速完成从 MaxCompute 到 Milvus 的离线数据同步。


02

前提条件
  • 已在 Milvus 中创建 Milvus 实例

    https://x.sm.cn/J5CrGfK

  • 已在 MaxCompute 中创建 MaxCompute 项目https://x.sm.cn/9TYRt6m

  • DataWorks 环境准备:

  • 创建工作空间https://x.sm.cn/DLAKnH2

  • 已购买所需 DataWorks 资源组绑定至相应的工作空间,详情请参见新增和使用独享数据集成资源组https://x.sm.cn/Ajs9Est


03

操作流程

步骤一:数据准备

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

  • 在 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.01554047123.0));INSERT INTO dl_1216.`default`.mc_table VALUES(200'bbb'array(1554047999.01554047999.0));
SELECT * FROM dl_1216.`default`.mc_table;
  • 在 Milvus 创建 Collection。

本文通过 Attu 页面 https://x.sm.cn/21sYjzg 创建 Collection,您也可以通过 Python SDK 方式来创建,详情请参创建 Collection。https://x.sm.cn/DqwADhw

步骤二:新增数据源

  1. 进入数据集成页面。

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

2. 在左侧导航栏单击数据源,然后单击新增数据源

3. 新增 Milvus 和 MaxCompute 数据源。

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

  • 创建 Milvus 数据源

a. 新增数据源的搜索栏中,选择数据源类型为 Milvus 数据源。

b. 新增 Milvus 数据源对话框中,配置以下基础信息,其余参数保持默认值即可。

  • 创建 MaxCompute 数据源

a. 在新增数据源的搜索栏中搜索并单击 MaxCompute

b. 在新增 MaxCompute 数据源对话框中,配置以下基础信息,其余参数保持默认值即可。

4. 在连接配置区域,找到工作空间已绑定的资源组,单击连通状态列的测试连通性

  • 如果测试资源组连通性状态为可连通,即完成新增数据源的创建。

  • 如果显示无法连通,表示资源组与数据源无法连通,后续相应数据源任务将无法正常执行,此时您需要根据右侧弹出的连通性诊断工具窗口,自助解决连通性问题,连通性诊断工具会提示目前连通失败的原因,请根据提示进行修改调整。

5. 单击完成

步骤三:配置同步任务

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

2. 在新建同步任务页面,同步类型选择为单表离线,然后单击确定,前往 DataStudio 页进行数据传输设置。

3. 在新建节点对话框中,节点类型选择离线同步路径名称可以根据实际情况设置,然后单击确认

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

涉及参数如下:

  • 数据来源:MaxCompute。对应的数据源名称,选择前一步骤中新增的 MaxCompute数据源,例如,MaxCompute_Source。

  • 资源组:已在 DataWorks 中购买的 DataWorks 资源组。

  • 数据去向:Milvus。对应的数据源名称,选择前一步骤中新增的 Milvus 数据源,例如,Milvus_Source。

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

更多配置信息,请参见通过向导模式配置离线同步任务。https://x.sm.cn/xP6FDu
  1. 数据来源区域,选择待同步的表。

b. 在数据去向区域,配置数据去向的各参数。

c. 在字段映射区域中,设置来源字段目标字段的映射关系。

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

d. 在通道控制区域,配置通道参数。

6. 运行任务。

a. 在节点区域的左上角,单击图标。

b. 在节点区域的左上角,单击图标。

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

步骤四:查询测试

  1. 访问 Attu 页面https://x.sm.cn/Cs7sSA0

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


04

相关信息
  • 向量检索服务 Milvus 版产品详情页 

https://www.aliyun.com/product/milvus

  • 大数据开发治理平台 DataWorks 产品详情页

https://x.sm.cn/54m23pn

  • 云原生大数据计算服务 MaxCompute 产品详情页

https://x.sm.cn/Bft8ZWv

  • Milvus 最新动态:

  • 新用户首月免费试用->领取地址 https://x.sm.cn/G7XV3bO

  • 产品全规格年付5折->购买地址 https://x.sm.cn/1Guv2tM

  • 新增按量计费模式,使用更灵活

  • 2.5版本支持向量+文本混合检索,覆盖场景更广

如有疑问,可加入向量检索 Milvus 版用户交流钉群 59530004993 咨询。

/ END /

更多推荐





如您对文中所提到的内容及产品有疑问,或者有明确的业务需求,可点击阅读原文填写表单联系我们,有专业的人员来联系您响应您的需求

【声明】内容源于网络
0
0
阿里云大数据AI平台
阿里云大数据AI平台依托阿里领先的云基础设施、大数据和AI工程能力、场景算法技术和多年行业实践,一站式地为企业和开发者提供云原生的大数据和AI能力体系。帮助提升AI应用开发效率,促进AI在产业中规模化落地,激发业务价值。
内容 535
粉丝 0
阿里云大数据AI平台 阿里云大数据AI平台依托阿里领先的云基础设施、大数据和AI工程能力、场景算法技术和多年行业实践,一站式地为企业和开发者提供云原生的大数据和AI能力体系。帮助提升AI应用开发效率,促进AI在产业中规模化落地,激发业务价值。
总阅读79
粉丝0
内容535