天天看點

fdt檔案,以正排的方式,存儲了field的原始真實資料.也就是說,你添加到所有中的所有field内容.都會存儲在此檔案

作者:從頭開始自學java

fdt檔案,以正排的方式, 存儲了field的原始真實資料. 也就是說, 你添加到所有中的所有field内容. 都會存儲在此檔案中.

其中. 對于每一個chunk. 首先會存儲一個 ChunkHeader:

其中包括:

docBase : 目前chunk裡的第一個docID.

numBufferedDocs slice . 目前塊裡面緩沖了多少個doc, 可以根據docBase及num來算出每一個docId. 還以bit的方式存儲了目前chunk是否分片.

存儲每個文檔有多少個field. (數組)

存儲每個文檔的field資訊長度(位元組長度) (數組)

之後,會将目前chunk的所有field資訊進行壓縮存儲.

其中依次羅列了所有的doc, 每個doc中羅列了所有的field.

field資訊中, 存儲了:

FieldNumberAndType: field的編号及類型

Value: 實際的值, 根據不同類型(int,long,string,bytes等),存儲方法不同.

fdt檔案,以正排的方式,存儲了field的原始真實資料.也就是說,你添加到所有中的所有field内容.都會存儲在此檔案
fdt檔案,以正排的方式,存儲了field的原始真實資料.也就是說,你添加到所有中的所有field内容.都會存儲在此檔案
fdt檔案,以正排的方式,存儲了field的原始真實資料.也就是說,你添加到所有中的所有field内容.都會存儲在此檔案
fdt檔案,以正排的方式,存儲了field的原始真實資料.也就是說,你添加到所有中的所有field内容.都會存儲在此檔案