Hadoop檔案的儲存格式

2021-08-18 00:12:24 字數 1615 閱讀 8534

純文字格式,若干行記錄。預設用字元編碼儲存

sequencefile格式(順序檔案格式,可進行切割)

key-value 格式進行儲存,最終形成的是乙個二進位制檔案, 需用hadoop提供的api進行寫入儲存。

編寫 寫入 seq檔案案例。

configuration configuration = new configuration();

configuration.set("fs.defaultfs","hdfs://s100:8020");

filesystem filesystem = filesystem.get(configuration);

path path = new path("hdfs://s100:8020/user/seqmyfile.seq");

sequencefile.writer writer = sequencefile.createwriter(filesystem, configuration, path, intwritable.class, text.class);

writer.close();

編寫讀取 seq 檔案案例

configuration configuration = new

configuration();

configuration.set("fs.defaultfs","hdfs://s100:8020");

filesystem filesystem = filesystem.get(configuration);

path path = new

path("hdfs://s100:8020/user/seqmyfile.seq");

sequencefile.reader sr = new

sequencefile.reader(filesystem,path,configuration);

intwritable key = new

intwritable();

text value = new

text();

while (sr.next(key,value))

檢視檔案內容

$> hdfs dfs -text /user/myfile.seq

$> hdfs dfs -cat /user/myfile.seq (此命令檢視會出現亂碼)

seq+版本號+key型別class+value型別class + 壓縮格式型別

/**

* 讀取檔案位置

*/public

void

seekseq

()throws ioexception

/*** 讀取seqfile 同步點

*/public

void

sync

()throws ioexception

包含兩個檔案

index 檔案:索引和偏移量的對映,可以設定間隔,預設128(解釋:第128key位置--->第256位元組 指存入128個key 對應的 第128key的末尾位置是第128位元組的位置。)

data 檔案:存放真實的資料。格式為key -value 。和seqfile檔案類似

hadoop的HDFS檔案儲存

1 什麼是hdfs?hdfs適合做 儲存大檔案。上g t甚至p。一次寫入,多次讀取。並且每次作業都要讀取大部分的資料。搭建在普通商業機群上就可以了。雖然會經常宕機,但hdfs有良好的容錯機制。hdfs不適合做 實時資料獲取。如果有這個需求可以用hbase。很多小檔案。因為namenode要儲存hdf...

Excel檔案的儲存格式

名稱 值副檔名 描述xladdin 18xla 97 2003 載入巨集xladdin8 18xla 97 2003 載入巨集xlcsv 6csv csvxlcsvmac 22macintosh csv xlcsvmsdos 24msdos csv xlcsvwindows 23windows cs...

HIVE檔案儲存格式

hive檔案儲存格式包括以下幾類 textfile sequencefile rcfile orcfile 其中textfile為預設格式,建表時不指定預設為這個格式,匯入資料時會直接把資料檔案拷貝到hdfs上不進行處理。sequencefile,rcfile,orcfile格式的表不能直接從本地檔...