2017-03-09 5 views
0

IoTシステムで作業する必要があります。基本的に、クラウドにデータを送信するセンサーと、ユーザーが属しているデータにアクセスすることができるセンサー。 データの量はかなり大きいので、セキュリティと負荷の両方をカバーするものを確保する必要があります。IoTとDynamoDB

データのタイプはかなり単純です。基本的には、指定した時刻のデータとその値です。

アイデアが持つテーブルを有し、このためDynamoDBのを使用することであった。

[id of sensor-array] 
[id of sensor] 
[type of measure] 
[value of measure] 
[date of measure] 

アイデアは、データベースに(Pythonで)直接データを置くためのIoTシステムのためでした。

私たちの質問は以下のとおりです。パフォーマンスの面で

    • DynamoDBのは、日常的に挿入の多くを扱うことができるようになります(私たちは何千もの挿入の百の話をすることができます毎分) ?
    • センサアレイのIDを指定してテーブルにクエリを実行すると、最小限の日付で効率的な方法でデータを取得できますか?
  1. このように進んでも問題ありませんか?

我々はMongoDBのようにNoSQLを使用するために使用されるので、我々は、データがかなり簡単な方法で配置されているように見えるDynamoDBの上で私たちの概念を適用するのは難しい見つけることです。

ありがとうございました。

答えて

0

DynamoDBは毎日多くの挿入を処理できます(1分あたりの挿入回数は100万回の可能性があります)。

はい、DynamoDBは、テーブルに設定したすべての書き込みスループットを維持し、コストをかけます。あなたのデータが小さいので、バッチ(BatchWriteItem)で書く前に集約する方がおそらく個々の書き込みよりもコスト効率がよいでしょう。

センサーアレイのIDと最小の日付を指定してテーブルにクエリを実行すると、効率的な方法でデータを取得できるようになりますか?

はい、ハッシュ(id)と範囲キー(日付)によるクエリは非常に効率的です。あなたはより複雑なクエリのためにセカンダリインデックスが必要かもしれません。

このように進んでも問題ありませんか?

データは転送中に暗号化されますが、client-side encryption is straightforwardは暗号化されていますが、ここでは多くの情報が公開されています。たとえば、AWS IoTは、他のセキュリティ機能の中でも、TLS相互authentication with certificates, IAM or Cognitoを提供します。 AWS IoTは、simple ruleを使用してDynamoDBにデータを格納できます。

関連する問題