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 Word EC2インスタンスへの SSH 接続を作成して、ローカルマシンから Amazon DocumentDB に接続する場合は、「」を参照してください。 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. の検索バーで AWS Management Console IAM と入力し、表示されるドロップダウンメニューで 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 VPC ユーザーガイド」の「Amazon 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. [インスタンスクラス][t3.medium] を選択します。これは AWS 無料利用枠の対象となります。

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

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

  5. [接続]セクションで、以下を設定します。

    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 は VPC インスタンスと Amazon DocumentDB データベースの EC2 セキュリティグループを自動的に設定します。詳細については、「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. Amazon DocumentDB では、Encryption-in-transit はデフォルトで有効になっています。オプションで TLS を無効にすることができます。クラスターへの認証に必要な現在の証明書をダウンロードするには、[接続とセキュリティ] タブの [接続] セクションで、[クラスターへの認証に必要な Amazon DocumentDB 認証局 (CA) 証明書のダウンロード] で提供される接続文字列をコピーします。Amazon EC2 インスタンスに戻り、 コマンドを貼り付けます。

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

    MongoDB connection string for connecting to a DocumentDB クラスター using the mongo shell.

    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 クラスターを削除する