Caching 缓存数据以在不同转换之间使用的最佳方法

Caching 缓存数据以在不同转换之间使用的最佳方法,caching,kettle,pentaho-data-integration,Caching,Kettle,Pentaho Data Integration,我有一个转换,可以从一个大型数据存储中读取数百万个ID 我想以某种方式将这些ID存储在列表或hashmap中 我还有十几个其他的转换。 每个转换都从其他不同的子数据存储中获取输入数据(ID) 我想做的是,在UDJC中,当我从子数据存储中获取id时,以某种方式检查每个id是否已经在mega id列表中 由于性能方面的原因,我不能每次转换都打电话给超级商店 如何创建/合并可在后续UDJC中使用的巨型ID列表 谢谢我在一次转换中将ID序列化为一个文件,并在随后的转换中将文件反序列化。您确定没有复制唯一

我有一个转换,可以从一个大型数据存储中读取数百万个ID

我想以某种方式将这些ID存储在列表或hashmap中

我还有十几个其他的转换。 每个转换都从其他不同的子数据存储中获取输入数据(ID)

我想做的是,在UDJC中,当我从子数据存储中获取id时,以某种方式检查每个id是否已经在mega id列表中

由于性能方面的原因,我不能每次转换都打电话给超级商店

如何创建/合并可在后续UDJC中使用的巨型ID列表


谢谢

我在一次转换中将ID序列化为一个文件,并在随后的转换中将文件反序列化。

您确定没有复制
唯一行(HasSet)
功能?emded数据库?例如,如果存在重复的风险,您确定不复制
UniqueRow的功能吗?步如果ID的数量非常大,请在
Unique行`前面使用
排序
,将值存储在tmp文件中(这与您的策略相同,但在这方面很难比Kettle更好)。此外,如果需要通过连接多个键来生成一个id,请使用组合查找/更新步骤。