当前位置: 首页 > news >正文

Solr6.6.0 用 SimplePostTool索引文件的启示

  本文主要是介绍通过SimplePostTool工具索引文件的结果进行确认,针对不同的文件,索引的结果不同。

  1、创建core

    首先启动solr,建立名称为data的core,SimplePostTool工具使用参照:http://www.cnblogs.com/shaosks/p/7390523.html

    由于导入文件的过程需要用到post.jar这个包,所以先把solr-6.6.0\example\exampledocs文件夹下的post.jar拷贝到solr-6.6.0\bin文件夹下。

    solr start;  solr create -c data

    

 

  2、导入文件

    和solr-6.6.0\bin文件夹同级目录下Import文件夹,下面有以下有8个文件:

    

 

    其中前三个文件都是结构化的,有对应的字段。后面的文件就是非结构化的文件。现在导入

 

    2.12017-07-07_info.csv文件

    内容如下,需要注意的是csv文件由于包含中文,所以必须以utf-8格式保存,否则导入后,中文是乱码

    

 

    2.2、books.json文件

    内容如下,需要注意的是books.json格式不能保存为utf-8的格式,否则导入时报错。

    

   2.3、xml文件

    内容如下,需要注意的是xml文件由于包含中文,所以必须以utf-8格式保存,否则导入后,中文是乱码

    

    

    导入命令:  java -Dauto=yes -Dc=mycore -jar post.jar ..\Import\*.*

    

 

 

  3、配置文件

   注意data\conf下的配置文件managed-schema,注意里面的内容在导入前和导入后的变化,在导入后,对于上面的csv,json和json这三个结构化文档中涉及的字段,都会自动增加到managed-schema文档中

   下面这些字段都是导入过程自动增加的

    

 

   

  4、导入结果查询

    1、2017-07-07_info.csv索引结果

     奇怪的是原来csv文件中title字段,变为了_title,前面增加了一个下划线,经过多次测试,都第一个字段,增加一个下划线。

    

      把文件中的title字段改为scheme,

      

      重新导入,查询结果:scheme字段前面又增加了一个下划线

      

      在CSV文件增加一列blank_title,该列都是空值

       

      重新导入,结果正常,而且blank_title也不会索引

      

 

 

 

 

    2、books.json索引结果

      

    3、mem.xml索引结果

       

    4、十九大报告全文.docx索引结果

    

    同样doc, pdf和txt格式的文件索引结果都是类似的,因此对这样的文件索引要用其它方式。

       

 

   总结:SimplePostTool工具适合索引csv/json/xml这种结构化文档,像doc, pdf和txt这种非结构化,索引数据后无法搜索相关的信息

 

相关文章:

  • 论Alexa排名与网站SEO优化的关系
  • 类的多态的理解和应用场景
  • spring boot start log4j2 开启异步
  • java爬虫HttpURLConnect获取网页源码
  • Oracle 监听器无法启动(TNS-12537,TNS-12560,TNS-00507)
  • 开发微信小程序中SSL协议的申请、证书绑定、TLS 版本处理等
  • 422. 最后一个单词的长度
  • ansible分发密钥
  • JavaWeb-HttpServletResponse对象一
  • JS~模拟表单在新窗口打开,避免广告拦截
  • mysql分表经验总结
  • Lind.DDD.Messaging框架通讯组件介绍
  • 未完成.队列
  • vuex的使用
  • 21、PHP和python/JAVA比,哪个更好学?
  • 10个最佳ES6特性 ES7与ES8的特性
  • 2017-08-04 前端日报
  • Android 控件背景颜色处理
  • Asm.js的简单介绍
  • const let
  • HTTP--网络协议分层,http历史(二)
  • iOS编译提示和导航提示
  • JavaSE小实践1:Java爬取斗图网站的所有表情包
  • JS数组方法汇总
  • KMP算法及优化
  • Linux快速复制或删除大量小文件
  • Mysql优化
  • Python利用正则抓取网页内容保存到本地
  • ReactNative开发常用的三方模块
  • Vue 2.3、2.4 知识点小结
  • 工作中总结前端开发流程--vue项目
  • 买一台 iPhone X,还是创建一家未来的独角兽?
  • 详解移动APP与web APP的区别
  • 用element的upload组件实现多图片上传和压缩
  • 责任链模式的两种实现
  • Android开发者必备:推荐一款助力开发的开源APP
  • ​如何防止网络攻击?
  • ​一文看懂数据清洗:缺失值、异常值和重复值的处理
  • #if 1...#endif
  • #include到底该写在哪
  • #单片机(TB6600驱动42步进电机)
  • (C#)获取字符编码的类
  • (c语言)strcpy函数用法
  • (紀錄)[ASP.NET MVC][jQuery]-2 純手工打造屬於自己的 jQuery GridView (含完整程式碼下載)...
  • (欧拉)openEuler系统添加网卡文件配置流程、(欧拉)openEuler系统手动配置ipv6地址流程、(欧拉)openEuler系统网络管理说明
  • (四)docker:为mysql和java jar运行环境创建同一网络,容器互联
  • (续)使用Django搭建一个完整的项目(Centos7+Nginx)
  • (转)Linux整合apache和tomcat构建Web服务器
  • *setTimeout实现text输入在用户停顿时才调用事件!*
  • .gitignore文件---让git自动忽略指定文件
  • .net FrameWork简介,数组,枚举
  • .NET MVC 验证码
  • .NET 分布式技术比较
  • .Net 路由处理厉害了
  • .NET程序员迈向卓越的必由之路