Amazon DocumentDB の使用を開始する - Amazon DocumentDB

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon DocumentDB の使用を開始する

Amazon DocumentDB に接続して開始する方法は複数あります。このガイドを作成したのは、ユーザーにとって最も速く、最もシンプルで、最も簡単にドキュメントデータベースを使い始めることができる方法であることがわかったからです。このガイドでは、Amazon Elastic Compute Cloud (Amazon EC2) を使用して、Amazon DocumentDB クラスターを から直接接続してクエリを実行します AWS Management Console。 AWS 無料利用枠の対象となる新しいお客様は、Amazon DocumentDB と Amazon EC2 を無料で使用できます。Amazon EC2環境または Amazon DocumentDB クラスターが無料利用枠を超えるリソースを使用する場合、それらのリソースの通常の AWS 料金が課金されます。このガイドを読めば、Amazon DocumentDB を 15 分もかからずに使い始めることができます。

注記

このガイドの手順は、特に Amazon DocumentDB インスタンスベースのクラスターを作成して接続するためのものです。Amazon DocumentDB エラスティッククラスターを作成して接続する場合は、「Amazon DocumentDB エラスティッククラスターの開始方法」を参照してください。

Amazon EC2インスタンスへの接続を作成して、ローカルマシンから Amazon DocumentDB に接続する場合は、SSH「」を参照してください。 Amazon を使用して接続する EC2

前提条件

最初の Amazon DocumentDB クラスターを作成する前に、以下の操作を行う必要があります。

Amazon Web Services (AWS) アカウントを作成する

Amazon DocumentDB を使用する前に、Amazon Web Services (AWS) アカウントを持っている必要があります。 AWS アカウントは無料です。使用しているサービスとリソースに対してのみ料金をお支払いいただきます。

がない場合は AWS アカウント、次の手順を実行して作成します。

にサインアップするには AWS アカウント
  1. https://portal.aws.amazon.com/billing/サインアップ を開きます。

  2. オンラインの手順に従います。

    サインアップ手順の一環として、通話呼び出しを受け取り、電話キーパッドで検証コードを入力するように求められます。

    にサインアップすると AWS アカウント、 AWS アカウントのルートユーザー が作成されます。ルートユーザーには、アカウントのすべての AWS のサービス とリソースへのアクセス権があります。セキュリティのベストプラクティスとして、ユーザーに管理アクセスを割り当て、ルートユーザーのみを使用してルートユーザーアクセスが必要なタスクを実行してください。

必要な AWS Identity and Access Management (IAM) アクセス許可を設定します。

クラスター、インスタンス、クラスターパラメータグループなどの Amazon DocumentDB リソースを管理するためのアクセスには、リクエストの認証 AWS に使用できる認証情報が必要です。詳細については、「Amazon DocumentDB の Identity and Access Management」を参照してください。

  1. の検索バーIAMで AWS Management Console、表示されるドロップダウンメニューに と入力IAMして選択します。

  2. IAM コンソールに移動したら、ナビゲーションペインからユーザーを選択します。

  3. ユーザーネームを選択します。

  4. [アクセス許可の追加] ボタンをクリックします。

  5. [Attach existing policies directly ( 既存のポリシーを直接アタッチ )] を選択します。

  6. 検索バーに AmazonDocDBFullAccess と入力し、検索結果に表示されたら、それを選択します。

  7. [Next: レビュー] と表示されている青いボタンをクリックします。

  8. [アクセス許可の追加] となっている下の青いボタンをクリックします。

Amazon Virtual Private Cloud を作成する (Amazon VPC)

AWS アカウントには、各リージョンにデフォルトVPCが含まれています。このステップは、デフォルトの Amazon を使用する場合にのみ必要ですVPC。この場合、「Amazon ユーザーガイド」の「Amazon VPCトピックを作成する」のステップを完了します。 VPC

Amazon EC2インスタンスを起動する

Amazon Elastic Compute Cloud ユーザーガイドの「Amazon の使用開始EC2」トピックのステップ 1 と 2 を完了します。

ステップ 1: Amazon DocumentDB クラスターを作成する

