通过前面的介绍,我们已经能够看到管理员界面并对Solr形成了一个感性的认识。本篇将在物理上深入了解Solr的安装目录结构和Solr示例的主目录结构。
 

安装目录结构

  Solr 6.3.0安装文件夹里面包含很多内容。这里挑选一些重要的目录进行说明。目录结构如下:

  • bin:大量的Solr控制台管理工具存在该目录下。例如前面提到的solr\solr.cmd\post等。

    • contrib:该文件包含大量关于Solr的扩展。分别如下:
    • analysis-extras:该目录下面包含一些相互依赖的文本分析组件。
    • clustering:该目录下有一个用于集群检索结果的引擎。
    • dataimporthandler:DIH是Solr中一个重要的组件,该组件可以从数据库或者其他数据源导入数据到Solr中。
    • dataimporthandler-extras:这里面包含了对DIH的扩展。
    • extraction:集成Apache Tika,用于从普通格式文件中提取文本。
    • langid:该组件使得Solr拥有在建索引之前识别和检测文档语言的能力。
    • map-reduce:提供一些和Hadoop Map-Reduce协同工作的工具。
    • morphlines-cell:为Solr Cell类型的功能提供Kite Morphlines的特性。
    • morphlines-core:为Solr提供Kite Morphlines的特性。
    • uima:该目录包含用于集成Apache UIMA的库。
    • velocity:包含一个基于Velocity模板语言简单检索UI框架。
  • dist:在这里能找到Solr的核心JAR包和扩展JAR包。当我们试图把Solr嵌入到某个应用程序的时候会用到核心JAR包。
    • solrj-lib:包含构建基于Solr的客户端时会用到的JAR包。
    • test-framework:包含测试Solr时候会用到的JAR包。
  • docs:该文件夹里面存放的是Solr文档,离线的静态HTML文件,还有API的描述。但是个人觉得不是太有用,使用Solr Reference Guide更好。
  • example:包含Solr的简单示例。在其中的exampledocs子文件夹下存放着前面提到过的用于在Windows环境下发送文档到Solr的工具post.jar程序。
  • licenses:各种许可和协议。
  • server:在本地把Solr作为服务运行的必要文件都存放在这里。
    • contexts:启动Solr的Jetty网页的上下文配置。
    • etc:Jetty服务器配置文件,在这里可以把默认的8983端口改成其他的。
    • lib:Jetty服务器程序对应的可执行JAR包和响应的依赖包。
    • logs:默认情况下,日志将被输出到这个文件夹。
    • modules:http\https\server\ssl等配置模块。
    • resources:存放着Log4j的配置文件。这里可以改变输出日志的级别和位置等设置。
    • scripts:Solr运行的必要脚本。
    • solr:运行Solr的配置文件都保存在这里。solr.xml文件,提供全方位的配置;zoo.cfg文件,使用SolrCloud的时候有用。子文件夹/configsets存放着Solr的示例配置文件。
    • solr-webapp:前面已经提到过的管理界面的站点就存放在这里。
    • tmp:存放临时文件。

主目录结构

     前面提到过,如果启动的Solr实例不是示例中的一个,那么我们需要创建Core,这样才能顺利的完成索引的创建和查询过程。每创建一个Core,都会产生一个对应的文件夹,这个文件夹就是这里要提到的主目录,也是将来使用Solr的过程中会经常操作到的一类目录。需要说明的是,在“独立模式”和“云模式”下,主目录的结构是有些许差异的。
     独立模式下:
 <solr-home-directory>/
solr.xml
core_name1/
core.properties
conf/
solrconfig.xml
managed-schema
data/
core_name2/
core.properties
conf/
solrconfig.xml
managed-schema
data/

云模式下:

 <solr-home-directory>/
solr.xml
core_name1/
core.properties
data/
core_name2/
core.properties
data/
其中,有些文件是非常重要的:
  • solr.xml 为Solr服务器实例指定配置选项。具体如何配置,后面会专门讲解。
  • 在每一个Core里面:
    • core.properties为每一个Core指定了诸如名称,所属集合,schema的位置等等属性。
    • conf/solrconfig.xml控制高级行为。比如,你可以在该文件中指定数据目录的替代位置。
    • conf/managed-schema存放文档的描述。第三篇的创建Core小节提到过的数据驱动的Schema,就是在这里得到展现的,根据添加的不同的带索引文件,managed-schema文件的内容会依据推导出的类型动态的调整。Schema定义一个字段集合的文档。在这里既定义字段类型,又定义字段本身。字段类型定义非常的强大甚至还包含了Solr是如何处理进入字段的值和查询值得描述的。
    • data/该目录包含基础的索引文件。

