原创 SequenceFile使用隨筆

hadoop不適合小文件,所以需要對小文件進行額外處理,常使用SequenceFile,下面是剛剛使用SequenceFile的感悟。 1.創建sequenceFile public static void main(String[] a

原创 MR源碼學習(一)

首先說一下MR的執行過程,再按照執行順序閱讀源碼。 1.map階段: 1.1讀取文件內容,把每一行解析成一個<k1,v1>鍵值對。默認的key是每一行文本的偏移量,value是每一行的內容。 1.2自定義map函數,對<k1,v1>進行處

原创 HDFS(3)

1.繼續研究HDFS寫操作的源碼過程,客戶端通過DistributedFileststem中的create方法創建文件。結構與上一篇讀文件的操作類似,會執行FileSystemLinkResolver的resolve方法,即調用doca

原创 HashMap源代碼

HashMap是最常使用的類,所以學習它的源碼很重要。 HashMap的結構如下: /** * The table, resized as necessary. Length MUST Always be a power o

原创 MR源碼學習(二)

繼續之前的源碼學習,上一篇分析了InputFormat的getSplits()方法,接下來是createRecordReader()方法。 從這裏可以看到該方法爲一個split創建一個recordReader,並且在使用split之前會

原创 MR源碼學習(三)

job.setOutputFormatClass(TextOutputFormat.class);學習MR的輸出過程,依然是從上面的代碼作爲入口,默認的輸出格式是TextOutputFormat類。先不看TextOutputFormat類

原创 kafka初步認識

名詞解釋 producer:消息生產者,向kafka集羣發送消息,它是一個程序 consumer:消息消費者,從kafka集羣獲取數據,它是一個程序 broker:kafka集羣的最小組成單元,它是一個服務 topic:kafka將

原创 IDEA常用快捷鍵

剛剛使用IDEA,有點不習慣,記錄下目前工作中常用的快捷鍵。 ctrl+shift+space 提示 ctrl+alt+v 抽取變量 ctrl+x 刪除一行 ctrl+d 複製當前行 ctrl+alt+l 格式化代碼 ctrl+n 打開類

原创 重新出發

最近在找實習,被虐慘了,有很多深刻的感悟,重新出發,爲了幾個月後的校招衝刺。之前學習的眼光太狹隘,實習準備也不充足,看了牛客網的各種面經,發現自己之前的學習重點完全不對,基礎太不紮實了,IO,網絡,多線程

原创 HDFS(2)

HDFS中讀文件過程,如上圖所示。 1.通過fs(filesystem)的open方法讀取文件。因爲這裏的系統的分佈式系統, 所以完成open方法的類是DistributedFileSystem,查看open方法。 @Override