我首次使用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}
我怎么在水壶里做这样的事情?我似乎无法在那里找到正确的选项,有一个过滤行,但它似乎不是我想要的。
答案 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列和数十万行,在某些情况下有数百万。所以旋转很慢..但也许你可以提出另一个想法,我很高兴听到它! =)