Hadoop學習路線
隨著大數據的盛行,Hadoop也流行起來。面過一些公司,包括開發Hadoop :如Cloudera, Hortonworks, MapR, Teradata, Greenplum, Amazon EMR, 使用Hadoop的除了Google,數不勝數了.
Hadoop 2.0轉型基本無可阻擋,今年下半年要正式發布了,它的出現讓大家知識體系都 要更新了。Hadoop1.0搞了8年才發布,2.0不到2年就出來了。2.0的核心是YARN,它的 誕生還是有趣的故事
YARN介紹
- Yarn from Hortonworks
- Yarn from IBM developerworks
- Hadoop Ecosystem at a Glance
-
SQL is what’s next for Hadoop: Here’s who’s doing it
-
All SQL-on-Hadoop Solutions are missing the point of Hadoop
- Hadoop Summit, San Jose
“Hadoop: The Definitive Guide”: 裏面內容非常好,既有高屋建瓴,又有微觀把握,基本適用於1.X版本。比如mapreduce各個子階段,Join在裏面也有代碼實現,第三版
- Hadoop: The Definitive Guide, 3rd Edition
- tomwhite/hadoop-book · GitHub
Google的三輛馬車,GFS, MapReduce, BigTable Google的新三輛馬車:Caffeine、Pregel、Dremel
- Big Data beyond MapReduce: Google’s Big Data papers
SIGMOD, VLDB Top DB conference
入門:
- 知道MapReduce大致流程,Map, Shuffle, Reduce
- 知道Combiner, partition作用,設置Compression
- 搭建Hadoop集群,Master/Slave 都運行那些服務 NameNode, DataNode, JobTracker, TaskTracker
- Pig, Hive 簡單語法,UDF寫法
- When to use Pig Latin versus Hive SQL?
- Online Feedback Publishing System
- Introduction to Apache Hive Online Training
- http://i.stanford.edu/~ragho/hive-icde2010.pdf
Hadoop 2.0新知識; HDFS2 HA,Snapshot, ResourceManager,ApplicationsManager, NodeManager
進階:
-
HDFS,Replica如何定位
-
HDFS Design
-
Hadoop 參數調優,性能優化,Cluster level: JVM, Map/Reduce Slots, Job level: Reducer #, Memory, use Combiner? use Compression?
-
7 Tips for Improving MapReduce Performance
-
Hadoop Summit 2010 Tuning Hadoop To Deliver Performance To Your Application
- HBase 搭建,Region server, key如何選取?
- 數據傾斜怎麽辦?
- 字典同位詞
- 翻譯SQL語句 select count(x) from a group by b;
- MapReduce Algorithms
- Designing algorithms for Map Reduce
關註Cloudera, Hortonworks, MapR
-
董的博客
-
Hadoop學習資料
-
數據流系統: Storm
-
內存計算系統: Spark and Shark
-
交互式實時系統:Cloudera Impala, Apache Drill (Dremel開源實現),Tez (Hortonworks)
- Powered by
- Hadoop進化目標:開發部署傻瓜化,性能更強勁,最後為程序員標配。
- 核心都是被寡頭控制的,記得一邊文章說一流的公司賣標準,二流的公司賣技術,三 流的公司賣產品,H和C有最多的committer,自然就影響著整個Hadoop社區。
- 技術就是日新月異,還是多看看那些公司的博客,關註感興趣的新產品,Hortonworks Stack
- 在Hadoop系統中從頭裸寫MapReduce不現實了,ETL基本靠Hive,Pig, 還有Cascading,Scalding
- MapReduce並不是最優的,僅適合批處理,很多問題:JVM的啟動overhead很大,小 Job更明顯,數據必須先存儲,不適合叠代計算,延遲高。DB學術圈討論很久tradeoff 了,MapReduce: 一個巨大的倒退
Hadoop學習路線