日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

「物聯網架構」在物聯網應用使用關系數據庫還是NoSQL?

 

物聯網數據很復雜,需要多個用戶訪問,所以不要犯創建數據孤島的錯誤。

幾乎在每個行業,都有一個由物聯網數據驅動的數字化轉型正在進行中。重要的是要認識到物聯網不是關于事物的;而是那些東西創造和收集的數據。組織依靠這些數據提供更好的用戶體驗,做出更明智的業務決策,并最終推動其增長。

然而,如果沒有一個可靠的數據庫來處理物聯網設備產生的大量數據,這一切都是不可能的。關系數據庫以靈活、易于使用和成熟而聞名。它們并不特別出名的是規模,這促使了NoSQL數據庫的創建。你可能知道也可能不知道,有一些方法可以克服這個缺點。

另一件需要注意的事情是,物聯網數據本質上是時間序列。通過使用像TimescaleDB這樣的時間序列數據庫,組織可以利用隱藏在機器生成數據中的洞察力來構建新特性、自動化流程和提高效率(稍后將對此進行更多介紹)。通常,工程團隊最終會將數據存儲在多個數據庫中:元數據存儲在關系數據庫中,時間序列數據存儲在NoSQL存儲中。不要這樣做。

下面,我們將概述您希望在NoSQL之上使用關系數據庫的主要原因,并解釋TimescaleDB + PostgreSQL可以為物聯網提供的優勢。

利用SQL及其生態系統

物聯網數據需要多樣化的、可定制的攝食管道,這需要一個具有廣泛生態系統的數據庫。要滿足這些需求,開發人員只需查看SQL即可。

關系數據庫和SQL密不可分,許多跨組織的人員(例如內部數據分析師、應用程序開發人員或希望實時訪問數據的外部用戶)通常已經了解SQL。例如,在制造業中,有些團隊可能想要監視設備維護和預測故障,有些團隊可能想要跟蹤生產率和運輸物流數據,等等。SQL使其變得容易。

此外,還有一些非常酷的功能,如:

  • 連接:基于兩個或多個表之間的相關列,將這些行組合在一起
  • 聚合:將多個行的值分組在一起,形成一個匯總值(即最小、最大、AVG)
  • 窗口函數:對一組行進行操作,并從底層查詢中為每一行返回一個值(即PARTITION BY、ORDER BY)。
  • 公共表表達式(CTEs):簡化復雜的連接和子查詢(即使用)
  • ROLLUPS: GROUP BY子句的擴展,允許您使用單個查詢生成多個分組集

此外,開發人員通常希望在現有的物聯網基礎設施上構建應用程序。SQL兼容許多管理工具,流管道(如Kafka或RabbitMQ)、消息傳遞協議(如MQTT)、可視化工具(如Seeq)、工業自動化平臺(如Ignition),以及用于處理地理空間和其他數據類型的擴展。

模式(大綱)是一件好事

對于關系數據庫,您可以使用模式來幫助進行數據建模。雖然“無模式”數據庫看起來似乎更容易入門,但它們最終會導致重大的技術債務。用戶通常必須預先就如何存儲他們的數據做出設計決策,而這些決策在未來很難更改。這意味著,如果新的查詢模式需要不同的設置來提高性能,那么它們將得不到很好的支持。

另一方面,使用SQL預先構建模式實際上支持復雜的查詢。用戶還可以使用一組DDL(數據定義語言)命令來調整和更新模式。但是,正確地建模數據以提高性能是很重要的。為給定的工作負載創建適當的索引和表模式可以顯著提高性能。相反,設計錯誤的模式會導致顯著的性能下降。

本質上,你需要的是一種靈活的模式,特別是在存儲半結構化數據時(例如,存儲來自收集不同測量值的物聯網傳感器的讀數)。您還需要一個能夠靈活地管理和訪問數據的數據庫。特別是在物聯網中,您收集數據的設備并不總是在線的,從而導致批量上傳的數據次序混亂。您還可能需要更新不正確的傳感器測量值。關系模型很好地支持所有這些函數。

消除數據孤島

我們已經提到了這樣一個事實,即組織中很多人都知道SQL,它允許多個用戶訪問數據。我們經常從客戶那里聽到,他們希望將時間序列數據庫與完整的關系系統結合在一起,并且希望能夠連接這些數據。

幸運的是,關系數據庫支持連接并消除了在多個位置存儲數據的需要。通過這樣做,組織還可以節省操作多個系統的開銷成本。此外,它們還可以避免與維護獨立數據庫相關的完整性問題,這就引出了我們的下一點。

依賴關系數據庫獲得可靠性

許多存儲敏感數據的組織依靠關系數據庫來保證信息的安全。畢竟,關系數據庫早在70年代就出現了,并且在保證財富500強公司數據安全方面有著良好的記錄。

物聯網應用程序通常必須處理大量復雜的查詢和事務。使用關系數據庫,您可以確保這些事務將是進程的可靠性,這要歸功于ACID(原子性、一致性、隔離性、持久性)。如果您不熟悉,那么可以告訴您,ACID是修改數據庫時使用的一組屬性。它們保證即使在遇到錯誤、斷電、崩潰等情況下,事務也是有效的。

物聯網選擇PostgreSQL + TimescaleDB

如果您正在尋找用于物聯網的關系數據庫,我們建議您選擇PostgreSQL。雖然我們似乎有些偏頗,但PostgreSQL的受歡迎程度依然堅定,并且連續第二次被db引擎評為年度最佳DBMS:

PostgreSQL首次發布于1989年,今年已經30歲了,它的人氣達到了頂峰,沒有任何老化的跡象,擁有一個非常活躍的社區。由于其穩定性和特性集,PostgreSQL已經成為眾多開發人員首選的數據存儲。”

雖然還有其他的關系數據庫管理系統,但PostgreSQL和TimescaleDB為物聯網開發人員提供了顯著的優勢。

總結:

「物聯網架構」在物聯網應用使用關系數據庫還是NoSQL?

 

本文:http://jiagoushi.pro/node/1333

分享到:
標簽:聯網
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定