資料採集和dataflow
對於資料採集主要分為三類,即結構化資料庫採集,日誌和檔案採集,網頁採集。對於結構化資料庫,採用sqoop是合適的,可以實現結構化資料庫中資料並行批量入庫到hdfs儲存。對於網頁採集,前端可以採用nutch,全文檢索採用lucense,而實際資料儲存最好是入庫到hbase資料庫。對於日誌檔案的採集,現在最常用的仍然是flume或chukwa,但是我們要看到如果對於日誌檔案資料需要進行各種計算處理再入庫的時候,往往flume並不容易處理,這也是為何可以採用pig來做進一步複雜的data flow和process的原因。
資料採集類似於傳統的etl等工作,因此傳統etl工具中的資料清洗,轉換,任務和排程等都是相當重要的內容。這一方面是要基於已有的工具,進行各種介面的擴充套件以實現對資料的處理和清洗,一方面是加強資料採集過程的排程和任務監控。
資料儲存庫
資料儲存在這裡先談三種場景下的三種儲存和應用方式,即hbase,hive,impala。其中三者都是基於底層的hdfs分布式檔案系統。hive重點是sql-batch查詢,海量資料的統計類查詢分析,而impala的重點是ad-hoc和互動式查詢。hive和impala都可以看作是基於olap模式的。而hbase庫是支撐業務的crud操作,各種業務操作下的處理和查詢。
如何對上面三種模式提供共享一致的資料儲存和管理服務,hcatalog是基於apache hadoop之上的資料表和儲存管理服務。提供統一的元資料管理,而不需要知道具體的儲存細節當然是最好的,但是hcatalog本身也還處於完善階段,包括和hive ,pig的整合。
基於mysql的mpp資料庫infobright是另外乙個mpp(share nothing)資料分析庫的選擇,如果本身已有的業務系統就是基於mysql資料庫的,那麼採用infobright來做作為乙個olap分析庫也是乙個選擇。但是本身
infobright的效能,infobright社群版的穩定性,管控功能的缺失等仍然是需要考量的因素。
對於mapreduce和zookeeper本身就已經在hbase和hive中使用到了。如hive的hsql語言需要通過mapreduce解析和合併等。而對於impala要注意到本身是基於記憶體的mpp機制,沒有用到mapreduce框架去處理,dremel之所以能在大資料上實現互動性的響應速度,是因為使用了兩方面的技術:一是對有巢狀結構的巢狀關係型資料採用了全新的列式儲存格式,一是分布式可擴充套件統計演算法,能夠在幾千臺機器上平行計算查詢結果。
實時流處理
這個hadoop框架本身沒有包含,在此也做乙個分析,前面已經摘錄過文章對實時流處理做過介紹,而實際上真正實時流處理的場景並不多,任何乙個技術的出現都是為了解決實際的業務問題。比如twitter推出storm可以解決實時熱點查詢和排序的問題,基於乙個巨大的海量資料資料庫,如果不是這種基於增量stream模式的分布式實時任務計算和推送,很難真正滿足都業務對效能的要求。
同樣對於s4和storm只是提供了乙個開源的實時流處理框架,而真正的任務處理邏輯和**仍然需要自己去實現,而開源框架只是提供了乙個框架,提供了基本的集群控制,任務採集,任務分發,監控和failover的能力。真正在企業內部應用來看,很少有這種實時流場景,而與之對應的cep複雜事件處理和eda事件驅動架構,這個前面很多文章也都談到過,這個基於訊息中介軟體實現的事件發布訂閱和推送,事件鏈的形成相對來說更加成熟。
Hadoop的應用場景
其實我們要知道大資料的實質特性 針對增量中海量的結構化,非結構化,半結構資料,在這種情況下,如何快速反覆計算挖掘出高效益的市場資料?帶著這個問題滲透到業務中去分析,就知道hadoop需要應用到什麼業務場景了!如果關係型資料庫都能應付的工作還需要hadoop嗎?比如1.銀行的信用卡業務,當你正在刷卡完...
Tableau 各功能經典應用場景
1 15 大詳細級別表示式 2 分析和時間序列分析等高階分析方案 4 viz variety show 視覺化多樣性展示 圓環圖非常有用 沒錯,真的!5 使用tableau設定操作表達的8個分析概念 6 在 tableau 中使用甘特圖來管理專案 7 您所不知道的 5 個 tableau 內建統計功...
Halcon 各模板匹配應用場景對比
適用於目標區域灰度值比較穩定,檢測影象與模板影象相似度高,且具有相同的外界條件的場景。不適用雜亂場景 遮擋 光照變化 尺寸縮放及多通道影象。在halcon19.11已被移到legacy中了。適用於失焦影象 輕微形變 線性光照變化及輪廓模糊的影象,對紋理影象尤為支援。不適用於雜亂場景 遮擋 非線性光照...