用于配置solr实例的zc.buildout

collective.recipe.solrinstance的Python项目详细描述


配置solr实例的配方

配方配置solr索引服务器的实例。索尔 是一个基于 Java的开源企业搜索服务器 搜索库,带有xml/http和json api,hit highlighting,faceted 搜索、缓存、复制和Web管理界面

Git存储库和问题跟踪程序: https://github.com/collective/collective.recipe.solrinstance

特拉维西

注意事项

  • 此配方版本支持Solr3.5、4.x(包括4.0、4.1、4.2 4.5)。如果您使用Solr 1.4,请使用2.x系列的发行版。
  • 此版本仅支持genshi模板。请使用释放 小于5.x,如果您需要模板化而不需要 支持Python3。如果需要Python3支持,则必须转换 使用genshi文本模板语言的任何自定义模板。

支持的选项

配方支持以下选项。

solr服务器

< dl >
Solr位置
solr安装位置的路径。这应该是 顶级安装目录。
主机
solr服务器的名称或IP地址,例如some.server.com。 默认为 本地主机
端口
服务器端口。默认为 8983
基本路径

服务器上solr服务的基本路径。指向 Solr服务将由以下人员组成:

$host:$port/$basepath

实际命令将附加到其中。默认为 /solr

vardir
对solr所在目录位置的可选重写 存储其索引和日志文件。默认为 ${buildout:directory}/var/solr 。此选项和 脚本 选项可以在 单个构建并将一个或多个实例专用于 自动功能测试。
日志目录
solr日志文件位置的可选覆盖。 默认为 ${buildout:directory}/var/solr
PID路径
solr pid文件位置的可选覆盖。 默认为 ${buildout:directory}/var/solr
码头模板
jetty.xml模板的可选重写。默认为 模板/jetty.xml.tmpl
日志4j模板
可选超程用于 log4j.properties 模板的IDE。默认为 模板/log4j.properties.tmpl
日志模板
日志记录属性模板的可选重写。默认为 模板/logging.properties.tmpl
码头目的地
可选覆盖 jetty.xml 文件所在的目录 将生成。默认为Solr默认位置。
附加库
可选的包括自定义Java库。选择权 由冒号分隔的每行路径和正则表达式。 正则表达式是可选的,默认为 .*.jar (目录中的所有jar文件)。例子:

extralibs =
    /my/global/java/path
    some/special/libs:.*\.jarx
脚本
生成的solr实例名称的可选重写 控制脚本。默认为solr实例。这个选项和 vardir 选项使创建多个solr成为可能 单个构建中的实例,并将一个或多个 自动功能测试实例。
Java选择

可选。传递给Java虚拟机(JVM)的参数 奔跑。每个选项都在单独的行上指定。 例如:

[solr-instance]
...
java_opts =
  -Xms512M
  -Xmx1024M
...

Solr配置

< dl >
配置目标
对solrconfig.xml 将生成文件。默认为Solr默认位置。
配置模板
用于生成 solrconfig.xml的模板的可选重写 文件。默认为配方中包含的模板,即 模板/solrconfig.xml.tmpl
最大结果数
solr服务器返回的最大结果数。这将设置 用于请求处理程序的选项。默认为500。
最大搜索者数
后台可能正在升温的搜索者的最大数目。 默认为 4 。对于只读从机,建议设置为 1 2
使用冷搜索器
如果请求进入时没有可用的热搜索器,请立即使用 一个热心的搜索者来处理这个请求。默认为
合并因子
指定索引默认合并因子。这个值决定了 在合并到较大的段之前,存在大小相等的段。用 默认为 10 ,将在 它们合并成一个包含10000个文档的文档,然后 一旦达到该大小,就合并成包含100000个文档的文档。
兰布费西姆布
设置lucene索引用于缓冲的ram量 在将文档刷新到目录之前添加文档和删除。 默认为16MB。
解锁启动
如果 为真(配方默认值),则打开任何保留的写或提交锁 启动。这会破坏允许多个进程 安全访问lucene索引。
中止配置错误
如果设置为 true ,则如果存在 配置错误。这在调试开发环境中很有用 schema和solrconfig的潜在问题。默认为
拼写检查字段
配置用作拼写检查搜索组件源的字段。 默认值为 默认值
自动提交最大值
允许您启用自动提交处理,并在至少之后强制提交 添加了文档数。这在默认情况下是禁用的。
自动提交文本时间
允许您在 毫秒。这在默认情况下是禁用的。
更新
如果启用updatelog,则会添加一个附加字段 将在u中启用to schema和updatelogpdatehandler。这是必需的 如果要在solr>;4.0中使用原子更新。见: https://wiki.apache.org/solr/atomic_updates ,默认为 false
请求分析器启用远程流
让我们启用远程流。因为这是解决方案 默认值。
请求分析器multipartuploadlimitinkb
可选的 <;requestparsers/>; 参数在提交时很有用 要解决的非常大的文档。如果solr正在索引二进制文件,则可能是这种情况 从请求中提取。
目录工厂
solr4允许不同的目录工厂: Solr.StandardDirectoryFactory、Solr.MmapDirectoryFactory和 solr.niofdirectoryfactory、solr.simplefsdirectoryfactory和 solr.ramdirectoryfactory或solr.nrtachingdirectoryfactory。 默认值为:solr.nrtcachingdirectoryfactory 如果正在运行solr实例以对 应用程序可以使用solr.ramdirectoryfactory。
附加配置
可选的附加配置包含在 solrconfig.xml 。例如, <;requesthandler/>; 指令。
附加solrconfig查询
可选的附加配置包含在 solrconfig.xml的查询部分。 例如, <;listener/>; 指令。

