通过使用不同的集合,可以在节点存储(Oak)和公用存储(SRP)之间共享Apache Solr安装。
如果Oak和SRP集合都被集中使用,则可能出于性能原因安装第二个Solr。
对于生产环境,SolrCloud模式比独立模式(单个本地Solr设置)提供更高的性能。
下载和安装Apache Solr:
Solr需要Java 1.7或更高版本
无需服务
运行模式的选择:
多语言搜索选择(MLS)
建 议生产环境使用SolrCloudmode。在SolrCloud模式下运行时,必须先安装并配置SolrCloud,然后再安装多语言搜索(MLS)。
建议按照SolrCloud说明进行安装:
还建议配置JVM以调整内存使用和垃圾收集。
JVM_OPTS="-server -Xmx2048m -XX:MaxPermSize=768M -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -Xloggc:../logs/gc.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Djava.awt.headless=true"
在SolrCloud模式下运行时,在安装MLS之前,必须使用并了解以下SolrCloud设置命令。
参考:
https://cwiki.apache.org/confluence/display/solr/Command+Line+Utilities
用法:
sh./scripts/cloud-scripts/zkcli.sh
-cmd upconfig
-zkhost server:port
-confname *myconfig-name *
-solrhome solr-home-path
-confidir config-dir
使用:
./bin/solr create
-c mycollection-name
-d config-dir
-n myconfig-name
-p 端口
-s number-of-shards
-rf number-of-replicas
将集合链接到已上传到ZooKeeper的配置。
参考:
https://cwiki.apache.org/confluence/display/solr/Command+Line+Utilities
用法:
sh./scripts/cloud-scripts/zkcli.sh
-cmd linkconfig
-zkhost server:port
-collection mycollection-name
-confname myconfig-name
AEM Communities的多语言搜索(MLS)是为Solr平台构建的,旨在提供跨所有支持语言(包括英语)的改进搜索。
AEM社区的MLS可以作为标准MLS或高级MLS提供。 标准MLS仅包括Solr配置设置,并且不包括任何插件或资源文件。 高级MLS是更全面的解决方案,包括Solr配置设置以及插件和相关资源
标准MLS包括对以下语言的内容搜索的增强:
高级MLS包括对以下语言的内容搜索的增强:
高级MLS支持以下33种语言。
阿拉伯语 | 德语 | 挪威语 |
---|---|---|
保加利亚语 | 希腊语 | 波兰语 |
中文(简体) | 海地克里奥尔 | 葡萄牙语 |
中文(繁体) | 希伯来语 | 罗马尼亚语 |
捷克语 | 匈牙利语 | 俄语 |
丹麦语 | 印尼语 | 斯洛伐克语 |
荷兰语 | 意大利语 | 斯洛文尼亚语 |
英语 | 日语 | 西班牙语 |
爱沙尼亚语 | 韩语 | 瑞典语 |
芬兰语 | 拉脱维亚语 | 泰语 |
法语 | 立陶宛语 | 土耳其语 |
注意:AEM 6.1指AEM 6.1 Communities FP3及更早版本。
对于SRP集合(MSRP或DSRP),要支持标准多语言搜索(MLS),必须修改两个Solr的配置文件:
Solr 4.10的标准MLS文件(模式.xml、solrconfig.xml)。
适用于Solr 5.x的标准MLS文件(模式.xml、solrconfig.xml)。
标准MLS文件存储在AEM存储库中。
注意:Solr文件存储在msrp/文件夹中,也用于DSRP(无需更改)。
下载说明:替换 solrX
为 solr4
或 solr5
酌情。
使用CRXDE|Lite,找到:
/libs/social/config/datastore/msrp/solrX/schema.xml
/libs/social/config/datastore/msrp/solrX/solrconfig.xml
下载到部署了Solr的本地服务器。
jcr:content
节点的jcr:data
属性。view
以开始下载。按照独立或SolrCloud模式的安装说明操作。
在SolrCloud模式下安装和配置Solr。
准备新配置:
创建新配置目录*,如solr-install-dir*/myconfig/
将现有Solr配置目录的内容复制到new-config-dir
solr-install-dir/example/solr/collection1/conf/
solr-install-dir/server/solr/configsets/data_driven_schema_configs/
将下载的模式.xml和solrconfig.xml复制到new-config-dir以覆盖现有文件。
将新配置上 传到ZooKeeper。
创建一 个集合,指定必要的参数,如分片数、副本数和配置名称。
如果在创建集合时*未提供配置名称,则将新创建的集合与上传到ZooKeeper的配置链接起来。
对于MSRP,运行MSRP重新索引工具,除非这是新安装。
以独立模式安装Solr。
如果运行Solr5,请创建集合1(与Solr4相似):
./bin/solr start
./bin/solr create_core -c collection1 -d sample_techproducts_configs
备份Solr配置目录中的模式和solrconfig.xml,如:
solr-install-dir/example/solr/collection1/conf/
solr-install-dir/server/solr/collection1/conf/
将下载的模式.xml和solrconfig.xml复制到同一目录。
重新启动Solr。
对于MSRP,运行MSRP重新索引工具,除非这是新安装。
要支持高级MLS的SRP集合(MSRP或DSRP),除了自定义模式和Solr配置外,还需要新的Solr插件。 所有必需项目都打包到一个可下载的zip文件中。 此外,在独立模式下部署Solr时,还包含一个安装脚本。
要获取高级MLS包,请参阅文档部署部分中的AEM高级MLS。
要开始安装SolrCloud或独立模式,请执行以下操作:
安装说明——注意Solr4和Solr5的几点区别:
在SolrCloud模式下安装和配置Solr。
将高级MLS包的内容解压到磁盘。 内容应包括:
准备新配置:
创建new-config-dir
solr-install-dir/myconfig/
stopwords/
和lang/
将现有Solr配置目录的内容复制到new-config-dir
solr-install-dir/example/solr/collection1/conf/
solr-install-dir/server/solr/configsets/data_driven_schema_configs/
将提取的模式和solrconfig.xml复制到new-config-dir以覆盖现有文件。
对于Solr5:将solr_install_dir/server/solr/configsets/sample_techproducts_configs/conf/lang/*.txt
复制到new-config-dir/lang/
将提取的stopwords/文件夹复制到new-config-dir,结果为new-config-dir/stopwords/*.txt
将新配置上 传到ZooKeeper
复制新的用户档案/文件夹……
在SolrCloud中每个节点的solr-home目录(包含solr.xml)中创建一个lib/文件夹。 将以下位置的jar复制到每个节点上的新lib/文件夹:
创建一 个集合,指定必要的参数,如分片数、副本数和配置名称。
如果配置名称在创建集合时未提供**,则将此新创建的集合与上传到ZooKeeper的配置链接到链接。
对于MSRP,运行MSRP重新索引工具,除非这是新安装。
高级MLS包中包含安装脚本。
将包的内容解压缩到承载独立Solr服务器的服务器后,只需执行安装脚本即可安装必要的资源和配置文件。
以独立模式安装Solr。
如果运行Solr5,请创建集合1(与Solr4相似):
./bin/solr start
./bin/solr create_core -c collection1 -d sample_techproducts_configs
运行安装脚本:安装[-v 4|5] [-d solhome] [-c集合路径]
其中:
-d solhome
Solr安装目录
-c集合路径
Solr中的集合路径
–帮助
打印命令行选项
-v [4|5]
为solr设置版本
Solr 4.10.4的示例:
Solr 5.4.0的示例:
注意:
solrconfig.xml文件控制自动提交间隔和搜索可见性,并需要测试和调整。
<autoCommit>
:默认情况下,自动提交间隔(即对稳定存储的硬提交)设置为15秒。搜索可见性默认为使用预提交索引。
要将搜索更改为使用已更新的索引来反映由提交引起的更改,请将包含的openSearcher
更改为true。
autoSoftCommit
:“soft”提交可确保更改可见(索引已更新),但不确保更改同步到稳定存储(硬提交)。结果是性能得到改进。 默认情况下,autoSoftCommit
处于禁用状态,包含的maxTime
设置为-1。