問題タブ [mongoimport]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mongodb - 文字列_idとupsertを持つMongoimportcsvファイル
mongoimportを使用して、_idの文字列値でデータをアップサートしようとしています。IDは(引用符で囲まれていても)整数のように見えるため、mongoimportはそれらを整数として扱い、既存のレコードをアップサートする代わりに新しいレコードを作成します。
私が実行しているコマンド:
mongoimport --host localhost --db database --collection my_collection --type csv --file mydata.csv --headerline --upsert
mydata.csvのサンプルデータ:
{ "_id" : "0364", someField: "value" }
その結果、mongo{ "_id" : 364, someField: "value" }
は_idでレコードを更新する代わりに、次のようなレコードを挿入し"0364"
ます。
誰かがそれ_id
を文字列として扱うようにする方法を知っていますか?
動作しないもの:
- データを二重引用符""0364 ""、二重引用符および一重引用符"'0364'"または'"0364"'で囲みます。
- 空の文字列を値に追加します:
{ "_id" : "0364" + "", someField: "value" }
mongodb - mongoimportとmongoシェルを使用して1970年より前の日付値をロードする
json に変換したデータがいくつかあるので、mongodb にインポートできます。
一部のドキュメントでは、1970 年より前の日付フィールドが必要です。そのため、本質的に次のようにしてドキュメントをテストしました。
と 2 つのドキュメントが挿入されました。
ただし、mongoimport を使用して同じドキュメントを読み込もうとすると、次のようになります。
ここまでは順調ですね ...
同じ日付に対していくつかの構文を試しましたが、これらすべての形式で同じ結果が得られました。
- {"日付": 新しい日付(-2174520376)}
- {"日付": 新しい日付 (1901,2,3,22,33,44,000)}
- {"date": new Date("1901 年 2 月 3 日 22:33:44")
テスト システムは、10gen RPM リポジトリの mongo-10gen-2.0.6-mongodb_1.x86_64 および mongo-10gen-server-2.0.6-mongodb_1.x86_64 で CentOS 64Bit を実行します。
これをどのように解決しますか?それとも、これは報告されるべき mongoimport のバグですか?
mongodb - MongoDb挿入(Perlドライバー)とmongoimportの不一致
Perl (MongoDb を使用) と mongoinsert からデータを挿入する mongo のコレクションがあります。問題は、数値のデータ型が一貫しなくなることです。
たとえば、Perl から次のようにします。
そして、mongoimport でインポートする JSON ファイルがあり、次の行が含まれています。
コレクションを検索すると、次のようになります。
Perl ドライバーに _id を 32 ビットの数値として強制的に挿入させる方法はありますか? またはmongoimportを強制して、64ビット(NumberLong)として書き込むには?
_id フィールドの一貫性を保つ方法について他に提案はありますか?
json - mongoimportを使用して複数のjsonファイルをインポートします
あるサーバーから別のサーバーにファイルをインポートするのは初めてでmongodb
、知りたいです。json
次のコマンドを試しましたが、mongoimport -d test -c bik check.json
問題なく動作します。json
複数のファイルがある場合、一度にすべてをインポートするにはどうすればよいか知りたいです。私はそれが書かれている関連文書を見つけることができませんでしたこれは不可能です。これが可能であり、どのように私を助けてください
json - mongoimport で JSON をアップサートできません
JSON を使用して、mongo コレクションにバッチ アップサートしたいと考えています。
しかし、mongo シェルで使用する構文を使用すると、次の結果が得られます。
中括弧なしで試してみると、エラーは発生しませんが、テーブルは変更されません。
どこでも検索しましたが、JSON を使用した例が見つかりません。助けてください!
ruby-on-rails - mongodbアイデアでのデータベースのインポートとエクスポート
私はタイプする
ターミナルでは、mongodbに接続します。私はそこに多くのデータベースとコレクションを持っています。エクスポートしたい
とそのコレクション
新しいフォルダのデスクトップに。そのフォルダをコピーして別のコンピュータに貼り付けることで、それをインポートしたい
とそのコレクション。今私がタイプするとき
その後、あるはずです
私の2台目のコンピューターで。これどうやってするの。私もmongodumpを使用しています。誰かが私にアイデアを与えることができますか?
mongodb - mongoDB mongoimportエラー..取得ファイルが存在しないエラー
私はMongodbの初心者です。mongoimport しようとすると、以下のエラーが発生します。
私は c:\mongo\data\db\mongo.csv にファイルを置いています ... 誰でも助けてくれますか?
mongodb - long 値を mongodb にインポートする
NumberLong
を使用して MongoDBにインポートするにはどうすればよいmongoimport
ですか?
残念ながら、json ファイルに次のようなエントリがあると、エラーが発生します。
結果:
python - Pythonを使用してCSVをmongoimport対応のJSONに変換する
Geonames.orgからの300万行に相当する都市情報を含む300mbのCSVがあります。このCSVをJSONに変換して、mongoimportを使用してMongoDBにインポートしようとしています。JSONが必要な理由は、地理空間インデックスで使用する文字列ではなく、「loc」フィールドを配列として指定できるためです。CSVはUTF-8でエンコードされています。
CSVのスニペットは次のようになります。
mongoimportで機能する目的のJSON出力(文字セットを除く)は次のとおりです。
利用可能なすべてのオンラインCSV-JSONコンバーターを試しましたが、ファイルサイズが原因で機能しません。私が得た最も近いものは、ドキュメント間の開始ブラケットと終了ブラケット、およびコンマを削除した後にMongoDbにインポートするMr Data Converter (上の写真のもの)でした。残念ながら、そのツールは300MBのファイルでは機能しません。
上記のJSONはUTF-8でエンコードされるように設定されていますが、それでも文字セットの問題があります。おそらく変換エラーが原因ですか?
私は過去3日間、Pythonの学習、Python CSVKITの使用、スタックオーバーフローでのすべてのCSV-JSONスクリプトの試行、MongoDBへのCSVのインポート、配列への「loc」文字列の変更(残念ながら引用符は保持されます)、さらには手動での試行にも費やしました。一度に30,000レコードをコピーして貼り付けます。多くのリバースエンジニアリング、試行錯誤など。
上記のCSVのように適切なエンコーディングを維持しながら、上記のJSONを実現する方法を知っている人はいますか?私は完全に停止しています。
performance - 時間の経過とともに mongoimport のパフォーマンスが低下する
MongoDB データベースにmongoimport
いくつかのファイルをインポートするために使用しています。json
それぞれ約 2M のドキュメントを含む 5 つのファイルがあり、コレクションには 4 つの通常のインデックスと 2 つのマルチキーがあります。
最初のファイルのインポートを開始すると、1 秒あたり最大 500 個のドキュメントが挿入されますが、しばらくするとパフォーマンスが低下し始めます。現在、3 番目のファイルをインポートしていますが、スループットは 1 秒あたり 50 ドキュメント未満です。コレクションのサイズが大きくなると、インポートが低下するようです。どうしたの?どうすればこれを改善できますか?