04 Apache Solr: 目录结构的更多相关文章

  1. Apache禁止显示目录结构

    打开文件:httpd-vhosts.conf: 禁止显示Apache目录列表-Indexes FollowSymLinks如何修改目录的配置以禁止显示 Apache 目录列表.缺省情况下如果你在浏览器 ...

  2. Apache Tomcat目录结构与版本升级

    升级原因: 由于当前操作系统内的tomcat版本过低,存在大量高中危漏洞,存在一定的安全隐患.如下图所示,使用绿盟扫描器进行扫描爆出大量漏洞. 升级思路: 既然决定要升级,那么我觉得首先要做的就是自己 ...

  3. Apache目录结构解释

    源地址:http://blog.51cto.com/marsman/1913676 本文主要讲述apache主要目录结构及主要配置文件 1.apache目录结构 [root@test apache]# ...

  4. 禁止apache显示目录索引的常见方法(apache禁止列目录)

    禁止Apache显示目录索引,禁止Apache显示目录结构列表,禁止Apache浏览目录,这是网上提问比较多的,其实都是一个意思.下面说下禁止禁止Apache显示目录索引的常见的3种方法. 要实现禁止 ...

  5. 禁止apache显示目录索引 apache禁止列目录

    禁止Apache显示目录索引的常见的3种方法. 要实现禁止Apache显示目录索引,只需将Option中的Indexes去掉即可. 禁止Apache显示目录索引,禁止Apache显示目录结构列表,禁止 ...

  6. 禁止Apache显示目录索引的常见方法

    禁止Apache显示目录索引,禁止Apache显示目录结构列表,禁止Apache浏览目录,这是网上提问比较多的,其实都是一个意思.下面说下禁止禁止Apache显示目录索引的常见的3种方法. 要实现禁止 ...

  7. apache去掉目录浏览

    apache去掉目录浏览 apache默认开启目录浏览的,这样大大降低了我们网站的安全,下面是关闭浏览目录: 要禁止 Apache 显示目录结构列表,只需将 Option 中的 Indexes 去掉即 ...

  8. Solr 01 - 什么是Solr + Solr安装包目录结构说明

    目录 1 Solr概述 1.1 Solr是什么 1.2 Solr与Lucene的区别 2 Solr文件说明 2.1 Solr的目录结构 2.2 其他常用概念说明 2.3 创建基础文件目录 2.4 so ...

  9. Apache目录结构(一)

    一.Apache 目录结构 bin: 该目录用于存放apache常用的命令,比如httpd cig-bin:该目录存放linux下的常用命令 .sh conf:存放配置文件httpd.conf,在ht ...

随机推荐

  1. 您只能在 HTML 输出流中使用 document.write。如果您在文档已加载后使用它(比如在函数中),会覆盖整个文档。

    刚刚接触JS,看到这句话时一时没搞懂,想了终于有了一些眉目,意思就是在文档加载过后,如果我们用比方说按钮的方式重新加载文档,就会把文档都覆盖: 列如: <!DOCTYPE html> &l ...

  2. SpringBoot和数据库连接

    就像单机Java应用程序一样,和数据库连接需要DataSource,然后生成到数据库的Connection再进行数据库操作 SpringBoot和原生的JDBC 先看SpringBoot项目源码 从上 ...

  3. 利用JAVA生成二维码

    本文章整理于慕课网的学习视频<JAVA生成二维码>,如果想看视频内容请移步慕课网. 维基百科上对于二维码的解释. 二维条码是指在一维条码的基础上扩展出另一维具有可读性的条码,使用黑白矩形图 ...

  4. matplotlib 显示中文 与 latex冲突

    如果在使用中文之前包含了使用latex的语法: mpl.rcParams['text.usetex'] = True 将不能正确显示含有中文的图片. 附 显示中文的方法: from matplotli ...

  5. ueditor

    1:添加插件包 2:添加文件上传的jar包 3:页面引入ueditor插件 <!-- ueditor --><link type="text/css" href= ...

  6. phoenix将hdfs数据导入hbase

    http://phoenix.apache.org/bulk_dataload.html

  7. HTTP权威指南笔记-1.概述

    1.1 通讯 Web内容是存储在服务器上的,Web服务所使用的是HTTP协议,所以经常称为HTTP服务器.通讯过程为客户端(正常我们所使用的)发出请求,服务端根据客户端的HTTP请求响应相应数据,这就 ...

  8. Parquet与ORC:高性能列式存储格式(收藏)

    背景 随着大数据时代的到来,越来越多的数据流向了Hadoop生态圈,同时对于能够快速的从TB甚至PB级别的数据中获取有价值的数据对于一个产品和公司来说更加重要,在Hadoop生态圈的快速发展过程中,涌 ...

  9. kettle定时任务_第三方合作方有订单自动发送邮件通知_20161214

    由于和第三方合作,需要知道第三方合作方有了订单后通知对方,如果每天查看数据太麻烦了,因此想到了用Kettle定时任务,先判断系统里有没有订单,如果有就执行查询调取订单数据并发送邮件作业,如果没有则不执 ...

  10. splinter(python操作浏览器魔魁啊)

    from splinter import Browser def main(): browser = Browser() browser.visit('http://google.com') brow ...