Important
既存の MongoDB アプリケーションを移行するか、MongoDB クエリ言語 (MQL) 機能を使用しますか? Azure DocumentDB について考えてみましょう。
99.999% 可用性サービス レベル アグリーメント (SLA)、インスタント 自動スケール、および複数のリージョン間の自動フェールオーバーを使用した 大規模 なシナリオ向けのデータベース ソリューションをお探しですか? [c0]NoSQL 用に Azure Cosmos DB を検討してください。[c0]
最も基本的な操作の 1 つは、コレクションにデータを挿入することです。 このガイドでは、Mongo シェル (Mongosh) を使用したデータの挿入について理解する必要があることをすべて説明します。
1 つのドキュメントの挿入
MongoDB にデータを挿入する最も基本的な方法は、1 つのドキュメントを挿入することです。 これを行うには、db.collection.insertOne() メソッドを使用します。 insertOne() メソッドは、引数として 1 つのドキュメントを受け取り、指定したコレクションに挿入します。 このメソッドの使用方法の例を次に示します。
db.myCollection.insertOne({
name: "John Smith",
age: 30,
address: "123 Main St"
});
この例では、"name"、"age"、"address" のフィールドを含むドキュメントを "myCollection" コレクションに挿入しています。 コマンドが実行されると、出力に acknowledged: true と insertedId: ObjectId("5f5d5f5f5f5f5f5f5f5f5f5f") が表示されます。ここで、insertedId は、挿入されたドキュメントに対して MongoDB によって生成された一意の識別子です。
複数のドキュメントの挿入
多くの場合、複数のドキュメントを一度に挿入する必要があります。 これを行うには、db.collection.insertMany() メソッドを使用します。 insertMany() メソッドは、引数としてドキュメントの配列を受け取り、指定したコレクションに挿入します。 次に例を示します。
db.myCollection.insertMany([
{name: "Jane Doe", age: 25, address: "456 Park Ave"},
{name: "Bob Smith", age: 35, address: "789 Elm St"},
{name: "Sally Johnson", age: 40, address: "111 Oak St"}
]);
この例では、"myCollection" コレクションに 3 つのドキュメントを挿入しています。 各ドキュメントには、前の例と同じフィールドの "name"、"age"、"address" があります。 insertMany() メソッドは、acknowledged: true と insertedIds: [ObjectId("5f5d5f5f5f5f5f5f5f5f5f5f"), ObjectId("5f5d5f5f5f5f5f5f5f5f5f5f"), ObjectId("5f5d5f5f5f5f5f5f5f5f5f5f")] を返します。insertedIds は、挿入された各ドキュメントに対して MongoDB によって生成される一意の識別子の配列です。
オプションを使用した挿入
insertOne() と insertMany() はどちらも、省略可能な 2 番目の引数を受け取ります。これは、挿入操作のオプションを指定するために使用できます。 たとえば、"ordered" オプションを false に設定するには、次のコードを使用します。
db.myCollection.insertMany([
{name: "Jane Doe", age: 25, address: "456 Park Ave"},
{name: "Bob Smith", age: 35, address: "789 Elm St"},
{name: "Sally Johnson", age: 40, address: "111 Oak St"}
], {ordered: false});
これは、順序付けなしでドキュメントを挿入するよう MongoDB に指示します。つまり、1 つのドキュメントの挿入に失敗した場合、次のものに続みます。 これは、Cosmos DB for MongoDB の書き込みパフォーマンス向上のためにお勧めです
次のステップ
- Azure Cosmos DB for MongoDB と共に Studio 3T を使用する方法を学習します。
- Azure Cosmos DB for MongoDB と共に Robo 3T を使用する方法を学習します。
- Azure Cosmos DB for MongoDBと共に MongoDB のサンプルを確認します。
- Azure Cosmos DB への移行のための容量計画を実行しようとしていますか? 容量計画のために、既存のデータベース クラスターに関する情報を使用できます。
- 既存のデータベース クラスター内の仮想コアとサーバーの数のみがわかっている場合は、仮想コアまたは vCPU を使用した要求ユニットの見積もりに関するページを参照してください。
- 現在のデータベース ワークロードの標準的な要求レートがわかっている場合は、Azure Cosmos DB Capacity Planner を使用した要求ユニットの見積もりに関するページを参照してください。