Hadoop流程記錄如何跨塊邊界分割?根據(jù) Hadoop - The Definitive GuideFileInputFormats定義的邏輯記錄通常不適合HDFS塊。例如,TextInputFormat的邏輯記錄是行,它們將經(jīng)??缭紿DFS邊界。這與你的程序的功能沒(méi)有關(guān)系 - 例如,線(xiàn)路不會(huì)丟失或損壞 - 但它值得了解,因?yàn)樗_實(shí)意味著數(shù)據(jù)本地映射(即,與它們?cè)谕恢鳈C(jī)上運(yùn)行的映射)輸入數(shù)據(jù))將執(zhí)行一些遠(yuǎn)程讀取。這導(dǎo)致的輕微開(kāi)銷(xiāo)通常不顯著。假設(shè)記錄行分為兩個(gè)塊(b1和b2)。處理第一個(gè)塊(b1)的映射器將注意到最后一行沒(méi)有EOL分隔符,并從下一個(gè)數(shù)據(jù)塊中取出剩余的行(b2)。映射器如何處理第二個(gè)塊(b2)如何確定第一個(gè)記錄是不完整的并且應(yīng)該從塊(b2)中的第二個(gè)記錄開(kāi)始處理?
Hadoop流程記錄如何跨塊邊界分割?
小唯快跑啊
2019-07-25 19:24:23