大數據管道技術 推動Hadoop架構與開發模式的變革
快速數據分析和實時處理的興起,可能會給大數據管道帶來一定的變革,微服務架構正在融入Hadoop領域。
最近幾年,開源Hadoop風格的數據開發已經獲得了很大的關注,但讓主流企業采用這種開發模式依然用了很長時間。它在處理大數據的海量性及多樣性上有很大的價值。但它也具有一定的復雜性,它會導致數據處理系統構建方式的巨大變革。
而在數據處理的速度方面,就相對簡單了。企業需要迅速處理數據,速度是企業對大數據管道產生廣泛興趣的主要原因,企業需要從批處理的數據處理方式轉變為實時處理和即時數據分析。
過去十年中,對計算性能提升的主要目的是為了更好地應對復雜性。隨著開發者社區的興起,容器和Docker,微服務已經可以提供松散耦合的,輕便的面向服務架構來應對各種復現性需求。并在數據一側的開發上也投入了一定的努力,這意味著Hadoop上的編程模式可能會產生一些變化,而在Hadoop 2上,這些變動可能更大,因為在Hadoop 2上可以開發更廣泛的分布式Hadoop附加組件。
容器的變革
如今,我們看到了實時分析應用程序所帶來的影響,它結合了不同的框架部分。 Spark,Kafka和Cassandra是其中最常見的,它們和其他技術一起組成了流式大數據管道。容器和微服務都更適合于整體架構,更為重要的是,讓這些框架能夠協同工作不是一件容易的事。不僅如此,在他們一同工作的同時,還需要對其進行調整和更新,以實現更好的融合。
在大數據架構中應用容器和微服務的舉措正變得越來越普遍。BlueData最近在其EPIC平臺上新增了用于管理Docker容器的應用,這些容器用于創建Hadoop和Spark集群。 MapR編程架構是將微服務技術應用于流和實時分析應用程序架構的先驅。Pachyderm構造了一個容器化的處理引擎,在最近的Strata + Hadoop 2016 大會上該技術獨占鰲頭。
Mesosphere也在密切關注著相關技術的發展,它已經建立了一個系統,用于運行容器和數據服務。該公司的產品是構建在一個開源的分布式系統內核或群集管理器Apache Mesos上。它已經被Airbnb,蘋果,Twitter和其他一些公司所采用。
數據點
也許對于Spark和Mesos容器服務在一起出現,我們并不用感到十分驚訝,因為Spark的創始人Matei Zaharia與Mesos的研發也有著一定的淵源。 事實上,今年Mesosphere開展的針對500名Mesos用戶的研究發現,43%的受訪者在Mesos上使用Spark;32%的受訪者在Mesos平臺上使用Kafka,24%的用戶則使用Cassandra。
另一個專注于數據分析和微服務的新興公司是Lightbend,該公司的創始人包括Scala(Spark和Akka開發所使用語言)的***,Akka是Apache Flink中分布式通信的核心,也是大數據管道的另一個新興的元素。
Lightbend發現了用于快速實時數據處理應用的容器和框架之間的重大關聯。 今年早些時候,公司進行的一項調查顯示,在Java虛擬機上運行應用程序的2100個開發人員中,34%的受訪者進行實時大部分數據處理,22%的受訪者進行等量的批處理和實時處理。
在生產環境中使用了微服務的受訪者中,30%的人使用了Kafka,21%的人運行著Spark Streaming,這再次證實了新的數據處理框架與服務和容器方法之間的關聯。調查還發現,這兩個框架都與另一個技術有關,那就是Akka Streams,35%的受訪者使用了它。
對于數據微服務,大多數新的基礎設施仍需要構建。很多地方還需要一點點摸索,開發團隊需要找出哪些是正確的,哪些是錯誤的。
此外,數據管理的明顯特征——“狀態”會話和數據持久性在微服務領域仍然有待完善。 對于Hadoop的開發風格來說,它要取代或替換專用的數據倉庫,使用更具活力的開源系統,這還有很長的一段路要走。