簡體   English   中英

哪種NoSQL DB(Azure表,Document DB,Mongo DB或其他)適合用於大數據的數據分析報告?

[英]Which NoSQL DB (Azure Tables, Document DB, Mongo DB or others) is suitable for data analysis reports of Big Data?

我正在從事物聯網項目。 這樣,我們將從每台設備向數據庫發送每分鍾15KB的JSON文檔。 我想到了使用Azure DocumentDB。 我很少擔心Azure DocumentDB。

  1. 假設有5,000個IoT設備,我應該購買什么預期的RU?

  2. 當請求數量(說客戶數量增加到7000個)超過固定的請求單位數時,會導致應用程序運行緩慢嗎?

  3. 當我們在documentDB中執行長時間運行的查詢(如復雜報表)時會發生什么?

  4. 任何人都可以建議是否其他適合上述配置的NoSQL DB?

提前致謝

盡管沒有針對您使用哪個數據庫的客觀答案,但我可以使用Cosmos DB(在您的情況下為DocumentDB API,但適用於任何受支持的API)客觀地回答您的特定問題。

我必須購買什么預期的RU?

這將需要您進行一些基准測試,以確定要分配多少RU。 每個操作都在返回的標頭中返回RU成本。 基於該成本,您可以計算持續寫入工作負載所需的RU。 另外,如果將索引更改為使用延遲索引,而不是一致索引,則可以稍微降低每操作RU成本。

當請求數量(說客戶數量增加到7000個)超過固定的請求單位數時,會導致應用程序運行緩慢嗎?

通常,如果您超出分配的RU,則會在一段時間內受到限制。 因此,例如,如果您有1000 RU的設置,而在插入過程中消耗了3000 RU,則將被限制約2-3秒。

為了避免(或最小化)這種限制,您可以啟用每分鍾RU突發,這是10倍RU緩沖區(適用於60秒的間隔)。 在我以前的1000 RU的示例中,將為您提供10,000 RU的凈空,並在1分鍾的時間內分配。 這樣,如果您有瞬態RU尖峰使您超過分配的基准RU,則您將有備用的RU可以消耗,以防止節流。

當我們在documentDB中執行長時間運行的查詢(如復雜報表)時會發生什么?

不確定長時間運行的查詢的意思是什么,但是...就像我上面描述的那樣:如果消耗的資源超過您的RU /秒,則將在執行下一個查詢之前受到限制(除非您啟用了-分鍾RU)。

關於您的問題,大衛有所有答案。 我想稍微放大一下第四位。

恕我直言,你問錯了問題。 (NoSQL)DB僅用於存儲(順便說一句,為什么仍然限制為僅NoSQL存儲?)。 而是專注於您感興趣的分析,並深入研究提供這種類型的分析的服務,例如Azure Data Lake Analytics,Azure Stream分析等。如果您對所需的分析有清晰的了解,則更容易確定哪種Azure服務是最合適。

我建議寫下您的確切要求,然后考慮正確的存儲類型,並且不要將范圍僅限於NoSQL服務。 還有Azure數據倉庫和Azure Analysis Services,Blob存儲等。

Power BI或Azure Data Lake Analytics之類的分析工具可以處理多種類型的Azure DB和存儲

順便說一句,還有https://azure.microsoft.com/en-us/services/iot-hub/上可以找到的Azure IoT指南

編輯 :我知道這可能不是像Davids答案那樣以擴展方式解決所有問題的答案類型,但我認為要獲得正確的存儲類型,您需要知道需要執行哪種分析

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM