在插入MongoDB之前删除Pentaho Kettle中的空列

时间:2014-03-04 15:32:53

标签: mongodb pentaho kettle

我首次使用Pentaho Kettle作为处理多个CSV文件的工具,然后再将它们插入MongoDB中。

由于MongoDB是无模式的,我没有看到保持CSV行的空列值的重点。我想从CSV

收到类似的内容
+------------+----------+---------+
|        _id | VALUE_1  | VALUE_2 |
+------------+----------+---------+
|        1   | 1        | 1       |
|        2   | 2        | null    |
|        3   | null     | 2       |
+------------+----------+---------+

然后将它插入到mongodb中,我将其放入其中:

 { "_id" : 1, "VALUE_1" : 1, "VALUE_2" : 1 }
 { "_id" : 2, "VALUE_1" : 2 }
 { "_id" : 3, "VALUE_2" : 2}

我怎么在水壶里做这样的事情?我似乎无法在那里找到正确的选项,有一个过滤行,但它似乎不是我想要的。

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题。我发现Matt Casters和Diethard Steiner的一项工作是取消数据转移,然后删除Null Rows。然后你可以回转并用javascript步骤或JSON输出写出JSON。与此类似:

http://diethardsteiner.blogspot.com/2010/11/pentaho-kettle-data-input-pivoted-data.html

这适用于小文件,但我有大型csv有30-100列和数十万行,在某些情况下有数百万。所以旋转很慢..但也许你可以提出另一个想法,我很高兴听到它! =)