缓存选项

查询缓存的细粒度控制,如 http://wiki.apache.org/solr/solrcaching

支持的选项有:

  • 过滤器缓存大小
  • 过滤器缓存初始大小
  • 过滤器cacheautowarmcount
  • 查询结果缓存大小
  • 查询结果缓存初始大小
  • 查询结果缓存自动计算
  • 文档缓存大小
  • 文档缓存初始大小
  • 文档缓存自动计算 (仅适用于Solr 4)

模式

< dl >
架构目标
对schema.xml 文件所在目录的可选重写 将生成。默认为Solr默认位置。
模式模板
用于生成schema.xml的模板的可选重写 文件。默认为配方中包含的模板,即 模板/schema.xml.tmpl
StopWords模板
用于生成stopWords.txt的模板的可选重写 文件。默认为配方中包含的模板,即 模板/stopWords.txt.tmpl
额外字段类型
配置可用于 索引 选项。您可以使用 分析器和标记器,检查solr的完整参考: http://wiki.apache.org/solr/analyzerstokenizerstokenfilters
附加配置文件
向conf文件夹添加额外的文件,如synonyms.txt或hunstall文件 https://wiki.apache.org/solr/hunstally
过滤器

为默认字段类型的分析器配置筛选器。 它们接受由给定的令牌赋予器生成的令牌并对其进行处理 在序列中添加、更改或移除标记。在所有过滤器之后 已应用,生成的令牌流将被索引到给定的 字段

此选项适用于给定字段的默认分析器–通过 默认情况下,solr认为这适用于 查询 索引 分析器。如果要配置单独的分析器,请参见 过滤查询和过滤R-索引 下面的选项。

每个过滤器在单独的线路上配置,每个过滤器将 按指定顺序应用于令牌(在solr操作期间)。

每行的内容应如下:

text solr.EdgeNGramFilterFactory minGramSize="2" maxGramSize="15" side="front"

在上面的示例中:

  • text 是内置字段类型之一的 类型;
  • solr.edgengramfilterfactory 是此筛选器的 类;并且
  • mingramsize="2" maxgramsize="15" side="front" 是参数 过滤器的配置。它们应该格式化为xml 属性。

默认情况下,对于默认分析器(同时是查询 和索引 ):

  • 文本 字段使用:
      过滤
    • Solr.icufoldingFilterFactory工厂
    • solr.worddelimiterfilterfactory
    • Solr.TrimFilterFactory公司
    • Solr.StopFilterFactory工厂

要抑制默认行为,请相应地配置 过滤器 选项。 如果不需要过滤器,则在 构建配置。在你不想的情况下这很有用 默认筛选器,并希望完全控制 每台分析仪。

检查Solr文档中的可用过滤器: http://wiki.apache.org/solr/analyzerstokenizerstokenfilters"tokenfilters"

筛选查询

仅为 查询 分析器的默认字段类型配置筛选器。 此选项类似于 过滤器,但仅适用于 查询 分析器 对于给定的字段。

配置语法与上面的 filter 选项相同。选项 此处指定的将添加到任何适用于 过滤器 选项。

过滤索引

仅为分析程序配置默认字段类型的筛选器。 此选项类似于 过滤器,但仅适用于 索引 分析器 对于给定的字段。

配置语法与上面的 filter 选项相同。选项 此处指定的将添加到任何适用于 过滤器 选项。

字符过滤器

为 默认字段类型。这些是输入字符的预处理器 在solr字段或查询(使用和生成字符流)中 可以在保留字符位置的同时添加、更改或删除字符 信息

