2013-02-05 42 views
0

使用mongoimport我可以导入多个外部实例的数据。mongoimport:附加源字段

mongoimport是否允许我添加一个字段,如source:“where-the-data-comes-from”到每个导入的文档?

I.e.如果我导入服务器A和B的数据,我想将源:“A”或来源:“B”存储到每个文档。

回答

4

不,但是,您可以从命令行执行此操作。通过运行

cat <(head -1 test.csv | tr "," "\n") <(echo source-a) > header.txt

创建一个文件 'header.txt' 包含,例如,(你可以从你现有的CSV创建此)header.txt应该是这样的:
field_a
field_b
.......
source

* note我在此文档中附加了一个“源”字段。 现在你可以运行命令(假设你已经使用sed安装)

sed 's/$/,source-a/' test.csv | mongoimport -d test-db -c test-cl --type csv --fieldFile header.txt

如果你已经有你的文档中的标题行,运行

sed '1d' test.csv | sed 's/$/,source-a/' | mongoimport -d test -c test --type csv --fieldFile header.txt代替 - 在“源-A”是你想用这个文件标签。 您可以在bash中轻松编写脚本,以便您只为每个导入作业提供源代码和csv。