input-split

    4熱度

    2回答

    我有100 TB的一個文本文件,它具有多條記錄。我們沒有給出每個記錄需要多少行。一條記錄可以是5行,其他可能是6行,另一條可能是4行。它不確定每條記錄的線路大小可能會有所不同。 所以我不能使用默認的TextInputFormat,我寫了我自己的inputformat和一個自定義的記錄閱讀器,但我的困惑是:當發生分裂時,我不確定每個分裂是否包含完整記錄。記錄的某些部分可以在分裂1中進行,另一部分在分

    4熱度

    2回答

    我有一個日誌文件,如下 Begin ... 12-07-2008 02:00:05 ----> record1 incidentID: inc001 description: blah blah blah owner: abc status: resolved end .... 13-07-2008 02:00:05 Begin ... 12-07-2008 03:00:05

    0熱度

    1回答

    我擴展了Hadoop的InputSplit類來計算我的自定義輸入分割,但是當我返回一個特定的HostIP(即datanode IP)作爲字符串覆蓋getLocations(),它的Map任務沒有在該HostIP上執行,而是在其他某個上執行。對於沒有在該特定HostIP上執行的問題,這會是什麼問題?

    0熱度

    1回答

    我正在使用傑克遜來處理JSON在Hadoop中的塊。這意味着,它們是大塊文件(在我的問題中它是128M但它並不重要)。 出於效率的原因,我需要它流式傳輸(不可能在內存中構建整個樹)。 我正在使用JsonParser和ObjectMapper的混合來讀取我的輸入。 目前,我正在使用不可拆分的自定義InputFormat,因此我可以閱讀我的整個JSON。 的(有效)JSON的結構是這樣的: [ { "

    0熱度

    1回答

    例子來說明這個問題 - 我有500MB大小的文件(input.csv) 該文件包含只有一行(記錄)在它 因此,如何該文件將存儲在HDFS塊中以及如何計算輸入分割?

    0熱度

    2回答

    我正在處理與地圖的一個文件減少文件大小爲1GB,我在HDFS中的默認塊大小爲64 MB,因此在這個例子中有多少輸入拆分,有多少映射器?

    0熱度

    1回答

    的我在佔據在HDFS兩個街區,複製在兩個節點上,A和B.每個節點的數據集的副本的CSV文件的數據集。 當Spark開始處理數據時,我已經看到Spark如何將數據集加載爲輸入的兩種方式。它要麼將整個數據集加載到一個節點的內存中,並執行其中的大部分任務,要麼將數據集加載到兩個節點中,並將兩個節點上的任務溢出(基於我在歷史記錄服務器上觀察到的情況)。對於這兩種情況,都有足夠的能力將整個數據集保存在內存中

    -1熱度

    1回答

    我正在使用flume將twitter數據下載到hdfs中。雖然我有超過2 GB的數據,但我的塊文件拆分小於64MB。 即第一個文件有300KB,第二個文件 - 566 KB。 這是爲什麼發生?

    2熱度

    1回答

    我讀過下面的wiki,但仍然無法澄清一件事。 https://wiki.apache.org/hadoop/HadoopMapReduce 說,我有一個大的文件,該文件分爲兩個HDFS塊和塊物理保存到兩臺不同的機器。考慮在本地承載這兩個塊的羣集中沒有這樣的節點。正如我理解的情況下TextInputFormat HDFS塊的大小通常與分割大小相同。現在,由於有2個分割,2個地圖實例將在2個獨立的機器

    1熱度

    1回答

    第一個問題:我想知道拆分是否以任何方式更改塊(即更改大小,將塊移到其他位置,創建新塊,...)。 第二個問題:我認爲拆分不會改變塊,但它指定每個MapTask應該是存在於數據或機架的意識,因爲的DataNodes已經在運行的局部性的集羣上運行,並且具有塊所以我認爲的分裂將告訴Hadoop在包含數據的節點旁邊運行MapTask。注意:在InputSplit中有我認爲用於此目的的位置/主機。 請糾正我