Solr json,xml等文件数据导入(添加索引)linux下操作
使用solr-5.3.1\example\exampledocs下的post.jar来完成数据导入
1、将想要导入的文件放在solr-5.3.1\example\exampledocs中,如aaa.xml, bbb.json
2、xml文件导入执行命令: java -Dport=solr端口号 -Dc=目标集合名 -jar post.jar aaa.xml
json文件导入执行命令: java -Dport=solr端口号 -Dtype=application/json -Dc=目标集合名 -jar post.jar bbb.json
(端口号默认为8983,如solr端口号为8983,语句中可不加 ‘-Dport=solr端口号’)
以下为post.jar的详细介绍:
语法: java [SystemProperties] -jar post.jar [-h|-] [<file|folder|url|arg> [<file|folder|url|arg>...]]
语法属性:
SystemProperties:系统属性
-h:添加 -h 会打印命令提示信息
<file|folder|url|args>:提交数据的几种不同的形式。file 代表要提交的数据存在于文件中;folder 代表提交的数据存在于文件夹中;URL 代表地址资源;args 代表提交的数据直接在命令行中敲出来
系统数据(SystemProperties):
- -Dc=<core/collection>
- -Durl=<base Solr update URL> (overrides -Dc option if specified)
- -Ddata=files|web|args|stdin (default=files)
- -Dtype=<content-type> (default=application/xml)
- -Dhost=<host> (default: localhost)
- -Dport=<port> (default: 8983)
- -Dauto=yes|no (default=no)
- -Drecursive=yes|no|<depth> (default=0)
- -Ddelay=<seconds> (default=0 for files, 10 for web)
- -Dfiletypes=<type>[,<type>,...] (default=xml,json,csv,pdf,doc,docx,ppt,pptx,xls,xlsx,odt,odp,ods,ott,otp,ots,rtf,htm,html,txt,log)
- -Dparams="<key>=<value>[&<key>=<value>...]" (values must be URL-encoded)
- -Dcommit=yes|no (default=yes)
- -Doptimize=yes|no (default=no)
- -Dout=yes|no (default=no)
-D是命令行下指定系统属性的固定前缀,
c表示core名称,你需要对solr admin里的哪个core进行索引数据添加/修改/删除
url表示solr admin后台索引更新的请求URL,这个URL是固定的,一般格式是http://host:port/solr/${coreName}/update,这里的${coreName}和上面的c属性值保持一致
data表示你要提交数据的几种模式,files模式表示你要提交的数据在文件里
web表示你要提交的数据在互联网上的一个URL表示的资源文件里
args表示你要提交的数据你会直接在post.jar命令后面直接输入
stdin表示你要提交的数据需要在dos命令行下通过System.in输入流临时接收,跟args有点类似, 但不同的是,stdin模式下,post.jar后面不需要指定任何参数,直接回车即可,然后程序会等待用户输入, 用户输入完毕再回车,post.jar会接收到用户输入,post.jar重新被唤醒继续执行。而args是直接在post.jar后面输入参数,没有一个中断过程,而stdin模式下如果用户一直没有输入,那post.jar就会一直阻塞在那里等待用户输入为止。
type表示你要提交数据的MIME类型,默认是application/xml即默认会当作是XML来处理
host表示你要链接的SOlr Admin部署服务器的主机名或者IP地址,默认是localhost
port表示你要链接的Solr Admin部署的Web容器监听的端口号,默认post.jar里设置为8983,port具体值取决于你实际部署环境而定
auto表示是否自动猜测文件类型
recursive表示是否递归,这里递归有两种情况,比如你data=folder即表示是否递归查找文件夹下的所有文件,如果你data=web即表示是否递归抓取URL,设置为no即表示不递归操作,设置为一个数字,即表示递归深度
delay:这里的时间延迟也分两种,如果你post的是file,那么每个file的post间隔为0,即不做延迟处理,而如果你是post的是网络上的一个url资源,因为需要收到对方服务器的访问限制,所以必须要做一个抓取频率限制即每抓一个睡眠一会儿,否则抓取太快太频率容易被对方封IP。
filetypes表示post.jar支持提交哪些文件类型,后面有列出默认支持的文件类型,如果你想覆盖默认值,那么请指定此参数
params表示需要追加到Solr Admin的请求URL后面的请求参数如id=1&name=yida之类的
commit表示是否提交到solr admin后台进行索引写入,设置为false表示不提交至sor admin,但设置为true也不一定就意味着就一定会把索引写入磁盘,这取决于solrconfig中directory配置的实现是什么,如果配置的是RAMDirectory,就仅仅只在内存中操作了。
optimize表示是否需要对索引进行优化操作,默认为no即表示不对索引进行优化
out即OutputStream表示输出流,这个参数作用就是,你请求Solr Admin添加索引数据,Solr Admin后台会返回数据给你,Solr Admin后台返回的数据你拿什么输出流来接收,默认是System.out即表示把后台返回的信息输出打印到控制台
Solr json,xml等文件数据导入(添加索引)linux下操作的更多相关文章
- solr 4.8+mysql数据库数据导入 + mmseg4j中文全文索引 配置笔记
转载请标明出处:http://www.cnblogs.com/chlde/p/3768733.html 1.如何将solr部署,请参考之前的文章 2.按上述配置好后,在solr_home文件夹中,将包 ...
- MsSqlServer bak文件数据导入
MsSqlServer bak文件数据导入 第一步首先在你的数据库中建立一个空数据库 选中新建的数据库 鼠标右键 任务 还原 数据库 这个时候会弹出这种一个框 之后选择原设备 会弹出 点击加入 找到 ...
- solr源码分析之数据导入DataImporter追溯。
若要搜索的信息都是被存储在数据库里面的,但是solr不能直接搜数据库,所以只有借助Solr组件将要搜索的信息在搜索服务器上进行索引,然后在客户端供客户使用. 1. SolrDispatchFilter ...
- ajax发送json格式与文件数据、django自带的序列化器(了解)
上期内容回顾 聚合查询和分组查询 # 聚合查询 max min sum avg count # 查询关键字:aggregate from django.db.models import Max, Mi ...
- 将csv格式的文件数据导入mysql中
示例如下: load data infile 'test.csv'into table `test`fields terminated by ',' optionally enclosed by '& ...
- Hive管理表分区的创建,数据导入,分区的删除操作
Hive分区和传统数据库的分区的异同: 分区技术是处理大型数据集经常用到的方法.在Oracle中,分区表中的每个分区是一个独立的segment段对象,有多少个分区,就存在多少个相应的数据库对象.而在P ...
- windows下数据库文件使用脚本同步到linux下的mysql数据库中
1.背景 windows server 2008 下 每天会有 *.sql数据文件 需要上传到linux 中的mysql数据库中 而运维人员是在 windows server 下使用 xshell 连 ...
- 关于File.separator 文件路径:window与linux下路径问题(“No such file or diretory ”异常解决方案)
最近有个在页面上传Excel文件至服务器指定目录并进行数据校验.最后入库及进行进一步处理的应用情境,我写好代码在模拟环境下测试,完全没问题:但客户试用的时候,却老是报告“No such file or ...
- 关于File.separator 文件路径:wind与linux下路径问题 .
最近有个在页面上传Excel文件至服务器指定目录并进行数据校验.最后入库及进行进一步处理的应用情境,我写好代码在模拟环境下测试,完全没问题:但客户试用的时候,却老是报告“No such file or ...
随机推荐
- 《Java编程思想》笔记 第二十一章 并发
1.定义任务 实现Runnable 接口的类就是任务类(任务类不一定是实现Runnable接口的类). 实现Runnable 接口,重写run()方法,run方法的返回值只能是 void 任务类就是表 ...
- git add 文档
GIT-ADD(1) Git Manual GIT-ADD(1) NAME git-add - Add file contents to the index SYNOPSIS git add [-n] ...
- win7或win2008系统中,出现【已停止工作,联机检查解决方案并关闭该程序,关闭程序】解决方法!
win7或win2008系统中,出现[已停止工作,联机检查解决方案并关闭该程序,关闭程序]解决方法! 经过摸索,点击[控制面板]-[操作中心]-[更改操作中心设置]-[问题报告设置]-[从不检查解决方 ...
- PHP7中php.ini、php-fpm和www.conf的配置(转)
根据前文 <2015博客升级记(五):CentOS 7.1编译安装PHP7> 的 configure 编译参数设定,安装后的PHP7配置文件所在路径是 /usr/local/php7/et ...
- [git] warning: LF will be replaced by CRLF | fatal: CRLF would be replaced by LF[ git 处理和修改行结束符(CRLF和LF)]
我自己的设置是: [core] autocrlf = false[core] safecrlf = true 取消自动转换CRLF(上图中选的是commit as is),但是有提交前混用检查 本人用 ...
- PHP程序员的简单运维
所谓的简单运维就是保证自己开发的程序能正常运行和使用. 当一个程序员需要兼作运维时候需要掌握以下技能 1.linux系统基础命令和Windows Server操作 是基础中的基础,ls, rm, to ...
- [BZOJ1853][Scoi2010]幸运数字 容斥+搜索剪枝
1853: [Scoi2010]幸运数字 Time Limit: 2 Sec Memory Limit: 64 MBSubmit: 3202 Solved: 1198[Submit][Status ...
- 使用httpclient异步调用WebAPI接口
最近的工作需要使用Bot Framework调用原有的WebAPI查询数据,查找了一些方法,大部分都是使用HttpClient调用的,现时贴出代码供参考 using System; using Sys ...
- SPOJ CIRU - The area of the union of circles (圆的面积并)
CIRU - The area of the union of circles no tags You are given N circles and expected to calculate t ...
- small test on 5.30 night T1
数学题使劲推就对了. 让我们设 g(x) = ∑ C(i,x) * b^i ,然后后面验算了一张纸QWQ,懒得再打一遍了,回家我就把这张演算纸补上QWQ,先上代码. #include<cstd ...