今回はAzure Storageの「テーブルストレージ」について、概要をご案内していきます。
※Azure Storageの概要はこちらをご参照ください。
テーブルストレージは、RDBにおける「テーブル」とは構造が異なるストレージであり、クラウドで広く利用されている「分散Key-Valueストア」です。
-グーグルが提供する「Bigtable」
-Amazonが提供する「DynamoDB」
が代表的な類似製品といえます。
テーブルストレージは、99.9% の SLA が提供される、可用性に優れたマネージ サービスです。
Azureでは、RDBのSQL Databaseのサービスもあります。
次にテーブルストレージを検討したほうが良いケースを記載致します。
テーブルストレージの利用を検討したほうが良いケース
・アプリケーションで、コストを抑えつつ非常に大きい (テラバイト単位で表される) データ ボリュームを格納する必要がある場合。
・アプリケーションで大規模なデータセットを格納および取得し、サーバー側の結合、セカンダリ インデックス、または複雑なサーバー側ロジックを要求する複雑なリレーションシップがない場合。
・一様でないオブジェクト、デザイン時に既知でない可能性がある構造を格納する柔軟なデータ スキーマをアプリケーションが必要とする場合。
・ビジネス上、特定の準拠のニーズに合わせるために地理的な場所をまたぐ災害復旧機能が必要になる場合。 テーブルは、同じ大陸の何百キロも離れた 2 つのデータ センター間で地理分散されます。
・シャーディングまたはパーティション分割のロジックを実行する必要なく 150 GB を超えるデータを格納する必要がある場合。
・データセットを手動でシャーディングする必要なく高レベルのスケーリングを実現する必要がある場合。
※シャーディングとは,データを複数のサーバに分散させる機能のことをいいます。
テーブルストレージで提供される基本的な機能
データのリレーションシップ |
いいえ テーブル ストレージにはデータ間のリレーションシップを表す方法が用意されていません。テーブルのスキーマのない性質を使用して必須の形式でデータを構成すると、単純なリレーションシップを取得できます。 |
---|---|
サーバー側の処理 |
いいえ insert、update、delete、select などの基本操作はサポートされますが、結合、外部キー、ストアド プロシージャ、トリガー、またはストレージ エンジン側の処理はサポートされません。 |
トランザクションのサポート | 限定的 |
地理分散 | はい |
テーブル スキーマ | 緩和されている |
スケールアウト | 自動 |
テーブルストレージの料金
料金はこちらを参照願います。
いかがでしたでしょうか?
次回はAzure Storageのその他のサービスについてご案内致します。
次回もお楽しみに!!