如果嵌入式系統擁有無限的儲存容量會如何?
開發人員向來都得面對資料擷取系統的儲存容量和運算能力有限的根本問題,但是資料庫結構現在卻有了新的思惟,可以讓開發人員不必再受限於傳統窠臼。 具體而言,位於網路邊緣但結合最新 API 資料存取技術的高逼真度儲存資料,可以讓架構師不再綁手綁腳而開發出更有彈性和實用的系統。
思想受限帶來的問題
資料擷取和分析的常見挑戰包括必須判斷:
- 感應什麼內容
- 感應頻率
- 資料儲存位置
- 資料儲存時間長短
- 隨需存取資料進行分析的方式
這些問題部分起因於設計師想法受限於傳統設計上的考量,例如可用於儲存資料的記憶體有限、網路頻寬有限、異質網路之間的連線狀況不穩、耗電量疑慮以及運算能力等因素。
雖然這樣受到局限的思想司空見慣,但卻會造成三個負面影響。 第一個影響是,從決定好設計的那刻起系統僵局也就開始成形。 今日看來合理的物聯網節點部署可能三到五年後隨著新興思惟、技術及分析要求出現就會變得過時。
第二個影響是,設計師需要盡可能以最低的頻率來取樣和記錄特定資料輸入,才能節省有限的記憶體資源, 這樣做就等於是冒著遺失重要事件的風險 (圖 1a)。 倘若取樣之間的間隔縮短,成功偵測到重要事件的可能性就會增加 (圖 1b)。
第三個影響,同時也是從分析和處理不斷進步的角度而言最有可能令人洩氣和也最可能造成危害的問題,就是缺乏高解析度、高逼真度的歷史記錄資料。 雖然低解析度的記錄資料未來仍然可以分析成功,但是多數沒被記錄到的資料就永遠找不回來了,
這些沒有記錄到的資料對於找出導致資產故障的異常狀況而言,很可能具有關鍵的重要性。 只要用對演算法,資料也能證明它們對於改善系統可靠性、有效性及業務本身是極度有用的, 因此損失資料實際上就等於錯失機會。
無限儲存容量可能嗎?
如果設計師不必妥協就能收集到頻率為 Hertz 而非 deciHertz 的所有機器資料,那會怎麼樣?如果設計師不必再對於資料收集和分析做出長期的限制,而能在途中調整,又會怎麼樣?有時候如果事情聽起來美好到不真實,那有可能就是真的。
Exara 在這方面邁進了一步,他們將最新 64 位元 CPU (例如 Intel Atom® 處理器系列產品) 的優點與資料庫新興思惟結合起來,試圖拿掉資料擷取和分析系統傳統設計中的舊有限制架構。 而這樣的作法目前在網路邊緣透過感應器和運作技術與應用程式或企業之間的抽象層就獲得了實現。
Exara 創辦人暨技術長 Eric Kraemer 說得沒錯: 「真實世界本就一片混亂, 人類的共同認知不斷在變、設備不是汰換就是壞去,而節點也是換上換下沒有固定。」每天生活雖然充滿不確定性,但卻多了一項因素,那就是「僵化」。
Kraemer 表示:「我們做好假設的那刻起僵化隨即產生。」他和 Exara 團隊開發的「機器資料服務」就是要消弭網路邊緣的僵局,同時透過軟體定義的物聯網價值鏈體系來協助產業全體進入完全數位化的未來。
隨時隨地,任何資料
Exara 的解決方案銜接邊緣網路的點就是在感應器輸入內容彙集之處,如 PLC 或 RTU (圖 2)。 從這裡開始,網路不是視為南向就是北向。 南向是操作技術 (OT) 的領域,其中包含透過各種機器級通訊協定來感應、監控及控制的資產,Exara 可以支援多達 300 條通訊協定。 北向則是以 API 和應用程式層組成,可以將擷取的必要資料「及時」以現成應用形式呈現出來。
Exara 在南向和北向網域之間開發了一套時間序列資料庫架構,這個架構可以擷取並壓縮來自資產的所有機器資料,然後像緩衝區一樣直接在網路邊緣儲存起來。 消費者 (例如企業 IT 或商業辦公室) 之後只要使用標準或自訂 API 就能視需要取用資料。
Kraemer 表示:「總歸一句話就是,我們可以直接連結並讀取原始機器通訊協定。」 Kraemer 說道:「雖然加入更多記憶體可以擴充資料擷取的數量,但首先,架構本身就能以 1 Hertz 的平均取樣解析度來取樣 1000 個標籤 (感應器輸入) 並能在 256 Gbyte 的 SSD 上擷取『數百億筆事件記錄』, 相較於舊式資料擷取裝置,它記錄時間序列事件的容量足足大了好幾個數量級。」
但是更重要的是,Exara 的作法是為了同時並行讀取而設計,並透過標準 API 以符合最新應用程式開發價值鏈體系的方式來呈現資料。 Kraemer 說道:「傳統的工業資料擷取裝置並不是如此。」 據 Kraemer 表示,一般要價 4,000 美元的高階系統與 Exara Chronicle 軟體相比只能記錄大約 200 萬筆事件。
Exara 解決方案之所以有此能耐,最關鍵的因素就是低成本 64 位元處理器出現的關係,例如 Intel Atom 處理器系列產品, 這種 CPU 可以對應更大的記憶體空間。 隨著記憶體成本降低而且效能增加,像是 SATA Gen 2 這種更高頻寬的介面在儲存方面就變得越來越重要。 Kraemer 表示:「請記住,我們說的可是如何處理龐大的資料。」
Chronicle 本質上就是個高效能的時間序列分析資料庫,因為是用 C 語言編寫,所以運作起來非常靠近核心。 目前為止,開發人員都是靠著將嵌入式交易資料庫改造成關聯式資料庫的方式來使用, 但是分析資料庫和交易資料庫在效能特性、存取模式及取得的要求類型方面都截然不同, Kraemer 說道:「如果想要執行從工業邊緣讀取的應用程式,那麼我們需要打造的核心就是資料庫基礎架構。」
可以擴充而且安全無虞
Exara 的作法是以實體層變化率將儲存和分析抽象化,這樣就能隨著網路成長而擴充調整,還能隨著儲存的資料量和儲存長久來擴充調整。 一般資料儲存的時間是三年,而且架構會使用「移動視窗 (Rolling Window)」緩衝方法,所以儲存的資料永遠只有三年。 如果只是分析之前未使用的資料以判斷任何異常行為原因或將新分析演算法套用到那些資料上,那麼三年通常就足夠了。 但是如果客戶要求更長期的儲存時間,那麼只要增加更多記憶體即可垂直擴充。
以安全的觀點來看,Chronicle 只能「唯讀」,所以不會將存取權限授予安裝的系統,而且資料本身是透過最新安全的 API 來存取。
Exara 迄今已經向一位客戶證明如何將一個水平幫浦調整到最佳使用狀態來降低耗電量,進而達到年省 6 萬美元的成果。
結論
隨著科技進步和開發人員越來越懂得物聯網的應用方式,物聯網系統的部署變得越來越容易。 但是若不破除傳統框架來做出設計決定,還是可能會造成網路僵化的問題,而且導致網路邊緣缺乏足夠的資料可以執行最佳分析。
用新思惟來看待資料庫和應用程式的角色已經證明它們有助從實體層將分析抽象化並帶來更多可用的資料, 而且還能讓資料本身變得更易於存取而能即時呈現,並且變得更有用於進行歷史分析以找出異常行為,同時還能使處理程序和成果變得越來越好。
新思惟應用就是善加利用成本降低的 64 位元架構 (例如 Intel Atom® 處理器系列產品) 和不斷成長的記憶體容量。 設計師若使用 Exara Chronicle 作為起點就能即刻開始以軟體定義方法來處理物聯網部署。