2017-12-27 111 views
1

在水壶,又名Pentaho数据集成中,我读了一些与某些类别链接的产品的xls,并将它们插入到数据库中。水壶PDI:更好的查找和插入更新或插入更新+查找

关系类别 - 产品是1:n(一个类别具有更多产品,一个产品具有一个类别)。 我做插入的类别,然后插入产品。

案例1:

  1. 插入/更新类别(真的,我只能插入);
  2. 按代码查找分类并返回其他步骤中使用的id;

CASE 2:

  1. 查找类别由代码;
  2. 过滤器行:if(id> 0)然后转到其他步骤;否则转到步骤3;
  3. 插入类别和返回ID;

更好(更快/内存使用)情况1或情况2?

同样的选择适用于子类别,供应商和其他相关实体。

其实我使用案例1和pdi每秒处理4条记录,并且我有100k条记录的文件。

回答

0

我建议使用第二种方法,读取产品和每个产品使用Lookup steam找到产品的一个类别。

这种方式的原因在于它是人类思考的方式。还有那个。 Lookup stream(不是Lookup Database)非常优化。在某些情况下甚至比数据库离开加入更快。