此选项适用于给定字段的默认分析器–通过 默认情况下,solr认为这适用于 查询 索引 分析器。如果要配置单独的分析器,请参见 字符筛选查询和下面的字符筛选索引选项。

每个char过滤器都在一个单独的行上配置,如下所示 配置语法,如上面的 filter 选项。每个字符过滤器将 按指定顺序应用于令牌(在solr操作期间)。

默认情况下,没有为任何分析器指定字符过滤器。

有关可用字符筛选器的信息,请参阅 Solr的文档: http://wiki.apache.org/solr/analyzerstokenizerstokenfilters charfilterfactories

字符筛选查询

为查询分析器的默认字段类型配置字符过滤器 只有。此选项类似于字符过滤器,但仅适用于 查询给定字段类型的分析器。

配置语法与上面的 过滤器选项相同. 选项 此处指定的将添加到任何适用于 字符过滤器 选项。

字符筛选索引

为索引分析器的默认字段类型配置字符过滤器 只有。此选项类似于字符过滤器,但仅适用于 索引 给定字段类型的分析器。

配置语法与上面的 filter 选项相同。选项 此处指定的将添加到任何适用于 字符过滤器 选项。

标记器

为默认字段类型的分析器配置标记器。

此选项适用于给定字段的默认分析器–通过 默认情况下,solr认为这适用于 查询 索引 分析器。如果要配置单独的分析器,请参见 下面的标记器查询和标记器索引选项。

每个标记器都在一个单独的行上配置,如下所示 配置语法,如上面的 filter 选项。只有一个标记器 可以为给定字段类型的每个分析器类型指定。如果您指定 同一字段类型的多个标记器,最后一个指定的将 优先考虑。

默认情况下,对于默认分析器(同时是查询 和索引 ):

< Buff行情>
  • 使用solr.icutokinezerfactory标记字段
  • 使用 solr.whitespacetokenizerFactory工厂
标记器查询

为查询分析器的默认字段类型配置标记赋予器 只有。此选项类似于标记器,但仅适用于 查询给定字段类型的分析器。

配置语法与上面的 filter 选项相同。 此处指定的选项将覆盖使用main 标记器 选项。例如,如果您指定了 在 tokenizer 选项中的tokenizer,并重新指定另一个 这里的文本 标记器,则优先。其他领域 如果不重写,类型将不受影响。

标记器索引

为索引分析器的默认字段类型配置标记器 只有。此选项类似于标记器,但仅适用于 索引 给定字段类型的分析器。

配置语法与上面的 filter 选项相同。 此处指定的选项将覆盖使用main 标记器 选项。例如,如果您指定了 在 tokenizer 选项中的tokenizer,并重新指定另一个 这里的文本 标记器,则优先。其他领域 如果不重写,类型将不受影响。

索引

配置 Solr实例。每个字段都配置在一个单独的行上。各 行包含空格分隔的 [键]:[值]列表 定义与索引关联的选项的对。共同的 字段选项详见 http://wiki.apache.org/solr/schemaxml謺common謺u field謺options 和 如以下示例所示。

这里支持一个特殊的 [键]:[值] 对来支持 拷贝 字段 ;如果指定 copyfield:dest_field ,则a <;copyfield>; 声明将包含在将给定字段复制到的架构中 目的地字段

