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

本文涉及的产品
实时计算 Flink 版,1000CU*H 3个月
实时数仓Hologres,5000CU*H 100GB 3个月
智能开放搜索 OpenSearch行业算法版,1GB 20LCU 1个月
简介: 如果您需要将存储在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版本支持向量+文本混合检索,覆盖场景更广
相关实践学习
基于Hologres轻量实时的高性能OLAP分析
本教程基于GitHub Archive公开数据集,通过DataWorks将GitHub中的项⽬、行为等20多种事件类型数据实时采集至Hologres进行分析,同时使用DataV内置模板,快速搭建实时可视化数据大屏,从开发者、项⽬、编程语⾔等多个维度了解GitHub实时数据变化情况。
相关文章
|
SQL 分布式计算 DataWorks
DataWorks产品使用合集之如何开发ODPS Spark任务
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
292 2
|
DataWorks Kubernetes 大数据
飞天大数据平台产品问题之DataWorks提供的商业化服务如何解决
飞天大数据平台产品问题之DataWorks提供的商业化服务如何解决
|
10月前
|
数据采集 机器学习/深度学习 DataWorks
DataWorks产品评测:大数据开发治理的深度体验
DataWorks产品评测:大数据开发治理的深度体验
450 1
|
11月前
|
SQL 分布式计算 DataWorks
DataWorks产品测评|基于DataWorks和MaxCompute产品组合实现用户画像分析
本文介绍了如何使用DataWorks和MaxCompute产品组合实现用户画像分析。首先,通过阿里云官网开通DataWorks服务并创建资源组,接着创建MaxCompute项目和数据源。随后,利用DataWorks的数据集成和数据开发模块,将业务数据同步至MaxCompute,并通过ODPS SQL完成用户画像的数据加工,最终将结果写入`ads_user_info_1d`表。文章详细记录了每一步的操作过程,包括任务开发、运行、运维操作和资源释放,帮助读者顺利完成用户画像分析。此外,还指出了文档中的一些不一致之处,并提供了相应的解决方法。
|
11月前
|
SQL DataWorks 数据可视化
阿里云DataWorks评测:大数据开发治理平台的卓越表现
阿里云DataWorks是一款集数据集成、开发、分析与管理于一体的大数据平台,支持多种数据源无缝整合,提供可视化ETL工具和灵活的任务调度机制。其内置的安全体系和丰富的插件生态,确保了数据处理的高效性和安全性。通过实际测试,DataWorks展现了强大的计算能力和稳定性,适用于中小企业快速搭建稳定高效的BI系统。未来,DataWorks将继续优化功能,降低使用门槛,并推出更多灵活的定价方案,助力企业实现数据价值最大化。
|
11月前
|
分布式计算 DataWorks 搜索推荐
聊聊DataWorks这个大数据开发治理平台
聊聊DataWorks这个大数据开发治理平台
312 2
|
11月前
|
机器学习/深度学习 存储 数据采集
解锁DataWorks:一站式大数据治理神器
解锁DataWorks:一站式大数据治理神器
258 1
|
11月前
|
DataWorks 搜索推荐 大数据
聊聊DataWorks——这个一站式智能大数据开发治理平台
聊聊DataWorks——这个一站式智能大数据开发治理平台
712 2
|
11月前
|
分布式计算 DataWorks 搜索推荐
DataWorks产品评测:大数据开发治理平台的最佳实践与体验
DataWorks是阿里云推出的一款大数据开发治理平台,集成了多种大数据引擎,支持数据集成、开发、分析和任务调度。本文通过用户画像分析的最佳实践,评测了DataWorks的功能和使用体验,并提出了优化建议。通过实践,DataWorks在数据整合、清洗及可视化方面表现出色,适合企业高效管理和分析数据。
436 0
|
SQL 分布式计算 DataWorks
DataWorks产品使用合集之未保存的ODPS SQL语句该如何找回
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
141 2

热门文章

最新文章

相关产品

  • 大数据开发治理平台 DataWorks
  • 云原生大数据计算服务 MaxCompute