通过前面的介绍,我们已经能够看到管理员界面并对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. javascript的地基

    有了良好的基础,才能在其上创造有价值的东西. 回顾一下以往自己javascript应用的开发经历,似乎很少去思考和总结js的运行机制.现在我就来整理整理 1. 以<编译原理>的一段话开头: ...

  2. AX 插入一条记录提示表记录已经存在,但是该记录实际上是不存在的。

    做测试的时候遇到一个情况"AX 插入一条记录提示表记录已经存在,但是该记录实际上是不存在的." 检查到该表(TABLE_ABC)所有的key都是AllowDuplicate的, 继 ...

  3. MongoDB(七)MongoDb数据结构

    首先,向数据库插入一条bjson数据 首先是定义文档,然后使用admin用户名密码登录,进入test数据库,向test数据库中插入此文档("表名称和表中的记录") 插入结果,查看m ...

  4. asp.net MVC上传图片完整方法

    图片上传 自动创建文件夹并重命名(带缩略图) 后台: [HttpPost] public ActionResult WanSell_UploadPicture(ProductGalleryModels ...

  5. mybatis支持属性使用驼峰的命名

    数据库字段,我们一般都用下划线分隔 但是Model中的属性,一般用驼峰命名 如果需要自动映射,则配置mybatis-config.xml文件 <settings> <setting ...

  6. 偶的《javascript框架设计》终于出版

    #cnblogs_post_body p{ text-indent:2em!important; } 历时两年多,我的书终于付梓出版了.应各方面的要求,写软文一篇,隆重介绍一下此书对各位程序员的钱途有 ...

  7. Gvim插件管理Vundle

    之前关于gvim的博客中提到的很多插件安装比较繁琐,这一篇来介绍一下gvim管理插件的插件--vundle的安装以及使用,让givm的插件安装更加的简单 首先给出vundle的git地址 https: ...

  8. html5 canvas画不出图像的原因

    很久没写博客了,今年过年的时候,家里出了意外,现在心里依然很难受.6月份之前一直忙着写毕业论文,答辩完6月初回公司继续上班,今天刚好周末有空,就写下之前碰到一个问题. 做一个图像查看器(基于Chrom ...

  9. mssql分页存储过程

    本文转自百度文库http://wenku.baidu.com/view/8f6ec149fe4733687e21aa72.html 必须有主键 原代码 Codeuse users go if exis ...

  10. ngx.lua中遇到的小问题2

    用lua+drizzle在数据库中插入数据失败(不能访问数据库) 后面发现原来是nginx配置文件中的drizzle模块部分最后多了一行  content_by_lua 'ngx.say(" ...