面向Hadoop的、新的數據處理和管理平臺:Apache Falcon
Apache Falcon 是一個面向Hadoop的、新的數據處理和管理平臺,設計用于數據移動、數據管道協調、生命周期管理和數據發現。它使終端用戶可以快速地將他們的數據及其相關的處理和管理任務“上載(onboard)”到Hadoop集群。
Apache Falcon解決了大數據領域中一個非常重要和關鍵的問題。升級為頂級項目是該項目的一個重大進展。Apache Falcon有一個完善的路線圖,可以減少應用程序開發和管理人員編寫和管理復雜數據管理和處理應用程序的痛苦。
用戶會發現,在Apache Falcon中,“基礎設施端點(infrastructure endpoint)”、數據集(也稱 Feed )、處理規則均是聲明式的。這種聲明式配置顯式定義了實體之間的依賴關系。這也是該平臺的一個特點,它本身只維護依賴關系,而并不做任何繁重的工作。所有的功能和工作流狀態管理需求都委托給工作流調度程序來完成。下面是Falcon的架構圖:
從上圖可以看出,Apache Falcon:
- 在Hadoop環境中各種數據和“處理元素(processing element)”之間建立了聯系;
- 可以與Hive/HCatalog集成;
- 根據可用的Feed組向最終用戶發送通知。
而按照開發人員Michael Miklavcic的說法,Apache Falcon使他們的團隊逐步構建起一個復雜的管道。該管道包含超過90個 Process 和200個Feed。如果單獨使用Apache Oozie,這會是一項重大挑戰。Hortonworks工程部門副總裁Greg Pavlik則表示,Apache Falcon是用于“數據湖(Data lake)”建模、管理和操作的最好的、最成熟的構建模塊。Hortonworks官方網站上提供了一個 在Hadoop中使用Apache Falcon的示例 。
另外,在升級成為頂級項目之前,Apache Falcon已經在多個行業中獲得了廣泛的應用,包括廣告、醫療、移動應用等。InMobi是該平臺的最大用戶之一。該公司的聯合創始人兼首席技術官Mohit Saxena表示: