`
weitao1026
  • 浏览: 1059954 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

段文件格式的组成以及结构

阅读更多
介绍了段文件格式的组成以及结构,那么本篇呢,我们来分析下.fnm这个文件

这个文件存储的主要是域(Fileds)字段名,在索引文件中的后缀名为.fnm。
下面先来看下.fnm的数据类型。


Header--> CodecHeader
FieldsCount-->VInt
FieldName-->String
FieldBits, DocValuesBits-->Byte
FieldNumber-->VInt
Attributes-->Map<String,String>
DocValuesGen-->Int64



详细描述如下:

FieldsCount:记录的是域名在当前文件的数量
FieldName:域名在文件中保存为UTF-8字符串
FieldNumber:字段的编号,
FieldBits:一个字节包含字段的选项信息
(1)低阶位是1代表是索引字段,bit为0代表非索引(Indexs)字段
(2)第二个低阶位是1代表有向量存储,bit为0代表无向量(term vectors)存储
(3)第三个低阶位被设置成(0x4),offsets(偏移量)将会被存储在倒排链表里,除了位置信息
(4)第四个bit位从未被使用过
(5)第五个bit位被设置成(0x10),norm(加权基准)将会被忽略在索引字段里
(6)第六个bit位被设置成(0x20),payload(载荷)将会被被存储在索引字段里
(7)第七个bit位被设置成(0x40),term frequencies(词频) and positions(位置)将会在索引字段里被忽略
(8)第八个bit位被设置成(0x80),positions(位置)信息,将不会被忽略在索引字段里
DocValuesBits:
一个字节包含每个文档的值类型,这个被记录用2个4位字节的int类型,高阶位代表(norms)加权基准的选项,
低阶位代表DocValues的选项,每个4位字节的整数可以被解码:

0:代表这个字段没有存储DocVlues
1:数字类型的NumericDocValues
2:二进制类型的BinaryDocValues
3:排序类型的SortedDocValues

DocValuesGen是字段的DocValues里面的数量,如果这个值为1,代表着
没有DocValues更新该字段,其他任何大于0的数字代表其被更新存储通过DocValuesFormat.

Attributes:一个K-V映射的编码的属性存储。



DocValuesFormat:作用是为每个文档进行编码以及解码的工作,如果有自己定义的格式需要加入或扩展
可以继承改类,为了能够使段文件读取,必须需要定义格式名,这个方法使用的是JAVA的SPI进行定义的
,在扩展的类里面必须有一个无参的构造函数以确保SPI可以解析。
分享到:
评论

相关推荐

    PE文件格式详细结构图

    总的来说,PE文件格式是Windows程序的基础,其详细结构图涵盖了从文件头到各个关键组成部分的所有细节,对于理解和分析Windows应用程序的内部工作原理至关重要。通过深入了解这个结构,开发者能够更好地调试、优化和...

    excle二进制文件格式结构分析

    Excel二进制文件格式结构分析涉及深入理解Microsoft Excel文件的内部存储机制,特别是那些以.xls为后缀的二进制工作簿文件。这类文件遵循特定的结构和规则,允许Excel应用程序准确地读取和写入数据。本文将围绕以下...

    office doc二进制文件格式解析

    本文将深入探讨DOC文件的结构、组成部分以及解析过程。 1. **文件结构** DOC文件由一系列二进制数据组成,这些数据包含了文档的文本、样式、图像和其他元素。文件通常以一个固定的文件头开始,紧接着是各个段落的...

    微软emf文件格式详解

    EMF文件格式的内部结构非常复杂,包括多个层次的数据结构,如记录头、记录体、对象表等。 1. **记录头**:定义了EMF文件的基本属性,如文件类型、版本号等。 2. **记录体**:包含了实际的绘图指令,这些指令按照...

    DLIS文件格式 Dlis

    DLIS文件格式主要由记录和逻辑文件组成。记录是DLIS文件的基本组成部分,逻辑文件是记录的集合。DLIS记录格式通常可以分为逻辑记录和物理记录两种。 逻辑记录是DLIS文件的逻辑组成部分,主要包括记录头、记录体和...

    分析文件格式(中).pdf分析文件格式(中).pdf

    ### 分析文件格式——理解CRX文件的目录结构 #### 一、CRX文件的基本概念 CRX文件是一种特殊的文件格式,通常用于Chrome扩展程序的打包。从给定的信息来看,CRX文件不仅仅是一个普通的压缩文件,而是被视为一个...

    PE文件格式 ELF文件格式详解

    PE格式是Windows操作系统中的核心组成部分,用于存储可执行程序、动态链接库(DLLs)以及驱动程序等。一个PE文件由多个部分组成,包括DOS头、PE头、节表、节区等。DOS头是一个历史遗留的元素,用于在DOS环境下识别PE...

    pe可执行文件的结构详细讲解图

    根据提供的标题、描述、标签及部分内容,我们可以了解到这段材料主要涉及PE(Portable Executable)文件格式中的具体结构细节。PE文件格式是Windows操作系统下的一种标准的可执行文件格式,广泛应用于EXE、DLL以及...

    详解详解windows的PE文件格式.zip_PE 文件格式_PE格式解析_windows PE

    **Windows PE文件格式详解*...通过以上分析,我们可以看出,Windows PE文件格式是一个复杂但有序的结构,它使得程序在Windows环境下高效、可靠地运行。深入理解PE文件格式,对编程、调试和系统分析工作都有极大的帮助。

    windows pe文件格式

    PE文件格式的核心在于其结构化设计,它由多个部分组成,包括但不限于DOS头、PE头、节表等。 ##### 1. DOS头 DOS头(DOS Header)是PE文件的第一部分,它主要包含了一个小型的DOS程序,这个程序的作用是在不支持PE...

    ELF文件格式分析.pdf

    如目标文件格式示意图、ELF Header数据结构、节区头部数据结构、符号表项格式定义、重定位表项的格式、程序头部数据结构、注释节区示例、可执行文件布局示例、动态节区符号结构、绝对过程链接表、位置独立的过程链接...

    PE文件结构详解

    为了更好地理解和利用PE文件格式,下面将详细介绍其各个组成部分。 #### 三、PE文件的关键组件 ##### 1. MS-DOS头部(实模式头部) PE文件的开头部分是MS-DOS头部,这部分是为了保持向后兼容性而保留的。MS-DOS...

    ttf文件结构说明

    由于TTF文件格式包含大量的细节,实际操作时可能需要对每个特定的表有进一步的了解,例如glyf表(用于存储字形轮廓信息)或cmap表(用于字符到字形的映射),以及对TTF字体进行修改或创建所需的特定技术知识。

    15种文件的数据结构

    1. **MID文件数据结构**:MIDI(Musical Instrument Digital Interface)文件是一种存储音乐乐谱信息的数字格式,它不包含实际声音,而是描述乐器如何演奏的指令。MID文件由多个事件组成,如音符、节奏和控制器变化...

    emf文件格式详解

    2. **多记录结构**:EMF文件由一系列记录组成,每个记录代表一个图形操作,如画线、填充区域或设置颜色。 3. **设备独立性**:EMF格式不依赖于特定的显示器或打印机,因此可以在不同设备间保持一致性。 4. **颜色和...

    PE文件格式详解pdf中文版

    通过本文的介绍,读者可以了解到PE文件格式的基本结构及其组成部分的作用,这对于从事Windows平台软件开发的技术人员来说是非常有价值的。此外,提供的工具和示例程序也为进一步探索PE文件格式提供了便利。

    图像文件格式、结构.doc

    【图像文件格式、结构】 图像文件格式是存储和交换数字图像数据的标准,它们定义了如何组织像素信息、颜色模式、压缩方法以及元数据等。在众多的图像文件格式中,BMP(Bitmap File)是Windows操作系统广泛采用的一...

    Mapgis文件格式详解

    这里我们将深入探讨MapGIS文件格式的结构,以帮助开发者更好地理解和操作这些文件。 1. **点文件结构** - **文件头**:每个点文件的开头是8个字节的文件头,标识文件类型,如“WMAP9022”。 - **点数**:紧跟文件...

    Photoshop的psd文件格式

    这篇英文文档深入介绍了PSD文件的内部结构,对于那些想要编写程序来读取或写入这种文件格式的开发者来说,是一份极其重要的参考资料。 PSD文件的结构可以分为几个主要部分: 1. **文件头**:文件头包含了文件的...

    ELF文件格式分析

    3. Sections:ELF文件中的主要组成部分,如代码段、数据段、符号表、重定位表、字符串表等。 4. Symbol Table:存储了文件中的符号信息,包括符号名称、类型、位置等。 5. Relocation Table:提供了需要修正位置的...

Global site tag (gtag.js) - Google Analytics