1.大資料的概念
維基百科的定義: 大資料是指利用常用軟體工具捕獲、管理和處理資料所耗時間超過可容忍時間的資料集。
2.大資料主流技術
資料採集:
資料儲存與管理:
大資料利用分布式檔案系統hdfs、hbase、hive,實現對結構化、半結構化和非結構化資料的儲存和管理。
資料處理與分析:
利用分布式並行程式設計模型和計算框架,結合機器學習和資料探勘演算法,實現對海量資料的處理和分析。
3.場景化解決方案
在面對不同的場景時,會使用不同的大資料元件去解決處理,主要有如下大資料場景化解決方案。
3.1 離線批處理
離線批處理,是指對海量歷史資料進處理和分析,生成結果資料,供下一步資料應用使用的過程。離線批處理對資料處理的時延要求不高,但是處理的資料量較大,占用的計算儲存資源較多,通常通過mr作業、spark作業或者hql作業實現。
離線批處理的特點:
離線處理常用的元件:
hdfs介紹
hdfs(hadoop distributed file system)基於google發布的gfs**設計開發。 其除具備其它分布式檔案系統相同特性外,hdfs還有自己特有的特性:
hdfs適合:大檔案儲存與訪問 流式資料訪問
hdfs不適合:大量小檔案儲存 隨機寫入 低延遲讀取
hdfs**站機制:
hive概述
hive是基於hadoop的資料倉儲軟體,可以查詢和管理pb級別的分布式資料。
hive特性:
hive函式:
檢視系統函式的用法:show functions;
顯示函式的用法:desc function upper;
詳細顯示函式的用法:desc function extended upper;
當hive提供的內建函式無法滿足業務處理需要時,此時就可以考慮使用使用者自定義函式,編寫處理**並在查詢中使用。
hive調優
資料傾斜
資料傾斜指計算資料的時候,資料的分散度不夠,導致大量的資料集中到了一台或者幾台機器上計算,這些資料的計算速度遠遠低於平均計算速度,導致整個計算過程過慢。
日常使用過程中,容易造成資料傾斜的原因可以歸納為如下幾點:
調優引數:
在map中會做部分聚集操作,效率更高但需要更多的記憶體。
set hive.map.aggr=true;
此時生成的查詢計畫會有兩個mrjob,可實現資料傾斜時負載均衡。
set hive.groupby.skewindata=true;
當連線乙個較小和較大表的時候,把較小的表直接放到記憶體中去,然後再對較大的表進行map操作。
set hive.auto.convert.join=true;
每個查詢會被hive轉化為多個階段,當有些階段關聯性不大時,可以並行化執行,減少整個任務的執行時間。
開啟任務並行執行:
set hive.exec.parallel=true;
設定同乙個sql允許並行任務的最大執行緒數(例如設定為8個):
set hive.exec.parallel.thread.number=8;
資料集市和資料倉儲的區別:
資料集市
資料集市(data mart) ,也叫資料市場,資料集市就是滿足特定的部門或者使用者的需求,按照多維的方式進行儲存,包括定義維度、需要計算的指標、維度的層次等,生成面向決策分析需求的資料立方體。
資料倉儲
為滿足各類零散分析的需求,通過資料分層和資料模型的方式,並以基於業務和應用的角度將資料進行模組化的儲存。
資料倉儲分層:
分層的優點:
3.2 實時檢索
實時檢索的特點:
3.3 實時流處理
實時流處理,通常是指對實時資料來源進行快速分析,迅速觸發下一步動作的場景。實時資料對分析處理速度要求極高,資料處理規模巨大,對cpu和記憶體要求很高,但是通常資料不落地,對儲存量要求不高。實時處理,通常通過structured streaming或者flink任務實現。
實時流處理的特點:
3.4 融合數倉
大資料解決方案
原文 大資料解決方案 1 資料庫 垂直拆分 根據業務把錶放到不同的資料庫,解決表之間的io競爭 水平拆分 根據某種規則把單錶資料分成多張表儲存,解決單錶資料量大的問題 索引 根據業務場景建立合理的索引,如果資料量很小建議使用索引 300條以內 索引使用場景 動作描述 聚集索引 非聚集索引 主鍵列是 ...
HIVE優化 解決方案
1.開啟並行引數 set hive.exec.parallel true set hive.exec.parallel.thread.number 16 同乙個sql允許最大並行度,預設為8 2.負載均衡引數 只針對groupby操作的傾斜 set hive.groupby.skewindata t...
高校大資料解決方案
數聯尋英發布首份 大資料人才報告 報告顯示,目前全國的大資料人才僅46萬,未來3 5年內大資料人才的缺口將高達150萬。但作為人才培養基地的高校領域,大多依賴於現有的it環境進行教學和科研工作,導致大資料教學創新性和實戰能力不足,教學內容與社會需求脫節。隨著科研人員的思維和行為模式在傳統學科的研究領...