2013年12月16日 星期一

New Techs of Hadoop 2.0: Tez, Stinger, Knox & Falcon (3)


圖片來源:Hortonworks - Falcon


這篇應該是這系列的最後一篇, 老實說,當天Jeff 講到Falcon和Knox的時候時間已經不多了,所以講的很快很多細節的部份都跳過了,而且這兩個專案也的確很新,能見度相對低,也讓我花了不少時間去研究。(謎之音:其實你也是抄官網的內容,大家去看官網不就好~)

Falcon

Falcon這個專案是由一家叫做InMobi 這間公司貢獻的,截至目前為止(2013.12.15)仍是Apache incubator 中的新專案而且尚未GA,,那Falcon當初開發的目標是什麼呢?想要解決怎樣的問題?

其實就像目前許多廠商在問的問題,當你有了那麼多資料儲存在HDFS以後,然後呢?該怎麼管理和使用?到底哪些資料需要做Replicate? 哪些其實用完就真的可以砍掉?那多久要砍掉?




現階段Hadoop都只有提供最底層的API和Command 來讓你手動操作,並沒有一個自動化的機制,或是標準流程(or 建議流程來處理),而且在許多實際應用案例顯示每個階段的資料都有不同的保存期限,比如說Raw Data要保存五年,Stage Data保存一年,Analytic Data保存三年,然後依據每個階段Data 的重要性不一樣,可能也需要不同的Replicate 數量,所以Falcon 的目標就是管理如何保存和控制要複製幾份,主要的Usage Scenarios如下:
  • Data Replication Handling
    • DR, Backup and Archival plans
    • Site to site or Site to Cloud
    • Replication and retention ( 保留)
  • Data Lifecycle Management
    • Data eviction policies
  • Data Lineage and Traceability
    • Entity relationships enable users to view coarse-grained data lineage
  • Process Coordination and Scheduling
  • Declarative Data Process Programming
    • Higher-level data abstractions (Clusters, Feeds and Processes) enabling separation of business logic from application logic, maximizing reuse and consistency when building processing pipelines. 這部份我覺得跟Flume的(Source Channel Sink )概念非常像。



根據Jeff的講法目前仍然似乎還沒有UI介面,只有提供configuration File的方式,不過在不久的將來應該會整進Ambari,在時程規劃上也是分成三個階段:

Phase 1 2012-4Q2013
  • Apache incubation
  • Dataset replication
Phase 2 1Q2014
  • Hive/HCatalog integration
  • Basic dashboard
  • Kerberos security
  • Ambari integration
  • Deliver with HDP
Phase 3 2H2014
  • File import SSH SCP

看著Falcon就覺得Hadoop 的Ecosystem真的越來越成長茁壯,因為這些貢獻出來的新專案也都是嘗試在解決其他業界先驅在使用上真正會遇到的問題。

Knox Gateway 



圖片來源:Hortonworks - Knox

根據官網的描述,Knox Gateways provides security for multiple Hadoop clusters, with these advantages:
  • Provide perimeter security to make Hadoop security setup easier
  • Support authentication and token verification security scenarios
  • Deliver users a single cluster end-point that aggregates capabilities for data and jobs
  • Enable integration with enterprise and cloud identity management environments
  • Manage security across multiple clusters and multiple versions of Hadoop
看圖說故事的話直覺反應就是想要提供跨Cluster 統整性的安全認證平台,但是真的是這樣嘛?

參考KnoxTechnicalPreview這份文件,Knox其實主要想解決的問題是:
  1. 透過Gateway 單一化Access Hadoop Cluster 窗口,也減少被Hack攻陷的機會
  2. 提供更多SSO的Solution可以方便跟企業內部現有系統整合,因為Kerberos 對大多企業來說太複雜了...囧rz..

但是我好奇的是,如果不用Kerberos那這樣Authorization怎麼做? 那如果有用Kerberos,透過API連近來的身分是Gateway的身分還是可以是User自己的身分?這可能還需要在研究研究...




張貼留言