如何让 talend (TMAP) 同时加载查找数据和传入数据

how to get talend (TMAP) to load lookup data and incoming data at the same time

我有一份 talend 工作,我需要查找目标 table。 自然目标 table 很大(事实 table)所以我不想在去 运行 查找之前等待加载整个东西,如下图所示:

有没有办法在从主要来源拉取期间进行查找? 尝试是加快初始加载速度,以便快速移动,并尝试节省内存。如您所见,查找已经超过 300 万行。

tLogRow 表示与查找相同的 table。

您可以通过将 tMap 中的查找配置为使用 "Reload at each row" 查找模型而不是 "Load Once" 来实现您正在查找的内容。此查找模型允许您为每个传入行重新执行查找查询,而不是一次加载所有查找 table,这对于大型 table 上的查找很有用。
当您 select 在每个行模型中重新加载时,您将必须在将出现在设置下的全局地图部分中指定一个查找键。创建一个名称类似于 "ORDER_ID" 的键,并将其映射到 FromExt.ORDER_ID 列。然后修改您的查找查询,使其 returns 成为 ORDER_ID 的单个匹配项,如下所示:
"SELECT col1, col1.. FROM lookup_table WHERE id = '" + (String)globalMap.get("ORDER_ID") + "'".
这是假设您的 id 列是一个字符串。
这样做是创建一个名为 "ORDER_ID" 的全局变量,其中包含来自主连接的每个传入行的订单 ID,然后针对该 ID 执行查找查询过滤。