このステップでは、Amazon DocumentDB クラスターを作成します。

  1. Amazon DocumentDB マネジメントコンソールで、[クラスター] の下にある [作成] を選択します。

    Empty Clusters dashboard with options to create a new クラスター and manage resources.
  2. 「Amazon DocumentDB クラスターの作成」ページの [クラスタータイプ] セクションで、[インスタンスベースのクラスタ] を選択します (これはデフォルトのオプションです)。

    クラスター type selection with Instance Based クラスター option highlighted and described.
  3. [Configuration] (設定) セクションで次を行います。

    1. クラスター識別子 には、 などの一意の名前を入力しますmydocdbcluster。コンソールは、入力方法に関係なく、すべてのクラスター名を小文字に変更することに注意してください。

    2. エンジンバージョン では、5.0.0 を選択します。

    3. インスタンスクラス の場合は、db.t3.medium を選択します。これは AWS 無料利用枠の対象となります。

    4. インスタンス数 で、インスタンスを 1 つ選択します。1 つのインスタンスを選択すると、コストを最小限に抑えることができます。これが本稼働システムの場合は、高可用性のために 3 つのインスタンスをプロビジョニングすることをお勧めします。

    Configuration form for a database クラスター with fields for identifier, version, instance class, and number.
  4. クラスターストレージ設定セクションで、Amazon DocumentDB Standard (これはデフォルトのオプションです) を選択します。

  5. Connectivity セクションで、次の操作を行います。

    1. EC2 コンピューティングリソースに接続する を選択します。

    2. EC2 インスタンス で、 で作成したEC2インスタンスを選択します前提条件

    Connectivity settings for database with options to connect or not connect to an EC2 compute resource.
  6. [認証] セクションに、サインイン認証情報を入力します。

    Authentication form with username and password fields, including input requirements.
  7. 他のすべてのオプションをデフォルトのままにして、クラスターの作成 を選択します。

注記

EC2 インスタンスと Amazon DocumentDB データベース間の接続を設定すると、Amazon DocumentDB はEC2インスタンスと Amazon DocumentDB データベースVPCのセキュリティグループを自動的に設定します。詳細については、「EC2 インスタンスとの自動接続の概要」を参照してください。

Amazon DocumentDB がクラスターをプロビジョニングしています。完了までに数分かかる場合もあります。クラスターとインスタンスのステータスの両方が使用可能な として表示されている場合は、クラスターに接続できます。

注記

クラスターのステータス値については、「Amazon DocumentDB のモニタリング」の章の「クラスターステータスの値」を参照してください。

インスタンスのステータス値については、「Amazon DocumentDB のモニタリング」の章の「インスタンスのステータス値」を参照してください。

ステップ 2: mongo シェルをインストールする

で作成した Amazon EC2インスタンスに mongo シェルをインストールします前提条件。mongo シェルは、Amazon DocumentDB クラスターを接続してクエリするために使用するコマンドラインユーティリティです。

Amazon EC2インスタンスに接続し、コマンドプロンプトで、次のコマンドを使用してリポジトリファイルを作成します。

echo -e "[mongodb-org-5.0] \nname=MongoDB Repository\nbaseurl=https://repo.mongodb.org/yum/amazon/2023/mongodb-org/5.0/x86_64/\ngpgcheck=1 \nenabled=1 \ngpgkey=https://pgp.mongodb.com/server-5.0.asc" | sudo tee /etc/yum.repos.d/mongodb-org-5.0.repo

完了したら、次のコマンドで mongo シェルをインストールします。

sudo yum install -y mongodb-org-shell

ステップ 3: Amazon DocumentDB クラスターに接続する

