Milvus输入组件用于读取Milvus数据源的数据。同步Milvus数据源的数据至其他数据源的场景中,您需要先配置Milvus输入组件读取的源数据源,再配置数据同步的目标数据源。本文为您介绍如何配置Milvus输入组件。
前提条件
已创建Milvus数据源。具体操作,请参见。
进行Milvus输入组件属性配置的账号,需具备该数据源的同步读权限。如果没有权限,则需要申请数据源权限。具体操作,请参见申请、续期和交还数据源权限。
操作步骤
在Dataphin首页顶部菜单栏,选择研发 > 数据集成。
在集成页面顶部菜单栏选择项目(Dev-Prod模式需要选择环境)。
在左侧导航栏中单击离线集成,在离线集成列表中单击需要开发的离线管道,打开该离线管道的配置页面。
单击页面右上角的组件库,打开组件库面板。
在组件库面板左侧导航栏中需选择输入,在右侧的输入组件列表中找到Milvus组件,并拖动该组件至画布。
单击Milvus输入组件卡片中的
图标,打开Milvus输入配置对话框。在Milvus输入配置对话框中,配置以下参数。
参数
描述
步骤名称
即Milvus输入组件的名称。Dataphin自动生成步骤名称,您也可以根据业务场景修改。命名规则如下:
只能包含中文、字母、下划线(_)、数字。
长度不超过64个字符。
数据源
在数据源下拉列表中,展示所有Milvus类型的数据源,包括您已拥有同步读权限的数据源和未拥有同步读权限的数据源。单击
图标,可复制当前数据源名称。对于您没有同步读权限的数据源,您可以单击数据源后的申请,申请对应数据源的读取权限。申请数据源读取权限的具体操作,请参见申请、续期和交还数据源权限。
如果您还没有Milvus类型的数据源,单击新建数据源,创建数据源。具体操作,请参见。
数据库(非必选)
选择集合所在的库,若不填则使用数据源注册时填写的库。
集合
Milvus中存储向量数据的表。
分区(非必填)
填写分区,例如
ds=1000,若不填则读取全部分区。切分建(非必选)
系统根据配置的切分键字段进行数据分片,可以配合并发度配置使用,实现并发读取。支持将源数据表中某一列作为切分键。此外,建议使用主键或有索引的列作为切分键以保证传输性能。
重要选择日期时间类型时,系统会通过识别最大最小值方式,根据总时间范围和并发度进行暴力切分,不保证平均。
批量读取条数(非必填)
一次性读取数据的条数。在从源数据库读取数据时,可以配置一个特定的批量读取条数(如1024条记录),而不是一条一条地读取,以减少与数据源之间的交互次数,提高I/O效率,并降低网络延迟。
输入过滤(非必填)
参考相应milvus filter语法(无需输入filter)填写过滤语句,支持系统变量,如
status = 'active' AND create_time >= '${bizdate}'。一致性级别
强一致(Strong):可实时读取最新数据,查询性能偏低。
最终一致(Eventually):查询速度更快,短时间内可能读取不到新增数据。
输出字段
输出字段区域展示了已选中表及筛选条件命中的所有字段。支持进行以下操作:
字段管理:如果不需要将某些字段输出至下游组件,则您可以删除对应的字段:
单个删除字段场景:如果需要删除少量的字段,则可以单击操作列下的
图标,删除多余的字段。批量删除字段场景:如果需要删除大批量字段,则可以单击字段管理,在字段管理对话框选择多个字段后,单击
左移动图标,将已选的输入字段移入到未选的输入字段并单击确定,完成字段的批量删除。
批量添加:单击批量添加,支持JSON、TEXT格式、DDL格式批量配置。
说明批量添加完成,单击确定后会覆盖已配置的字段信息。
以JSON格式批量配置,例如:
[ { "index": 1, "name": "product_id", "type": "Int64", "mapType": "Long", "comment": "" }, { "index": 2, "name": "product_name", "type": "VarChar", "mapType": "String", "comment": "" }, { "index": 3, "name": "price", "type": "Float", "mapType": "Double", "comment": "" }, { "index": 4, "name": "tags", "type": "Array", "mapType": "String", "comment": "" }, { "index": 5, "name": "ratings", "type": "Array", "mapType": "String", "comment": "" }, { "index": 6, "name": "warehouse_stock", "type": "Array", "mapType": "String", "comment": "" }, { "index": 7, "name": "embedding", "type": "FloatVector", "mapType": "String", "comment": "" } ]说明index表示指定对象的列编号,name表示引入后的字段名称,type表示引入后的字段类型。
例如,
"index":3,"name":"user_id","type":"String"表示把文件中的第4列引入,字段名为user_id,字段类型为String。以TEXT格式批量配置,例如:
1,product_id,Int64,Long, 2,product_name,VarChar,String, 3,price,Float,Double, 4,tags,Array,String, 5,ratings,Array,String, 6,warehouse_stock,Array,String, 7,embedding,FloatVector,String,行分隔符用于分隔每个字段的信息,默认为换行符(\n),可支持换行符(\n)、半角分号(;)、半角句号(.)。
列分隔符用于分隔字段名与字段类型,默认半角逗号(,),可支持
','字段类型可缺省,默认为','。
以DDL格式批量配置,例如:
CREATE TABLE tablename ( user_id serial, username VARCHAR(50), password VARCHAR(50), email VARCHAR (255), created_on TIMESTAMP, );
新建输出字段:单击+新建输出字段,根据页面提示填写字段、类型、备注并选择映射类型。当前行完成配置后,单击
图标保存。
单击确认,完成Milvus输入组件的属性配置。
图标保存。