Mongoimportを使用してCSVをネストされた構造に読み込みますか?
-
26-10-2019 - |
質問
次のような構造を持つMongoドキュメントがあります。 { "foo": { "bar1": "val1", "bar2": "val2"} }
CSVからデータをインポートしたい mongoimport --type csv --headerline [...]
ネストされた構造に対処するためにCSVのフィールド名をフォーマットする方法がわかりません。例えば:
test.csv:
foo.bar1
example
戻り値 { "_id" : ObjectId("4e9d9d25c5d8708e1f51cdbc"), "foo.bar1" : "example" }
目的の出力の代わりに:
{ "_id" : ObjectId("4e9d9d25c5d8708e1f51cdbc"), "foo: {"bar1" : "example"} }
フィールド名は、その価値に関係なく、文字列として解釈されるようです。のようなもの foo[bar1]
と foo: {bar1}
逐語的にも使用されます。
解決
これは、Mongoimportの現在(v2.0)バージョンではサポートされていませんが、すぐに来るはずです。 V2.1が予定されているJiraチケットをご覧ください。
それまでは、CSVデータをJSONに翻訳できる場合は、使用できます mongoimport --type json
ネストされたデータをインポートします。
編集:この機能は現在リリースされており、から利用可能です 2.8.0-rc0
所属していません StackOverflow