Talend血统配置
连接到Talend以扫描元数据并在血统图上显示。 要导入谱系元数据,请创建数据源定义和元数据导入作业。
此信息适用于 IBM Manta Data Lineage 服务。
从Talend数据源导入Lineage的功能现已在 Cloud Pak for Data 及更高版本( 5.3.1 )中提供。
概述
支持的Talend版本
- Talend Studio 8.0
处理后的元数据
以下 Talend 元数据经过处理后在血统视图中显示:
- 项目、任务和子任务
- 连接器
- 组件
- 表达式
- SQL覆盖
以下 Talend 组件将被处理:
- 输入/输出: tFileInputExcel, tFileOutputExcel, FileInputDelimited, tFileOutputDelimited, tFileInputRaw, tFileOutputRaw, tFileInputPositional, tFileOutputPositional, tS3Put
- 数据库连接/输入/输出/行: tTeradataConnection/tTeradataInput/tTeradataOutput/tTeradataRow, tOracleConnection/tOracleInput/tOracleOutput/tOracleRow, tMSSqlConnection/tMSSqlInput/tMSSqlOutput/tMSSqlRow, tSybaseConnection/tSybaseInput/tSybaseOutput/tSybaseRow, tHiveConnection/tHiveInput/tHiveOutput/tHiveRow, tNetezzaConnection/tNetezzaInput/tNetezzaOutput/tNetezzaRow, tDB2Connection/tDB2Input/tDB2Output/tDB2Row, tPostgresqlConnection/tPostgresqlInput/tPostgresqlOutput/tPostgresqlRow, tSQLiteConnection/tSQLiteInput/tSQLiteOutput/tSQLiteRow, tMysqlConnection/tMysqlInput/tMysqlOutput/tMysqlRow, tSnowflakeConnection/tSnowflakeInput/tSnowflakeOutput/tSnowflakeRow/tSnowflakeOutputBulkExec, tRedshiftConnection/tRedshiftInput/tRedshiftOutput/tRedshiftRow/tRedshiftBulkExec, tDBRow, tGreenplumInput/tGreenplumOutput, tBigQueryInput/tBigQueryOutput, tELTOracleInput/tELTOracleOutput
- 转换: tPrejob,tPostjob,tHMap,tSampleRow,tFilterRow,tSortRow,tExternalSortRow,tUniqRow,tReplace,tReplicate,tConvertType,tUnite,tFilterColumns,tAggregateRow,tSplitRow,tJoin,tMap,tFixedFlowInput,tRowGenerator,tExtractJSONFields,tELTOracleMap
- 编曲: tRunJob,tContextLoad,tDummy
- 其他: tRESTClient, tBufferInput, tBufferOutput, tLogRow, tFileList
限制
动态模式不会被处理。
导入流程概述
要为Talend导入血统元数据,请完成以下步骤:
创建数据源定义
创建数据源定义。 选择 Talend Data 作为数据源类型。
创建元数据导入
了解有关 Talend 数据源的特定选项:
外部输入
Talend元数据只能通过外部输入提供。 您可以将Talend作业导出为以下两种格式:
- 以XML格式导出的单个Talend作业(
.item文件)。 这些文件是独立分析的,不同作业中的作业或子作业组件之间不会建立直接关联。 - 以XML格式导出的Talend作业,压缩为单个归档文件(
.zip文件)。 整个归档文件(包括其包含的所有作业和子作业)将作为单一任务进行分析,并建立不同作业之间的关联关系。 例如,当一个作业通过组件tRunJob调用另一个作业,且被调用作业的结果被传递回调用作业时,便建立了一种关系。 在此场景中,在调用的作业输出与组件tRunJob之间建立了数据血统。
导出文件必须遵循Talend Studio生成的相同目录和文件结构。
您还可以添加以下可选文件:
context- 此目录包含上下文文件。 仅当上下文在Talend作业中使用时才需要。contextReplacement.txt- 此文件包含手动上下文值。 使用此文件覆盖在Talend上下文配置中定义的上下文值。talendExpressionOverrides.csv- 此文件包含手动表达式覆盖设置。 使用此文件覆盖Talend作业中的Java表达式。
外部输入文件(压缩为.zip格式的目录)可具有以下结构:
All Talend .zip and .item file exports
context (directory)
contextReplacement.txt
talendExpressionOverrides.csv
当您导出在Talend Studio中生成的压缩.zip文件时,可将其用作外部输入。 然而,仅处理以下文件:
- 流程/
- 可选文件夹层次结构
*.item*.properties
- 可选文件夹层次结构
- 地图/
- 可选文件夹层次结构
*.xml
- 可选文件夹层次结构
- joblets/
- 可选文件夹层次结构
*.item*.properties
- 可选文件夹层次结构
- 上下文/
*.item*.properties
高级导入选项
- 性能概要文件
- 对于选定的数据源,您可以选择性能配置文件。 根据您当前的需求,谱系元数据导入可能更快或更完整。 您可以从以下配置文件中进行选择:
- 快速 :低时间和内存消耗是此配置文件的首要目标。 若输入数据量较大,血统可能不完整。
- 平衡 :性能与谱系完整性同等重要。 这是在谱系完整性与用于导入谱系所耗费的时间和内存之间的一种折衷方案。
- 完整性 :血统的完整性是本档案的首要考量。 如果输入数据量较大,血统导入可能需要消耗大量资源和时间。
- 自定义配置文件 :您可以通过为以下属性提供数值来创建自己的性能配置文件:
- 数据流分析超时限制 :指定单个输入的数据流分析在达到最大估计时间(以秒为单位)后终止的阈值。 在添加每个节点时或在某些创建边缘的情况下,会检查时间。 因此,在某些情况下,超时可能会略微超出指定的限制。 若将该值设为0,则分析不会停止。 示例值:
60. - 数据流分析边界限制 :指定数据流分析过程中单个输入允许的最大边数。 如果超出此限制,所有过滤边缘都将被移除,并且不会再添加任何过滤边缘。 如果在此之后仍超出限制,则停止分析,且输入失败。 要禁用限制,请将值设置为 0。 示例值:
2500.
- 数据流分析超时限制 :指定单个输入的数据流分析在达到最大估计时间(以秒为单位)后终止的阈值。 在添加每个节点时或在某些创建边缘的情况下,会检查时间。 因此,在某些情况下,超时可能会略微超出指定的限制。 若将该值设为0,则分析不会停止。 示例值:
配置上下文变量
在Talend作业中使用上下文时,必须为上下文变量添加值,以确保其正确处理。 所有上下文文件均通过外部输入添加。 它们必须添加到文件夹 context 中。
上下文变量按以下顺序处理:
- 静态值从文件中加载
.item。 - 隐式上下文值被处理。
- 在文件
contextReplacement.txt中手动定义的值将被处理。
手动定义的值将覆盖先前加载的相同变量的所有值。 若仅使用静态值,且某些变量未找到对应值,则空值将被替换为空 context.variableName 字符串。
使用隐式上下文加载(tContextLoad)
如果Talend作业使用隐式 tContextLoad, ,上下文可从文件或数据库中加载。
- 文件
- 将文件从Talend复制到外部输入.zip文件中的文件夹
context。 您可以在 Tal end的项目设置 > 作业设置 > 隐式上下文加载中找到隐式上下文。 该ImplicitContext文件位于/inputs/talend/{connectionName}/context/ folder。 此示例展示了文件内容的结构:
<elementParameter field="FILE" name="IMPLICIT_TCONTEXTLOAD_FILE" value=""{path to the context}/contexts/onlyImplicit.txt""/> <elementParameter field="TEXT" name="FIELDSEPARATOR" value=""=>""/>
IMPLICIT_TCONTEXTLOAD_FILE 参数包含上下文文件的路径。 上下文文件的结构由键值对组成,各键值对以 => 分隔符分隔,例如:
first=>impl1
second=>impl2
path=>pathino
请勿修改上下文文件的内容。 将其复制到外部输入文件的 文件夹 context 中。
- 数据库
- 上下文值无法从数据库中加载。 在
contextReplacement.txt文件中手动添加值。
在 contextReplacement.txt 文件中手动添加值
使用 contextReplacement.txt 该文件手动添加上下文值。 请按以下格式组织文件内容:
[jobName/testing]
key=value
key2=value2
[jobName/production]
key=value5
key2=value
[jobName2/testing]
key=value
key2=value2
key3=58