1.hadoop流
hadoop流提供了乙個api,允許使用者使用任何指令碼語言編寫map函式或reduce函式,hadoop流的關鍵是,它使用unix標準流作為程式與hadoop之間的介面。
2.hadoop join
(1)reduce側連線
(2)map端連線
基於distributedcache的複製聯結
(3)半聯結:map側過濾後在reduce側聯結
如果較小的資料來源仍不能放到記憶體中,那麼可以將較小的資料來源的鍵全部取出來新建乙個儲存鍵列表的檔案,在map階段,使用distributedcache將key值檔案複製到各個tasktracker上,去除不需要的或者不對應的資料來源中的key值列表,剩下的操作和reduce側連線相同了。
(4)reduce側聯結+bloom filter
在某些情況下,側聯結抽取出來的小表的key集合在記憶體中仍然存放不下,這時候可以使用bloomfiler以節省空間。
3.setup cleanup 函式 task全域性,只執行一次,相對而言map reduce函式則是每乙個key都呼叫一次。
4.mapreduce job中全域性共享資料
(1)讀寫hdsf檔案
(2)配置job屬性configuration conf = new configuration();
conf.set("gprs_logact", gprs_logact);
在setup函式中
gprs_logact = integer.parseint(context.getconfiguration().get("gprs_logact", "29"));
(3)distributedcache 可以快取文字檔案,壓縮檔案,jar檔案
//取小表放到每個map端本地記憶體中,這行**必須在job開始之前
distributedcache.addcachefile(new path(nijpath).touri(), conf);
在setup函式或config函式中
path cachefiles = distributedcache.getlocalcachefiles(conf);
Hadoop基礎知識
hadoop 提供分布式的儲存 乙個檔案被拆分成很多個塊,並且以副本的方式儲存在各個節點中 和計算 是乙個分布式的系統基礎架構 使用者可以在不了解分布式底層細節的情況下使用 apache社群的頂級專案 x.apache.org,如 組成 優勢特點 擴充套件性 容錯性 海量資料儲存 工作機制 將檔案切...
Hadoop 基礎知識
hadoop 資料是儲存在hdfs,mapreduce 是一種計算框架,負責計算處理。hdfs上的資料儲存預設是本地節點資料乙份,同一機架不同節點乙份,不同機架不同節點乙份。預設是儲存3份 hdfs 儲存元資料資訊和儲存位置資訊,metadata。他們之間是通過檔名進行關聯的。datanode 節點...
Hadoop的基礎知識
src.tar.gz 是壓縮後的原始碼檔案,需要自己編譯才能安裝 src.tar.gz.mds 是 src.tar.gz 的校驗和 checksum 檔案 tar.gz 是經過壓縮的編譯好的安裝檔案 tar.gz.mds 是 tar.gz 的 checksum 檔案 一般用於linux安裝hadoo...