map_reduce
它把map/reduce過程拆分成若干個子過程,同時可以把多個map/reduce任務組合成乙個較大的dag任務,減少了map/reduce之間的檔案儲存。同時合理組合其子過程,也可以減少任務的執行時間。
l 不同於mapreduce的是job中間輸出和結果可以儲存在記憶體中,從而不再需要讀寫hdfs,因此spark能更好地適用於資料探勘與機器學習等需要迭代的map reduce的演算法。
l spark streaming :spark用來處理資料流,實時資料的模組
支援在日誌系統中定製各類資料傳送方,用於收集資料;
分布式發布訂閱訊息系統
flume+kafka+storm
flume+hdfs
類sql查詢語言,稱為hql,可以將sql語句轉換成mapreduce任務進行執行
1. 子查詢相當於表名,使用from 關鍵字需要指定真實表名或表別名。
2. hive
支援union(已驗證)但效能會比較差 ,支援union all
3. 子查詢中使用union all 時,在子查詢裡不能使用count、sum 等 聚合函式
4. 兩表直接進行unionall 可以使用count、sum 等聚合函式
5. 兩張表進行unionall 取相同的欄位名稱,可正常輸出指定資料內容,且結果為兩張表的結果集
load data [local] inpath 『path』 overwrite|into table tb_name[partition (par)]
insert overwrite|into table tb_name[partition (par)] select .. from ..
join(只支援等值關聯)
• left|right|full [outer] join
• left semi join
• cross join -- 笛卡兒乘積
分割槽表動態分割槽生成
• set hive.exec.dynamic.partition=true;
• set hive.exec.dynamic.partition.mode=nonstrict;
• set hive.exec.max.dynamic.partitions.pernode=10000;
開窗函式 over
row_number()over(partition by start_cityorder by route_id) as row,
rank()over(partition by start_city order byroute_id) as rnk,
dense_rank()over(partition by start_cityorder by route_id) as drnk
cube
根據group by的維度的所有組合進行聚合(其中的grouping__id,表示結果屬於哪乙個分組集合)
select substr(create_time,1,7) asmonth,substr(create_time,1,10) as day,count(distinct order_id) asorders,grouping__id
from kn1_ord_team_order_detail
where create_time>='2015-06-01'
group bysubstr(create_time,1,7),substr(create_time,1,10)
with cube
order by grouping__id
Hadoop學習筆記 Hadoop初識
序言 資訊化發展到當今,網際網路的資料量是不斷地增加,那麼如何很好的處理以及利用這些資料可能是未來的乙個發展方向,這也之所以產生了各種平台的雲計算。對於網際網路而言,大資料量可分為兩種 第 一 大訪問量請求 第 二 大資料量處理。大訪問量請求這個事應用端應該思考的問題,如何很好的處理大的訪問量,如何...
Hadoop學習筆記
hadoop介紹 hadoop是google雲計算框架的開源實現,是乙個分布式儲存和分布式計算的框架,主要包括hdfs和mapreduce的實現。hdfs hdfs由乙個namenode和多個datanode組成,其中namenode相當於系統的元資料存放地,它是hadoop系統的神經中樞,而多個d...
Hadoop學習筆記
fsimage 記憶體元資料 editlog 效率 安全監測節點錯誤 datanode向namanode定時返回心跳 監測網路錯誤 資料傳送後返回ack 監測儲存錯誤 傳輸資料損壞,通過資料的checksum監測 硬碟儲存資料損壞,通過每個block的checksum監測 partition 將ma...