设为首页 收藏本站
查看: 798|回复: 0

[经验分享] Solr json,xml等文件数据导入(添加索引)linux下操作

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2017-12-19 19:03:40 | 显示全部楼层 |阅读模式
  使用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即表示把后台返回的信息输出打印到控制台

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-425801-1-1.html 上篇帖子: 完成搜索系统功能(十五)solr的安装以及搜索功能的构思 下篇帖子: Win7下单机版的伪分布式solrCloud环境搭建Tomcat+solr+zookeeper【转】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表