BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース AmazonがAWS DynamoDBへTime to Live(TTL)機能を追加

AmazonがAWS DynamoDBへTime to Live(TTL)機能を追加

原文(投稿日:2017/03/18)へのリンク

最近のブログ記事で、AmazonはNoSQLデータベースサービスDynamoDBの変更を発表した。DynamoDBは、サービス内に保存するデータに対するTime to Live(TTL)の機能を提供する。時間ベースのしきい値に基づいてデータを削除することで、組織は、時間の経過とともに価値が低下するデータにかかるストレージコストを削減できる。

規模を拡張できるサーバレスのデータベースサービスのため、Ad Tech、Gaming、IoT、および低レイテンシのデータアクセスが必要なアプリケーションのユースケースに適用できる。 Amazonはユースケースの1つとしてLyftを挙げており、どのようにして、DynamoDBに移行してRide Location Tracking SystemのGPSデータを永続化するかを示している。

短時間のデータバーストが発生するアプリケーションを持つ組織が抱える課題は、データの保持である。乗り物の乗っている間にGPSデータを追跡することは非常に重要であるが、時間が経つにつれてその価値が失われ、そのデータを長期間保管している組織にはコスト負担が大きい。

新しいTTL機能を使用することにより、組織はしきい値を設定することで、有効期限に達すると自動的にデータを削除できる。AWSのチーフエバンジェリストであるJeff Barr氏は、TTL機能がどのように機能するかを説明している

アイテムの有効期限などのアイテム属性を指定して、テーブル単位でこの機能を有効にすることができます。属性を指定し、TTL管理を有効にすると(1回のAPI呼び出しで両方の操作を実施できる)、DynamoDBは期限切れのアイテムを見つけて削除します。この処理は、自動的にバックグラウンドで行われ、テーブルへの読み取りと書き込みトラフィックには影響を与えません。

開発者または管理者は、Unixエポックタイムシステムに基づいて数秒で解釈されるDynamoDB Numberフォーマットの値をAWS Management Consoleから与えることで、TTL属性を設定できます。 TTLしきい値は、update-time-to-liveコマンドを呼び出すか、コードからUpdateTimeToLive関数を呼び出すことにより、AWS Command Line Interface(CLI)から更新できます。

画像ソース: https://aws.amazon.com/blogs/aws/new-manage-dynamodb-items-using-time-to-live-ttl/

TTLのために期限切れになったアイテムをコールドストレージに移動したり、AWS LambdaとDynamoDB Triggersを使用して他のDynamoDBテーブルを更新することができる。 DynamoDBストリームを使用して、実際の削除を実施したり、あるいはアーカイブすることができる。

DynamoDB TTLを使用する際の注意点がある。

  • TTL属性は、新規または既存のテーブルに適用できるが、DynamoDBのNumber型でなければならないため、JSONドキュメントの要素で表現することはできない。
  • 管理者は、AWS Identity and Access Management(IAM)を通じてTTL属性へのアクセスを管理できる。
  • TTL属性の使用には、パフォーマンス上の不利益はない。スキャンと削除はバックグラウンドで行われる。
  • TTLの使用には追加料金はかからない。顧客は、アイテムが削除されるまで、そのアイテムが占有しているストレージを引き続き支払う。
  • TTL機能は、2017年2月27日時点で使用できる。

 

 
 

Rate this Article

Relevance
Style
 
 

この記事に星をつける

おすすめ度
スタイル

BT