前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。
简介
Solr 是基于 Apache Lucene 的搜索引擎平台。它用 Java 编写,并使用 Lucene 库来实现索引。可以通过各种 REST API(例如 XML 和 JSON)访问。以下是它们网站上的功能列表:
先进的全文搜索功能针对高流量网站进行优化基于标准的开放接口 - XML、JSON 和 HTTP全面的 HTML 管理界面通过 JMX 公开的服务器统计信息,用于监控线性可扩展,自动索引复制,自动故障转移和恢复近实时索引灵活且可通过 XML 配置进行适应可扩展的插件架构在本文中,我将向您展示如何使用两种不同的方法在 Ubuntu 上安装 Solr。第一种方法是简单方法,第二种方法是更高级的方法。我推荐使用第二种方法,因为它可以在所有 Ubuntu 版本上安装更新版本的 Solr,甚至是在撰写本文时最新的版本 14.04。
使用 apt-get 安装 Solr(简单方法)
如果您想以简单的方式安装 Solr,您应该使用本文的这一部分。Solr 不能单独运行;它需要一个 Java servlet 容器,如 Tomcat 或 Jetty。在本文中,我们将使用 Jetty,尽管 Tomcat 也同样简单。首先,我们应该安装 Java JDK。如果您想安装自定义版本,请参阅本文。如果您想进行简单安装,请执行以下命令:
sudo apt-get -y install openjdk-7-jdkmkdir /usr/javaln -s /usr/lib/jvm/java-7-openjdk-amd64 /usr/java/default
Ubuntu 默认提供 3 个 Solr 包:solr-common
,包含实际 Solr 代码的包;solr-tomcat
,集成了 Tomcat 的 Solr;以及 solr-jetty
,与 solr-tomcat
类似,但使用 Jetty web 服务器。在本文中,我们将安装 solr-tomcat
,因此执行以下命令:
sudo apt-get -y install solr-tomcat
您的 Solr 实例现在应该可以在 http://YOUR_IP:8080/solr
上访问。如果您想配置 Solr,请跳过下一节手动安装的部分。
手动安装 Solr
要手动安装 Solr,您需要花费更多时间。首先,我们应该安装 Java JDK。如果您想安装自定义版本,请参阅本文。在本节中,我们将使用 Jetty 而不是 Tomcat。如果您想进行简单安装,请执行以下命令:
sudo apt-get -y install openjdk-7-jdkmkdir /usr/javaln -s /usr/lib/jvm/java-7-openjdk-amd64 /usr/java/default
现在,我们可以开始真正的 Solr 安装。首先,下载所有文件并解压缩它们:
cd /optwget http://archive.apache.org/dist/lucene/solr/4.7.2/solr-4.7.2.tgztar -xvf solr-4.7.2.tgzcp -R solr-4.7.2/example /opt/solrcd /opt/solrjava -jar start.jar
通过访问 http://YOUR_IP:8983/solr
来检查是否正常工作。当它工作时,返回到 SSH 会话并使用 Ctrl+C 关闭窗口。然后打开 /etc/default/jetty
文件(nano /etc/default/jetty
)并将以下内容粘贴到其中:
NO_START=0 # Start on bootJAVA_OPTIONS="-Dsolr.solr.home=/opt/solr/solr $JAVA_OPTIONS"JAVA_HOME=/usr/java/defaultJETTY_HOME=/opt/solrJETTY_USER=solrJETTY_LOGS=/opt/solr/logs
保存并打开 /opt/solr/etc/jetty-logging.xml
文件(nano /opt/solr/etc/jetty-logging.xml
)并将以下内容粘贴到其中:
<?xml version="1.0"?><!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd"><!-- =============================================================== --><!-- Configure stderr and stdout to a Jetty rollover log file --><!-- this configuration file should be used in combination with --><!-- other configuration files. e.g. --><!-- java -jar start.jar etc/jetty-logging.xml etc/jetty.xml --><!-- =============================================================== --><Configure id="Server" class="org.mortbay.jetty.Server"> <New id="ServerLog" class="java.io.PrintStream"> <Arg> <New class="org.mortbay.util.RolloverFileOutputStream"> <Arg><SystemProperty name="jetty.logs" default="."/>/yyyy_mm_dd.stderrout.log</Arg> <Arg type="boolean">false</Arg> <Arg type="int">90</Arg> <Arg><Call class="java.util.TimeZone" name="getTimeZone"><Arg>GMT</Arg></Call></Arg> <Get id="ServerLogName" name="datedFilename"/> </New> </Arg> </New> <Call class="org.mortbay.log.Log" name="info"><Arg>Redirecting stderr/stdout to <Ref id="ServerLogName"/></Arg></Call> <Call class="java.lang.System" name="setErr"><Arg><Ref id="ServerLog"/></Arg></Call> <Call class="java.lang.System" name="setOut"><Arg><Ref id="ServerLog"/></Arg></Call></Configure>
然后,创建 Solr 用户并授予其权限:
sudo useradd -d /opt/solr -s /sbin/false solrsudo chown solr:solr -R /opt/solr
之后,下载启动文件并设置它在尚未完成的情况下自动启动:
sudo wget -O /etc/init.d/jetty http://dev.eclipse.org/svnroot/rt/org.eclipse.jetty/jetty/trunk/jetty-distribution/src/main/resources/bin/jetty.shsudo chmod a+x /etc/init.d/jettysudo update-rc.d jetty defaults
最后启动 Jetty/Solr:
sudo /etc/init.d/jetty start
现在,您可以像以前一样访问您的安装,网址为 http://YOUR_IP:8983/solr
。
为 Solr 配置 schema.xml
首先,将 /opt/solr/solr/collection1
重命名为一个可理解的名称,比如 apples(使用任何你喜欢的名称)。(如果你是通过 apt-get
安装的,可以跳过这一步。 在这种情况下,你可以执行以下命令代替:cd /usr/share/solr
):
cd /opt/solr/solrmv collection1 applescd apples
另外,如果你是手动安装 Solr,打开 core.properties 文件(nano core.properties
)并将名称更改为相同的名称。
然后,删除 data
目录并更改 schema.xml:
rm -R datanano conf/schema.xml
在这里粘贴你自己的 schema.xml。Solr 仓库中有一个非常先进的 schema.xml。你可能还可以在互联网上找到更多的 schema.xml,但我不会深入讨论这个。重新启动 Jetty/Tomcat:
对于简单安装:
sudo service tomcat6 restart
对于高级安装:
sudo /etc/init.d/jetty restart
现在当你访问 Solr 实例时,你应该能在某个地方看到仪表板和集合。
结论
你现在已经成功安装了 Solr,并可以开始在你自己的网站上使用它!如果你不知道如何制作 schema.xml,请找一个关于如何做到这一点的教程。然后,找一个与 Solr 连接的编程语言库。