翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
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 アカウント
https://portal.aws.amazon.com/billing/ サインアップ
を開きます。 オンラインの手順に従います。
サインアップ手順の一環として、通話呼び出しを受け取り、電話キーパッドで検証コードを入力するように求められます。
にサインアップすると AWS アカウント、 AWS アカウントのルートユーザー が作成されます。ルートユーザーには、アカウントのすべての AWS のサービス とリソースへのアクセス権があります。セキュリティのベストプラクティスとして、ユーザーに管理アクセスを割り当て、ルートユーザーのみを使用してルートユーザーアクセスが必要なタスクを実行してください。
- 必要な AWS Identity and Access Management (IAM) アクセス許可を設定します。
-
クラスター、インスタンス、クラスターパラメータグループなどの Amazon DocumentDB リソースを管理するには、 AWS がリクエストの認証に使用できる認証情報が必要です。詳細については、「Amazon DocumentDB の Identity and Access Management」を参照してください。
-
の検索バーで AWS Management Console IAM と入力し、表示されるドロップダウンメニューで IAM を選択します。
-
IAM コンソールに移動したら、ナビゲーションペインからユーザーを選択します。
-
ユーザーネームを選択します。
-
[アクセス許可の追加] ボタンをクリックします。
-
[Attach existing policies directly ( 既存のポリシーを直接アタッチ )] を選択します。
-
検索バーに
AmazonDocDBFullAccess
と入力し、検索結果に表示されたら、それを選択します。 -
[Next: レビュー] と表示されている青いボタンをクリックします。
-
[アクセス許可の追加] となっている下の青いボタンをクリックします。
-
- 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 クラスターを作成します。
-
Amazon DocumentDB マネジメントコンソールで、[クラスター] の下にある [作成] を選択します。
-
「Amazon DocumentDB クラスターの作成」ページの [クラスタータイプ] セクションで、[インスタンスベースのクラスタ] を選択します (これはデフォルトのオプションです)。
-
[Configuration] (設定) セクションで次を行います。
[クラスター識別子] には、
mydocdbcluster
などの一意の名称を入力します。コンソール操作では、入力方法に関係なくクラスター名のすべての文字が小文字に変換されることにご留意ください。[エンジンバージョン] で、[5.0.0] を選択します。
[インスタンスクラス] で [t3.medium] を選択します。これは AWS 無料利用枠の対象となります。
[インスタンスの数] は、[1] を選択します。1 つのインスタンスを選択すると、コストを最小限に抑えることができます。これが本稼働システムの場合は、高可用性のために 3 つのインスタンスをプロビジョニングすることをお勧めします。
-
[クラスターストレージ設定]セクションでは、[Amazon DocumentDB 標準] (デフォルトのオプションです) を選択します。
-
[接続]セクションで、以下を設定します。
EC2 コンピューティングリソースに接続するを選択します。
EC2 インスタンス で、 で作成した EC2 インスタンスを選択します前提条件。
-
[認証] セクションに、サインイン認証情報を入力します。
-
他のすべてのオプションはデフォルトのままにして、[クラスターの作成] を選択します。
注記
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 クラスターに接続します。
-
Amazon DocumentDB マネジメントコンソールで、[クラスター] の下にあるお客様のクラスターを選択します。クラスター識別子をクリックして、作成したクラスターを選択します。
-
Amazon DocumentDB では、Encryption-in-transit はデフォルトで有効になっています。オプションで TLS を無効にすることができます。クラスターへの認証に必要な現在の証明書をダウンロードするには、[接続とセキュリティ] タブの [接続] セクションで、[クラスターへの認証に必要な Amazon DocumentDB 認証局 (CA) 証明書のダウンロード] で提供される接続文字列をコピーします。Amazon EC2 インスタンスに戻り、 コマンドを貼り付けます。
-
Amazon DocumentDB コンソールの接続とセキュリティタブの Connect セクションの mongo シェルを使用してこのクラスターに接続する で、提供された接続文字列をコピーしてクラスターに戻ります。
<insertYourPassword>
のコピーを省略すると、接続時に mongo シェルからパスワードの入力を求められます。Amazon EC2 インスタンスに戻り、接続文字列を貼り付けます。
パスワードを入力して、プロンプトが rs0:PRIMARY>
に変わったら、Amazon DocumentDB クラスターに正常に接続できています。
注記
トラブルシューティングについては、「Amazon DocumentDB のトラブルシューティング」を参照してください。
ステップ 4: データの挿入とクエリ
クラスターに接続できたので、いくつかのクエリを実行して、ドキュメントデータベースの使用に慣れることができます。
-
1 つのドキュメントを挿入するには、次のように入力します。
db.collection.insert({"hello":"DocumentDB"})
-
次の出力が返ります。
WriteResult({ "nInserted" : 1 })
-
findOne()
コマンドで書き込んだドキュメントを読み取ることができます (一つのドキュメントしか返さないため)。以下を入力します。db.collection.findOne()
-
次の出力が返ります。
{ "_id" : ObjectId("5e401fe56056fda7321fbd67"), "hello" : "DocumentDB" }
-
さらにいくつかのクエリを実行するには、ゲームプロファイルのユースケースを検討してください。まず、「
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} ])
-
次の出力が返ります。
{ "acknowledged" : true, "insertedIds" : [ 1, 2, 3, 4 ] }
-
find()
コマンドを使用して、プロファイルコレクション内のすべてのドキュメントを返します。以下を入力します。db.profiles.find()
-
ステップ 5 で入力したデータに一致する出力が得られます。
-
フィルターを使用して 1 つのドキュメントに対して1つのクエリを使用します。以下を入力します。
db.profiles.find({name: "Katie"})
-
この出力を返す必要があります。
{ "_id" : 4, "name" : "Katie", "status": "active", "level": 3, "score":27}
-
それでは、プロファイルを探して、それを
findAndModify
コマンドで変更してみましょう。次のコードを使用して、ユーザー Matt に10 ポイント追加します。db.profiles.findAndModify({ query: { name: "Matt", status: "active"}, update: { $inc: { score: 10 } } })
-
次のような出力が得られます (Mattのスコアはまだ上がっていないことに注意してください) 。
{ "_id" : 1, "name" : "Matt", "status" : "active", "level" : 12, "score" : 202 }
-
次のクエリを使用して、Matt のスコアが変更されたことを確認できます。
db.profiles.find({name: "Matt"})
-
次の出力が返ります。
{ "_id" : 1, "name" : "Matt", "status" : "active", "level" : 12, "score" : 212 }
ステップ 5: 使ってみる
お疲れ様でした。Amazon DocumentDB 入門ガイドを正常に完了しました。
次のステップ このデータベースを一般的な機能の一部を使用して、完全に活用する方法を学びましょう。
注記
この入門演習で作成したクラスターは、削除しない限り、引き続きコストを計上します。手順については、以下を参照してください。Amazon DocumentDB クラスターを削除する。