AWS Athenaを使ってDynamoDBに結果を保存する
Writing results from an Athena query to Amazon DynamoDB
サマリー
Amazon S3、Athena、DynamoDBを使用して、エネルギー消費データを処理して顧客と共有する、エネルギー企業向けのIoT分析ソリューションについての記事。データはS3バケットにcsvで保存し、AthenaでSQLクエリを実行して分析され、DynamoDBに保存されて顧客がダッシュボードからアクセスできるようにする。この構成はエネルギー消費データを把握し、ユーザーと共有することを目的としている。
構成の流れ
電力メーターセンサーからのデータはAmazon S3バケットに取り込まれる。
この記事で紹介されている会社では、Amazon Athenaを使ってS3バケット内のファイルに対してSQLクエリを実行することで、特定のデータストアにデータを読み込むことなく、データの分析を行うことができます。
分析結果は、フルマネージドNoSQLデータベースである「Amazon DynamoDB」に格納されます。
DynamoDBに格納されたデータは、ダッシュボードからアクセスできるようになり、ユーザーは自分の電力消費量の統計を確認できるようになります。
メリット
ここからは考察です。
コスト
Amazon S3、Amazon Athena、Amazon DynamoDBの3つとも従量課金なので使った分のみが課金される
拡張性の高さ
s3はほぼ無制限にデータを保存することができ、Athenaはサーバーレスサービスなので、大量のクエリを処理するために自動的に拡張することができる。Dynamoは1日あたり10兆件以上のリクエストを処理でき、1秒あたり2000万件以上のピークに対応が可能。
セキュリティ
3つのサービスとも暗号化、アクセス制御、監視等のセキュリティを容易に実装できるため、一定の安全性が担保できる。
パフォーマンス
AthenaとDynamoDBを使うことで、データの分析やアクセスが簡単になります。Athenaは複雑なクエリを簡単に実行できるため、顧客の電力消費に関するインサイトを得ることができます。DynamoDBは、スケールに関係なく単一の数ミリ秒のパフォーマンスを提供するサーバーレスのキーバリュー型NoSQLデータベースで顧客はリアルタイムでデータにアクセスでき、パフォーマンスが低下することはありません。
デメリット
コスト
ほぼ全てがサーバーレスで構成されているため、リクエスト数が増えると請求料金が膨大に増えることがある。
アーキテクチャによる制限
拡張性や高いパフォーマンスを望めるDynamoDBですが複雑なリレーションやトランザクションには向いていないため、一部の構成には向いていません。
この記事が気に入ったらサポートをしてみませんか?