Dynamodb-overview
提供:Dev Guides
DynamoDB-概要
DynamoDBを使用すると、ユーザーは任意の量のデータを保存および取得し、任意の量のトラフィックを処理できるデータベースを作成できます。 各顧客の要求を動的に管理するためにサーバーにデータとトラフィックを自動的に分散し、高速なパフォーマンスも維持します。
DynamoDB対 RDBMS
DynamoDBはNoSQLモデルを使用します。つまり、非リレーショナルシステムを使用します。 次の表は、DynamoDBとRDBMSの違いを強調しています-
Common Tasks | RDBMS | DynamoDB |
---|---|---|
Connect to the Source | It uses a persistent connection and SQL commands. | It uses HTTP requests and API operations |
Create a Table | Its fundamental structures are tables, and must be defined. | It only uses primary keys, and no schema on creation. It uses various data sources. |
Get Table Info | All table info remains accessible | Only primary keys are revealed. |
Load Table Data | It uses rows made of columns. | In tables, it uses items made of attributes |
Read Table Data | It uses SELECT statements and filtering statements. | It uses GetItem, Query, and Scan. |
Manage Indexes | It uses standard indexes created through SQL statements. Modifications to it occur automatically on table changes. | It uses a secondary index to achieve the same function. It requires specifications (partition key and sort key). |
Modify Table Data | It uses an UPDATE statement. | It uses an UpdateItem operation. |
Delete Table Data | It uses a DELETE statement. | It uses a DeleteItem operation. |
Delete a Table | It uses a DROP TABLE statement. | It uses a DeleteTable operation. |
利点
DynamoDBの2つの主な利点は、スケーラビリティと柔軟性です。 特定のデータソースと構造の使用を強制することはなく、ユーザーは事実上あらゆるものを操作できますが、統一された方法で操作できます。
また、その設計は、より軽いタスクや操作から要求の厳しいエンタープライズ機能に至るまで、幅広い使用をサポートしています。 また、Ruby、Java、Python、C#、Erlang、PHP、Perlなどの複数の言語を簡単に使用できます。
制限事項
DynamoDBには特定の制限がありますが、これらの制限は必ずしも大きな問題を生み出したり、堅実な開発を妨げるものではありません。
あなたは次の点からそれらを確認することができます-
- 容量単位サイズ-読み取り容量単位は、4KB以下のアイテムの1秒あたりの単一の一貫した読み取りです。 書き込みキャパシティーユニットは、1KB以下のアイテムに対する1秒あたり1回の書き込みです。
- プロビジョニングされたスループットの最小/最大-すべてのテーブルとグローバルセカンダリインデックスには、少なくとも1つの読み取りキャパシティーユニットと1つの書き込みキャパシティーユニットがあります。 最大値は地域によって異なります。 米国では、テーブルごとに40Kの読み取りと書き込みの上限(アカウントごとに80K)が残り、他の地域ではテーブルごとに10Kの上限があり、アカウントの上限は20Kです。
- プロビジョニングされたスループットの増加と減少-これは必要に応じて何度でも増加できますが、減少はテーブルごとに1日4回までに制限されています。
- 表のサイズとアカウントごとの数量-表のサイズに制限はありませんが、より高い上限を要求しない限り、アカウントには256の表の制限があります。
- テーブルごとのセカンダリインデックス-5つのローカルおよび5つのグローバルが許可されています。
- テーブルごとのセカンダリインデックス属性の予測-DynamoDBでは20の属性を使用できます。
- パーティションキーの長さと値-最小長は1バイト、最大長は2048バイトですが、DynamoDBは値に制限を設けていません。
- キーの長さと値の並べ替え-テーブルのローカルセカンダリインデックスを使用しない限り、最小長は1バイト、最大長は1024バイトです。値に制限はありません。
- テーブルおよびセカンダリインデックス名-名前は、長さが最低3文字、最高255文字に準拠する必要があります。 A〜Z、a〜z、0〜9、「_」、「-」、「。」の文字を使用します。
- 属性名-キーと特定の属性を除き、1文字が最小のまま、最大64KBが残ります。
- 予約語-DynamoDBは予約語を名前として使用することを妨げません。
- Expression Length -式の文字列には4KBの制限があります。 属性式には255バイトの制限があります。 式の置換変数には2MBの制限があります。