

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

# の使用 DynamoDB
<a name="examples-dynamodb"></a>

[DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Introduction.html) は、高速で予測可能なパフォーマンスとシームレスなスケーラビリティを特長とするフルマネージド NoSQL データベースサービスです。このセクションでは、 AWS SDK for Java 2.x を使用して DynamoDB を使用する方法について説明します。

## DynamoDB クライアントの選択
<a name="ddb-clients-overview"></a>

SDK には、DynamoDB を使用するための 2 つの主なアプローチがあります。

低レベルクライアント (`DynamoDbClient`)  
DynamoDB オペレーションへの直接アクセスを提供し、リクエストとレスポンスを完全に制御します。詳細な制御が必要な場合や動的スキーマを使用する場合は、このクライアントを使用します。

拡張クライアント (`DynamoDbEnhancedClient`)  
Java オブジェクトと DynamoDB 項目間の自動マッピングによるオブジェクト指向プログラミングを提供します。また、固定スキーマに従わない JSON のようなデータを使用するための、ドキュメント指向の機能も提供します。明確に定義されたデータモデルまたはドキュメントタイプのデータを使用する場合は、このクライアントを使用します。

## DynamoDB クライアントの設定
<a name="ddb-configuration-setup"></a>

DynamoDB を使用する前に、最適なパフォーマンスと信頼性を実現するようにクライアントを設定します。

### DynamoDB の再試行動作について
<a name="ddb-retry-behavior"></a>

DynamoDB クライアントは、デフォルトの最大再試行回数である 8 を使用します。これは他の AWS のサービス クライアントよりも多い回数です。この再試行回数の多さは、DynamoDB の分散性および一時的な容量制限に対処するために役立ちます。再試行戦略についての詳細は、「[で再試行動作を設定する AWS SDK for Java 2.x](retry-strategy.md)」を参照してください。

### アカウントベースのエンドポイントでのパフォーマンス最適化
<a name="ddb-account-based-endpoints-v2"></a>

DynamoDB は[AWS 、アカウント ID を使用してリクエストのルーティングを合理化することで、パフォーマンスを向上させるアカウントベースのエンドポイント](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Programming.SDKOverview.html#Programming.SDKs.endpoints)を提供します。 AWS 

この機能を使用するには、 AWS SDK for Java 2.xのバージョン 2.28.4 以降が必要です。[Maven Central リポジトリ](https://central.sonatype.com/artifact/software.amazon.awssdk/bom/versions)で最新バージョンを検索できます。サポートされている SDK バージョンでは、新しいエンドポイントが自動的に使用されます。

アカウントベースのルーティングをオプトアウトするには、次のいずれかのオプションを選択します。
+ `AccountIdEndpointMode` を `DISABLED` に設定して DynamoDB サービスクライアントを設定する。
+ 環境変数を設定する。
+ JVM システムプロパティを設定する。
+ 共有 AWS 設定ファイル設定を更新します。

次の例は、DynamoDB サービスクライアントを設定してアカウントベースのルーティングを無効にする方法を示しています。

```
DynamoDbClient.builder()
                 .accountIdEndpointMode(AccountIdEndpointMode.DISABLED)
                 .build();
```

その他の設定オプションの詳細については、「SDK およびツールリファレンスガイド」の[「アカウントベースのエンドポイント](https://docs.aws.amazon.com/sdkref/latest/guide/feature-account-endpoints.html)」を参照してください。 AWS SDKs 

## このトピックで扱う内容
<a name="ddb-topics-overview"></a>

以下のセクションでは、DynamoDB を使用する方法を示します。
+ [DynamoDB のテーブルの操作](examples-dynamodb-tables.md) - テーブルの作成、記述、更新、削除
+ [で項目を操作する DynamoDB](examples-dynamodb-items.md) - 個々の項目の追加、取得、更新
+ [を使用して Java オブジェクトを DynamoDB 項目にマッピングする AWS SDK for Java 2.x](dynamodb-enhanced-client.md) - 拡張クライアントでのオブジェクトマッピングとドキュメント指向データの使用

その他の DynamoDB コード例については、[「 コード例ライブラリ」のDynamoDB ](java_dynamodb_code_examples.md) AWS コード例」を参照してください。