Solr6.6.0 用 SimplePostTool索引文件
一、背景介绍
Solr启动并运行之后,并不包含任何数据,在solr的安装目录下的bin目录中,有一个post工具,我们可以使用这个工具往solr上传数据,这个工具必须在命令行中执行,post工具是一个Unix脚本工具,
没有windows版本(但可以在java程序中调用),我们可以使用SimplePostTool来代替 参考:https://cwiki.apache.org/confluence/display/solr/Post+Tool#PostTool-Windows
二、系统配置:
SimplePostTool工具是一个jar包(post.jar),在%SOLR_HOME%\example\exampledocs目录下
这个工具可以直接运行在支持的环境中(包括Windows),使用如下命令运行:
java -jar example/exampledocs/post.jar
我们可以查看帮助以获得该工具的更多信息,如:上传文件(本地或网络文件夹)到Solr服务器、直接向Solr发送命令等,如下图:
java -jar example/exampledocs/post.jar –h
java [SystemProperties] -jar post.jar [-h|-] [<file|folder|url|arg> [<file|folder|url|arg>...]]
三、参数介绍
支持的系统属性及其默认值:
1、-Dc=<core/collection>
2、-Durl=<base Solr update URL> (overrides -Dc option if specified)
-Durl=solr的Url地址(如:http://127.0.0.1:8983/solr),该参数会覆盖-Dc参数,以上两个参数必须指定其中的一个,因为必须指定url/core/collection参数
3、-Ddata=files|web|args|stdin (default=files) ,该参数指定上传到Solr服务器的数据,默认为files (即文件):
files:本地资源,在命令行参数中指定文件或文件夹(<file|folder|url|arg>);
web:网络资源,在命令行参数中指定的URL地址(<file|folder|url|arg>);
args:命令行参数指定的字符串(<file|folder|url|arg>);
stdin:标准输入,在命令行中通过”<”符号指定输入流(如文件输入流);
4、-Dtype=<content-type> (default=application/xml) 文件类型,默认是xml
5、-Dhost=<host> (default: localhost) ,solr服务器地址
6、-Dport=<port> (default: 8983) ,solr服务器端口默认是8983
7、-Dbasicauth=<user:pass> (sets Basic Authentication credentials)
8、-Dauto=yes|no (default=no) ,SimplePostTool工具是否进入自动模式,自动模式下,会将-Ddata数据转换成相应的内容类型,切会忽略-Dtype参数
假设D:\work\Solr\solr-6.6.0\doctest目录下有一个文件:index.html
java -Dauto=no -Dc=gettingstarted -jar post.jar ..\doctest/
失败
java -Dauto=yes -Dc=gettingstarted -jar post.jar ..\doctest/
成功
9、-Drecursive=yes|no|<depth> (default=0):递归
现在在D:\work\Solr\solr-6.6.0\doctest目录下建一个test文件夹,该文件夹下有一个文件
执行命令:java -Dauto=yes -Drecursive=no -Dc=gettingstarted -jar post.jar ..\doctest/ 没有进行递归,所以只索引了一个文件
执行命令:java -Dauto=yes -Drecursive=yes -Dc=gettingstarted -jar post.jar ..\doctest/ 进行了递归,所以索引了2个文件
10、-Ddelay=<seconds> (default=0 for files, 10 for web):延迟,单位是秒
11、-Dfiletypes=<type>[,<type>,...] (default=xml,json,jsonl,csv,pdf,doc,docx,ppt,pptx,xls,xlsx,odt,odp,ods,ott,otp,ots,rtf,htm,html,txt,log) :文件类型
12、-Dparams="<key>=<value>[&<key>=<value>...]" (values must be URL-encoded):过滤参数
13、-Dcommit=yes/no (default=yes):自动提交
14、-Doptimize=yes/no (default=no):优化
15、-Dout=yes/no (default=no)
四、文件索引
首先启动solr
solr start -e cloud -noprompt
1、xml文件索引
java -Dc=gettingstarted -jar post.jar ..\example\exampledocs\*.xml
2、json文件索引
java -Dtype=application/json -Dc=gettingstarted -jar post.jar ..\example\exampledocs\*.json
3、CSV文件索引
java -Dtype=text/csv -Dc=gettingstarted -jar post.jar ..\example\exampledocs\*.csv
4、各种文件索引(包含多种文件)
java -Dauto=yes -Dc=gettingstarted -jar post.jar ..\example\exampledocs\*.*
注意要加上:-Dauto=yes
五、浏览索引文档
您可以浏览http:// localhost:8983 / solr / gettingstarted / browse索引的文档。 /浏览UI可以让您了解Solr的技术能力如何在熟悉的,尽管有些粗略和原型的交互式HTML视图中进行工作。
(/浏览视图默认为假设启动的模式和数据是结构化XML,JSON,CSV示例数据和非结构化富文档的全部混合,您自己的数据可能看起来不太理想,尽管/浏览模板是定制的。)
http://localhost:8983/solr/gettingstarted_shard1_replica1/browse
Solr6.6.0 用 SimplePostTool索引文件的更多相关文章
- Solr6.6.0 用 SimplePostTool索引文件的启示
本文主要是介绍通过SimplePostTool工具索引文件的结果进行确认,针对不同的文件,索引的结果不同. 1.创建core 首先启动solr,建立名称为data的core,SimplePostToo ...
- Solr6.6.0 用 SimplePostTool索引文件 中文乱码
在用SimplePostTool工具导入CSV文件,文件内容如下: 启动solr ,利用命令导入:java -Dtype=text/csv -Dc=solr_test -jar post.jar .. ...
- Solr6.6.0 用 SimplePostTool与界面dataimport索引方式区别
通过测试发现用SimplePostTool与solr界面dataimport索引数据的结果有如下区别: 1.SimplePostTool索引数据对结构化数据文件索引比较合适,比如csv/json/xm ...
- Solr4.8.0源码分析(12)之Lucene的索引文件(5)
Solr4.8.0源码分析(12)之Lucene的索引文件(5) 1. 存储域数据文件(.fdt和.fdx) Solr4.8.0里面使用的fdt和fdx的格式是lucene4.1的.为了提升压缩比,S ...
- Solr4.8.0源码分析(11)之Lucene的索引文件(4)
Solr4.8.0源码分析(11)之Lucene的索引文件(4) 1. .dvd和.dvm文件 .dvm是存放了DocValue域的元数据,比如DocValue偏移量. .dvd则存放了DocValu ...
- Solr4.8.0源码分析(10)之Lucene的索引文件(3)
Solr4.8.0源码分析(10)之Lucene的索引文件(3) 1. .si文件 .si文件存储了段的元数据,主要涉及SegmentInfoFormat.java和Segmentinfo.java这 ...
- Solr4.8.0源码分析(9)之Lucene的索引文件(2)
Solr4.8.0源码分析(9)之Lucene的索引文件(2) 一. Segments_N文件 一个索引对应一个目录,索引文件都存放在目录里面.Solr的索引文件存放在Solr/Home下的core/ ...
- Solr4.8.0源码分析(8)之Lucene的索引文件(1)
Solr4.8.0源码分析(8)之Lucene的索引文件(1) 题记:最近有幸看到觉先大神的Lucene的博客,感觉自己之前学习的以及工作的太为肤浅,所以决定先跟随觉先大神的博客学习下Lucene的原 ...
- Solr6.5.0配置中文分词器配置
准备工作: solr6.5.0安装成功 1.去官网https://github.com/wks/ik-analyzer下载IK分词器 2.Solr集成IK a)将ik-analyzer-solr6.x ...
随机推荐
- BZOJ1025 [SCOI2009]游戏 【置换群 + 背包dp】
题目链接 BZOJ1025 题解 题意就是问一个\(1....n\)的排列在同一个置换不断重复下回到\(1...n\)可能需要的次数的个数 和置换群也没太大关系 我们只需知道同一个置换不断重复,实际上 ...
- margin百分比,重叠和auto
一. margin百分比 1. 普通元素的百分比margin都是相对于容器的宽度计算 2. 绝对定位元素的百分比margin是相对于第一个定位祖先元素(relative/absolute/fixed) ...
- c#网络编程-第一章
1.需求 获得网页数据,并填充到webbrowser空间中 2.代码示例 private void button1_Click_1(object sender, EventArgs e) { //1. ...
- Linux下目录的权限详解
在Linux文件系统模型中,每个文件都有一组9个权限位用来控制谁能够读写和执行该文件的内容.普通文件大家都了解,这里说说目录的情况. 对于目录来说,执行位的作用是控制能否进入或者通过该目录,而不是控制 ...
- CSS 清除浮动的4种方法
此为未清除浮动源代码,运行代码无法查看到父级元素浅黄色背景.<style type=”text/css”> <!– *{margin:0;padding:0;} body{font: ...
- nutch 2.1安装问题集锦
参照官方文档http://nlp.solutions.asia/?p=180 中间碰到的问题,解决方法参考 http://blog.javachen.com/2014/05/20/nutch-intr ...
- linux启动流程梳理【转】
接触linux系统运维已经好几年了,常常被问到linux系统启动流程问题,刚好今天有空来梳理下这个过程:一般来说,所有的操作系统的启动流程基本就是: 总的来说,linux系统启动流程可以简单总结为以下 ...
- Linux下Nginx使用
1. 安装 CentOS 7上Nginx的安装和启动方法如下 # yum install nginx # firewall-cmd --permanent --zone=public --add-se ...
- python 666
运行下面代码会输出什么? __builtins__.我们来运行下这行代码看看="666" #!/usr/bin/env python # encoding: utf-8 def _ ...
- 【linux高级程序设计】(第十六章)网络服务器应用设计
xinetd服务介绍 xinetd是Linux下的一个网络守候进程,用来统一管理网络负载不大的一组小型网路服务. 一些小型的网络服务,比如时间,telnet服务,不以守候进程出现,而是让xinetd服 ...