唯一键
用于声明字段对所有文档都是唯一的可选重写。 参见http://wiki.apache.org/solr/schemaxml" rel="nofollow">http://wiki.apache.org/solr/schemaxml了解更多信息 默认为"uid"。
默认搜索字段
配置默认搜索字段,当没有字段 明确给出。参见http://wiki.apache.org/solr/schemaxml" rel="nofollow">http://wiki.apache.org/solr/schemaxml
默认运算符
用于查询的默认运算符。有效值为 以及 。默认为
附加模式配置
可选的附加配置包含在 schema.xml 。例如,自定义指令 以及架构配置的其他部分(请参见 http://wiki.apache.org/solr/schemaxml )。
附加字段配置

位于 中的 <;fields>;..<;/fields>; 指令。用这个插入 动态字段。例如:

additionalFieldConfig =
    <dynamicField name="..." type="string" indexed="true" stored="true" />

默认为 '' (空字符串)。

多核

以下选项仅适用于 collective.recipe.solrinsity:mc 为 明确规定。如果使用的是普通配方,则它们是可选的。 solr实例部分中定义的所有选项都将继承到核心。 核心可以覆盖以前定义的选项。

< dl >
核心

对应的构建配置节的标识符列表 单个Solr核心配置。指定的每个标识符将 根据给定的选项处理与之相关的部分 为每个核心生成solr配置文件。参见多核 例如solr。

指定的每个标识符将导致solr instancedir 被 为solr的 solr.xml中的每个核心创建和条目 配置。

默认核心名称
可选。此选项控制将哪个核心设置为 未指定核心名称的传入请求。这相当于 在 http://wiki.apache.org/solr/coreadmin cores

Zope集成

< dl >
节名称
要为zope.conf生成的 产品配置节的名称。 默认为 solr
佐佩形态

生成到的配置段的可选重写 被其他配方包含在zope.conf中。默认为:

<product-config ${part:section-name}>
    address ${part:host}:${part:port}
    basepath ${part:basepath}
</product-config>

示例

单个解决方案

一个简单的例子,说明单个solr配置可以是这样的:

[buildout]
parts = solr-download
        solr

[solr-download]
recipe = hexagonit.recipe.download
strip-top-level-dir = true
url = http://mirrorservice.nomedia.no/apache.org//lucene/solr/3.5.0/apache-solr-3.5.0.zip

[solr]
recipe = collective.recipe.solrinstance
solr-location = ${solr-download:location}
host = 127.0.0.1
port = 1234
max-num-results = 500
section-name = SOLR
unique-key = uniqueID
index =
    name:uniqueID type:string indexed:true stored:true required:true
    name:Foo type:text copyfield:Baz
    name:Bar type:date indexed:false stored:false required:true multivalued:true omitnorms:true copyfield:Baz
    name:Foo bar type:text
    name:Baz type:text
    name:Everything type:text
filter =
    text solr.LowerCaseFilterFactory
char-filter-index =
    text solr.HTMLStripCharFilterFactory
tokenizer-query =
    text solr.WhitespaceTokenizerFactory
additional-schema-config =
    <copyField source="*" dest="Everything"/>

多核解决方案

要为多个核心配置solr,必须使用 集体配方溶液度:mc 配方。多核solr的一个例子 配置如下:

[buildout]
parts = solr-download
        solr-mc

[solr-download]
recipe = hexagonit.recipe.download
strip-top-level-dir = true
url = http://mirrorservice.nomedia.no/apache.org//lucene/solr/3.5.0/apache-solr-3.5.0.zip

[solr-mc]
recipe = collective.recipe.solrinstance:mc
solr-location = ${solr-download:location}
host = 127.0.0.1
port = 1234
section-name = SOLR
directoryFactory = solr.NRTCachingDirectoryFactory
cores = core1 core2

[core1]
max-num-results = 99
unique-key = uniqueID
index =
    name:uniqueID type:string indexed:true stored:true required:true
    name:Foo type:text copyfield:Baz
    name:Bar type:date indexed:false stored:false required:true multivalued:true omitnorms:true copyfield:Baz
    name:Foo bar type:text
    name:Baz type:text
    name:Everything type:text
filter =
    text solr.LowerCaseFilterFactory
char-filter-index =
    text solr.HTMLStripCharFilterFactory
tokenizer-query =
    text solr.WhitespaceTokenizerFactory
    text solr.LowerCaseFilterFactory
additional-schema-config =
    <copyField source="*" dest="Everything"/>

[core2]
max-num-results = 66
unique-key = uid
index =
    name:uid type:string indexed:true stored:true required:true
    name:La type:text
    name:Le type:date indexed:false stored:false required:true multivalued:true omitnorms:true
    name:Lau type:text
filter =
    text solr.LowerCaseFilterFactory
char-filter-query =
    text solr.HTMLStripCharFilterFactory
tokenizer-index =
    text solr.WhitespaceTokenizerFactory

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java使Eclipse在其控制台中显示最顶层的异常,而不是完整的堆栈跟踪   java如何为一个组件提供多个DropTargetListener?   在Eclipse包资源管理器中,有些文件不可见?   java在Spring Boot中使用@Bean配置设置类属性的默认值   在JTextPane中使用#链接的Java HTML?   java当应用程序打开时,如何将通知内容发送给活动?   java Android ROOM如何编写包含多个实体的查询,这是在哪里完成的?   Play Framework的java登录/注销问题?   java如何从安卓 Cordova/Phonegap调用javascript函数   JavaFX8如何在Java8中显示上次修改的LocalDateTime?   javabean验证中的多个约束注释   java使用JSTL设置请求属性   java在Android启动的服务中调用函数   用于检查xml是否包含键和值的java XPath表达式   在java游戏中使用斜坡因子挥杆   Java文件:尝试使用FileWriter将结果附加到已经存在的文件中   bootclasspath Java Xbootclasspath,相对路径   java我如何让这个“怪物战斗模拟器”工作?   swing使用动作侦听器隐藏和显示java桌面应用程序