Skip to content

离线配置

Wenyi Duan edited this page Nov 2, 2022 · 11 revisions

简介

离线配置用于索引构建,在离线配置中可以设置索引表结构、数据处理方式、索引构建参数、分析器插件等。离线配置的目录必须是一个数字,在构建索引时,我们需要制定到配置目录的上一层目录,程序会自动使用目录下的最大配置版本进行索引构建。下面是一个离线配置目录的例子,也可以参考example/config/normal_config/offline_config/。

schemas

schemas是一个必须的目录,里面存储一个或多个表的索引结构配置。索引结构配置文件是一个json格式的文件,文件名由索引表名称和后缀”_schema.json“组成。索引结构配置文件的具体格式请参考。

data_tables

data_tables是一个必须的目录,里面存储一个或多个表数据处理配置,用于指导引擎在索引构建时如何对原始数据进行处理。数据处理配置文件是一个json格式的文件,文件名由索引表名称和后缀“_table.json”组成。数据处理配置文件的具体格式请参考。

clusters

clusters是一个必选的目录,里面存储一个和多个索引表构建时的具体参数。配置文件是一个json格式的文件,文件名由索引表名称和后缀“_cluster.json“组成。索引构建配置的具体格式请参考。

plugins

plugins是一个可选目录,里面存储用户自定义插件。

analyzer.json

analyzer.json是一个分析器配置文件,配置文件中指定了引擎所有可以使用的分析器,具体格式请参考。 分词器的配置包括analyzer配置、tokenizer配置以及繁简转换表配置三个部分,一个完整的分词器配置文件analyzer.json如下所示:

{   
    "analyzers":
    {
        "simple_analyzer":
        {   
            "tokenizer_name" : "simple_tab_tokenzier",
            "stopwords" : [],
            "normalize_options" :
            {
                "case_sensitive" : true,
                "traditional_sensitive" : true,
                "width_sensitive" : true
            }
        },
        "singlews_analyzer":
        {
            "tokenizer_name" : "singlews_tokenzier",
            "stopwords" : [],
            "normalize_options" :
            {
                "case_sensitive" : true,
                "traditional_sensitive" : true,
                "width_sensitive" : true
            }
        }
    },
    "tokenizer_config" : {
        "modules" : [
            {
                "module_name": "TokenizerModule1",
                "module_path": "libTokenizerModule1.so",
                "parameters": {
                }
            }
        ],
        "tokenizers" : [
            {
                "tokenizer_name" : "simple_tab_tokenzier",
                "tokenizer_type" : "simple",
                "module_name"    : "",
                "parameters": {
                    "delimiter" : "\t"
                }
            },
            {
                "tokenizer_name" : "singlews_tokenzier",
                "tokenizer_type" : "aliws",
                "module_name"    : "",
                "parameters": {
                }
            }
        ]
    },
    "traditional_tables": [
        {
            "table_name" : "table_name",
            "transform_table" : {
                "0x4E7E" : "0x4E7E"                                #设置繁体字"乾"不会被转换成简体字
            }
        }
    ]
}
Clone this wiki locally