连接器、导入与导出任务¶
使用 Product SDK 配置连接器,并通过连接器创建、查询和管理导入或导出任务。连接器、导入任务和导入任务文件都属于工作区范围;请使用创建、查询或界面选择所返回的 ID,而不是自行拼接。
操作顺序¶
在目标工作区创建连接器,或使用已确认的连接器 ID 获取连接器对象。
先浏览源端元数据、目标库表或文件预览,确认数据来源和目标位置。
使用明确的任务配置创建导入任务或导出任务。
保存返回的任务对象或任务 ID,并根据任务状态决定后续操作。
创建任务表示请求已提交,不表示数据已完成导入或导出。后续应读取任务状态和结果,并在出现错误时保留任务 ID 用于定位。
SDK 调用¶
以下示例使用连接器对象创建文件导入任务。任务配置中的来源、卷、导入模式和筛选规则均由调用方提供:
connector, _, err := workspace.CreateConnector(ctx, connectorName, sourceType, usageType)
importTask, created, err := connector.CreateFileImportTask(ctx, sdk.FileImportTaskSpec{
ConfigType: configType,
Name: taskName,
VolumeID: volumeID,
URIs: sourceURIs,
LoadModeConfig: loadModeConfig,
FileFilterConfig: fileFilterConfig,
})
connector, created_connector = workspace.create_connector(
connector_name, source_type, usage_type
)
import_task, created_task = connector.create_file_import_task(
sdk.FileImportTaskSpec(
config_type=config_type,
name=task_name,
volume_id=volume_id,
uris=source_uris,
load_mode_config=load_mode_config,
file_filter_config=file_filter_config,
)
)
保存 importTask 或 import_task,并使用其状态读取方法查询原任务;不要因网络超时直接再提交一次任务。
导入任务¶
文件导入任务需要调用方明确提供任务名称、配置类型、目标卷、导入任务文件位置、导入模式和文件筛选配置。缺少这些信息时,不应依赖默认值或从文件路径推断。
导入任务创建后,可以使用任务对象读取信息,并在权限和业务条件允许时更新、暂停、恢复、重试或删除任务。重试前先检查失败原因、数据是否已部分写入,以及重试是否会造成重复处理。
导出任务¶
导出任务需要明确任务名称、连接器、导出类型、目标存储配置和待导出的文件。文件 ID 与完整路径应来自已知资源或用户选择,不应由 SDK 根据显示名称推断。
导出任务可能向外部存储写入数据。创建、重试或删除任务前,请确认目标位置、凭据、覆盖策略和数据影响。
语言方法对照¶
任务 |
Go |
Python |
|---|---|---|
创建或绑定连接器 |
|
|
创建文件导入任务 |
|
|
创建导出任务 |
|
|
优先使用任务配置对象和连接器对象完成调用。HTTP 请求字段、完整状态值和错误码见对应的 Product API 页面。