事實處理演變:盆栽背景
已發表: 2022-03-14(開放供應)細節處理是如何發展的? 隨著數據處理框架變得更加精細,產生的知識的數量和速度每小時都在放大,這些獨特的系統是如何隨著時間的推移而發展的?
讓我們測試一下來回答接下來的兩個問題:我們如何處理細節,現在有哪些知識處理技術可供我們使用? 我們為什麼要處理信息?
當您考慮大量相關的小工具、傳感器和網頁訪問時,這一點就很清楚了。 更不用說人類和設備產生的所有細節。 很明顯,自從我們發明了計算機系統並經歷了對信息的獲取以來,信息處理就已經無處不在。
在開始…
個人計算機的創建產生了對信息和事實處理的明確需求。 在這些令人難以置信的早期,筆記本電腦或計算機專家經驗豐富,可以創建用於處理信息的定制應用程序,並且這些應用程序很可能保存在穿孔卡上。
接下來的行動帶來了彙編語言和其他有目的的編程語言,如 C 和 Java 採用的 Fortran。 在史前龐大的事實空間中,軟件程序工程師將使用這些語言為獨特的信息處理工作編寫專門設計的課程。
另一方面,這種細節處理範式只有少數具有編程背景的人才能訪問,這阻止了信息分析師或想要係統數據並得出具體結論的更廣泛的公司社區更廣泛地採用。
下一個純自然的動作注意到數據庫的發明,在 1970 年代前後。 標準的關係數據庫單元,例如 IBM 的數據庫,支持 SQL 並提高了更廣泛受眾對數據處理的採用。 SQL 是一種標準化且富有表現力的問題語言,讀起來很像英語。
它使更多的人能夠進入事實處理,因此在較長時間裡不再需要依靠程序員來生成獨家的情況包和分析數據。 SQL 還擴展了與此類知識處理相關的用途的多樣性和形式,例如公司計劃、流失成本分析、通用籃子大小、12 個月同比開發數據等等。
重大信息黎明
巨量信息時代始於 Google 製作的 MapReduce 論文,該論文解釋了一種依賴於兩個原語——Map 和 Cut down 的簡單產品。
這些原語允許跨大量並行機器進行並行計算。 當然,在 MapReduce 時代之前,通過大量計算機、超級計算機和 MPI 設備進行並行計算是可行的。 儘管如此,MapReduce 將其設計為可供更廣泛的觀眾使用。

Apache Hadoop 作為該框架的開源實現(最初在 Yahoo! 實現)在開源領域廣泛存在並可供更廣泛的觀眾使用。 Hadoop 被各種各樣的公司採用,一些重要事實參與者都起源於 Hadoop 框架。
Hadoop 在數據處理機構中引入了一種新的範式:在分散的文件過程或存儲(例如 Hadoop 的 HDFS)中零售出口信息的能力,然後可以在以後的級別進行查詢/查詢。
Hadoop 開闢了一條與關係數據庫類似的路線,從階段開始,由一群已經準備好創建程序的獨特“演員”捆綁個性化編程,然後在分佈式文件技術中對知識進行 SQL 查詢,這種作為 Hive 或其他存儲框架。
連接:海量信息和 Hadoop 的 5 大優點。
批處理接收增加
Huge Facts 的未來階段注意到了 Apache Spark 的引入。 Spark 允許進一步並行化並將批處理提升到以下水平。 如前所述,批處理包括將事實放入存儲過程中,然後您可以在其上進行例行計算。
這裡的關鍵思想是,儘管您定期(每天、每週、每小時)運行計算以主要基於過去的數據收集效果,但您的事實仍然存在於某個地方。 這些計算永遠不會始終如一地運行,並且有一個起始級別和一個端點。 因此,您必須不斷地重新操作它們以獲得最新的最終結果。
從海量知識到快速知識——引入流處理
大信息發展的這個即將到來的階段注意到流處理的引入,Apache Storm 仍然是第一個被廣泛使用的框架(同時結束了其他研究系統和框架,但 Storm 是唯一一個看到改進採用的框架)。 該框架使可以編寫可以連續運行(24/7)的軟件包。
與計劃和應用程序有開始和結束的批處理策略相反,流處理程序在事實上持續運行並實時生成結果,儘管事實是產生的。 隨著 Apache Kafka(起源於 LinkedIn)作為消息流的存儲機制的引入,流處理變得更加複雜。 Kafka 充當了涉及信息源和處理程序(如 Apache Storm)的緩衝區。
Lambda 架構在大信息的故事中創造了一個小彎路。 這種架構的起源是因為流處理的初步採用者並不認為像 Apache Storm 這樣的流處理方法足夠可靠,因此它們節省了每個系統(批處理和流處理)同時管理。
Lambda 架構是這兩種設備的混合體——像 Apache Storm 這樣的流處理程序用於實時洞察,但隨後該架構會定期使用批處理系統來維護所發生事件的真實情況。
Apache Flink – 流處理變為可用
大約在 2015 年,Apache Flink 開始成為開發人員和事實/分析領導者採用的優秀流處理框架。
從一開始就適合,Flink 展示了非常可靠的即時語義和容錯處理引擎,讓用戶相信 Lambda 架構不再重要,流處理可以可靠地用於復雜的場合處理和持續運行,任務關鍵型應用程序。 由於 Flink 可靠且可獲取的細節處理框架,開發和維護兩個單元(批處理/流處理)所帶來的所有開銷都變得多餘。
流處理啟動了一種新的範式,並且心態從要求響應的立場轉變,即在可能的欺詐情況審訊之前存儲知識的位置,轉變為您首先檢查想法,然後在真實時間獲得事實的人。信息被創建。 例如,通過流處理,您可以開發一個 24/7 全天候運行的欺詐檢測軟件。 它將實時獲取情況,並在存在信用卡欺詐時為您提供洞察力,從而在第一時間阻止它真正發生。 這很可能是細節處理中更大的轉變之一,因為它將允許對整個世界正在發生的事情進行實時洞察。
開放資源事實處理的演變經歷了一個典型的模式,一個新的框架被引入市場(即關係數據庫、批處理、流處理),最初可供獨特的查看者(程序員)使用,他們可以製作定制的包接近知識。
然後是在框架中引入 SQL,這往往使那些真的不想為複雜的信息處理編寫包的受眾普遍獲得它。
流處理遵循非常相似的模式 SQL 用於流處理活動,在流應用程序中被廣泛採用,這驗證了我們過去了解的模式。 預計流處理市場將在未來幾年以 21.6% 的複合年增長率呈指數級增長。 隨著這種增長以及流處理應用程序的範圍和使用環境與日俱增,這個地方的發展是相當多的,流處理的未來是隨時變化和不斷發展的自然環境。
Aljoscha Krettek 是 Veverica 的聯合創始人和工程總監。