ステップ 2 でインストールした mongo シェルを使用して Amazon DocumentDB クラスターに接続します。

  1. Amazon DocumentDB マネジメントコンソールで、[クラスター] の下にあるお客様のクラスターを選択します。クラスター識別子をクリックして、作成したクラスターを選択します。

    DocumentDB クラスター management interface showing a regional クラスター with primary instance details.
  2. Encryption-in-transit は Amazon DocumentDB でデフォルトで有効になっています。オプションで を無効にすることができますTLS。クラスターへの認証に必要な現在の証明書をダウンロードするには、接続とセキュリティタブ Connect セクションの「クラスター への認証に必要な Amazon DocumentDB 認証局 (CA) 証明書をダウンロードする」で、提供されたコマンドをコピーします。Amazon EC2インスタンスに戻り、 コマンドを貼り付けます。

    Command to download Amazon DocumentDB Certificate Authority (CA) certificate for クラスター authentication.
  3. Amazon DocumentDB コンソールのクラスターに戻り、[接続とセキュリティ] タブの [接続] セクションの [mongo シェルでこのクラスターに接続する] で、提供された接続文字列をコピーします。<insertYourPassword> のコピーを省略すると、接続時に mongo シェルからパスワードの入力を求められます。

    Mongo shell connection command with host, port, SSL, and authentication details.

    Amazon EC2インスタンスに戻り、接続文字列を貼り付けます。

パスワードを入力してプロンプトが になるとrs0:PRIMARY>、Amazon DocumentDB クラスターに正常に接続されます。

注記

トラブルシューティングについては、「Amazon DocumentDB のトラブルシューティング」を参照してください。

ステップ 4: データを挿入してクエリする

クラスターに接続できたので、いくつかのクエリを実行して、ドキュメントデータベースの使用に慣れることができます。

  1. 1 つのドキュメントを挿入するには、次のように入力します。

    db.collection.insert({"hello":"DocumentDB"})
  2. 次の出力が返ります。

    WriteResult({ "nInserted" : 1 })
  3. findOne() コマンドで書き込んだドキュメントを読み取ることができます (一つのドキュメントしか返さないため)。以下を入力します。

    db.collection.findOne()
  4. 次の出力が返ります。

    { "_id" : ObjectId("5e401fe56056fda7321fbd67"), "hello" : "DocumentDB" }
  5. さらにいくつかのクエリを実行するには、ゲームプロファイルのユースケースを検討してください。まず、「profiles」というタイトルのコレクションにエントリをいくつか挿入します。以下を入力します。

    db.profiles.insertMany([ { "_id" : 1, "name" : "Matt", "status": "active", "level": 12, "score":202}, { "_id" : 2, "name" : "Frank", "status": "inactive", "level": 2, "score":9}, { "_id" : 3, "name" : "Karen", "status": "active", "level": 7, "score":87}, { "_id" : 4, "name" : "Katie", "status": "active", "level": 3, "score":27} ])
  6. 次の出力が返ります。

    { "acknowledged" : true, "insertedIds" : [ 1, 2, 3, 4 ] }
  7. find() コマンドを使用して、プロファイルコレクション内のすべてのドキュメントを返します。以下を入力します。

    db.profiles.find()
  8. ステップ 5 で入力したデータに一致する出力が得られます。

  9. フィルターを使用して 1 つのドキュメントに対して1つのクエリを使用します。以下を入力します。

    db.profiles.find({name: "Katie"})
  10. この出力を返す必要があります。

    { "_id" : 4, "name" : "Katie", "status": "active", "level": 3, "score":27}
  11. それでは、プロファイルを探して、それを findAndModify コマンドで変更してみましょう。次のコードを使用して、ユーザー Matt に10 ポイント追加します。

    db.profiles.findAndModify({ query: { name: "Matt", status: "active"}, update: { $inc: { score: 10 } } })
  12. 次のような出力が得られます (Mattのスコアはまだ上がっていないことに注意してください) 。

    { "_id" : 1, "name" : "Matt", "status" : "active", "level" : 12, "score" : 202 }
  13. 次のクエリを使用して、Matt のスコアが変更されたことを確認できます。

    db.profiles.find({name: "Matt"})
  14. 次の出力が返ります。

    { "_id" : 1, "name" : "Matt", "status" : "active", "level" : 12, "score" : 212 }

ステップ 5: 探索

お疲れ様でした。Amazon DocumentDB 入門ガイドを正常に完了しました。

次のステップ このデータベースを一般的な機能の一部を使用して、完全に活用する方法を学びましょう。

注記

この入門演習で作成したクラスターは、削除しない限り、引き続きコストを計上します。手順については、以下を参照してください。Amazon DocumentDB クラスターを削除する