2017-03-09 68 views
0

我們必須在物聯網系統上工作。基本上傳感器向雲發送數據,並且用戶能夠訪問屬於他們的數據。 數據量可能相當大,因此我們需要確保涵蓋安全和重負載的內容。物聯網和DynamoDB

數據的類型學是非常簡單的,基本上在指定的時間數據和它的值。

的想法是使用DynamoDB爲此,具有與表:

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

的想法是爲的IoT系統直接放(在python)數據到數據庫中。

我們的問題是:

  1. 在性能方面:

    • 將DynamoDB能夠處理大量插入的日常基礎上(我們可以談論成千上萬插入的百分之一每分鐘) ?
    • 確實通過給傳感器陣列的id和最小日期將確保能夠以有效的方式來檢索數據查詢表?
  2. 就安全性而言,可以採用這種方式嗎?

我們以前使用的NoSQL MongoDB的一樣,所以我們發現很難應用在DynamoDB我們的概念,其中的數據似乎被安排在一個非常簡單的方式。

謝謝。

回答

0

DynamoDB能夠每天處理大量的插入操作(我們可能會說每分鐘插入數百次)?

是的,DynamoDB將維持(並降低)爲表格提供的所有寫入吞吐量。由於您的數據很小,因此在批量編寫之前進行彙總(BatchWriteItem)可能比單個寫入更具成本效益。

通過給出傳感器數組的ID來確定查詢表,並且最小日期將確保能夠以有效的方式檢索數據?

是,通過散列(ID)和量程鍵(日期)查詢將是非常有效的。儘管您可能需要更復雜的查詢的二級索引。

在安全性方面是好採用這種方式?

雖然數據在傳輸過程中加密,client-side encryption is straightforward,這裏有很多發現。例如,除了其他安全功能外,AWS IoT還提供了TLS互相authentication with certificates, IAM or Cognito。 AWS IoT可以使用simple rule將數據存儲在DynamoDB中。