Solr是什么?】的更多相关文章

昨天已经在Tomcat容器中成功的部署了solr全文检索引擎系统的服务:今天来分享一下solr服务在海量数据的网站中是如何实现数据的检索. 在solr服务中集成IKAnalyzer中文分词器的步骤: 1.下载IKAnalyzer分词器的压缩包并解压: 2.将IKAnalyzer压缩包中的jar包复制到Tomcat容器中已经部署的solr项目中的WEB-INF/lib目录下: 3.在Tomcat容器的solr项目中的WEB-INF/目录创建一个classes目录(默认该目录是不存在的,需手动创建)…
前言 solr排除查询也就是我们在数据库和程序中经常处理的不等于,solr的语法是在定语前加[-].. StringBuilder sbHtml=new StringBuilder(); shBhtml.Append("); 注意CityId前的-号就是不等于 从Solr控制台 从solr控制台看下排除查询的url, 也可以在构建url查询时自己添加筛选条件…
一.什么是facet solr种以导航为目的的查询结果成为facet,在用户查询的结果上根据分类增加了count信息,然后用户根据count信息做进一步搜索. facet主要用于导航实现渐进式精确搜索,从两张图来看看Facet用途. (图1)当进入重庆二手车列表时搜索条件会列出所有品牌.车系.价格区间.车系年贷款等等. (图2)当你点击大众时页面刷新车系会列出大众所属的所有车系.价格区间.顾名思义我虽solr facet的理解也就是:  当然,你从京东导航.淘宝导航也能看到如此效果,这样的场景下…
一. 概述 大量的数据存储在MongoDB上,需要快速搜索出目标内容,于是搭建Solr服务. 另外一点,用Solr索引数据后,可以把数据用在不同的项目当中,直接向Solr服务发送请求,返回xml.json等形式的内容,使得对数据的使用更灵活. 对于MongoDB与Solr的描述不在这里阐释了,本文旨在给大家提供整个Solr与MongoDB接合的方法,实现实时的增量索引. MongoDB的官网:http://www.mongodb.org/ Solr项目的主页:http://lucene.apac…
1.下载solr 官网:http://lucene.apache.org/solr/ 2.目录结构如下 3.启动solr(默认使用jetty部署) 在path路径下将 bin文件夹对应的目录加入,然后输入 solr start(或者 solr start -p port,指定端口启动).在浏览器中访问如下: 当然,还可以启动其他样例的服务,在example目录下有一个READEME.txt,如果感兴趣请看一下.命令格式如下: Solr example ------------ This dire…
前言 今天在用Solr Facet遇到了默认值的问题,我用Facet.field查询发现数据总共100条,刚开始没有注意,发现少个别数据,但是用这几个个别的id查询又能查出来数据.才发现是Facet默认值的问题.如果你不设置的话默认只查询100条. 设置Facet.Limit来覆盖Facet默认值 如果你想返回分组后所有的字段则设置:FacetLimit(-1) . 设置分组后Key-Value的Value字段大于0:FacetMinCount(1)…
在D:\solr\solr_web\solrhome文件夹下: 1)创建core0文件夹 2)复制D:\solr\solr_web\solrhome\configsets\basic_configs/conf到core0中 3)在http://localhost:8080/solr/index.html管理页面添加core0,dataDir可以自己命名 点击添加成功 4)添加core1.core2.core3--重复步骤1).2).3)…
问题描述 报如下错误,很显然,问题原因:空指针异常: ERROR (localhost-startStop-1) [   ] o.a.s.h.d.s.SolrDataImportProperties Error loading DataImportScheduler propertiesjava.lang.NullPointerException        at sun.nio.fs.UnixPath.normalizeAndCheck(UnixPath.java:77)        at…
公司最近在研究多条件组合查询方案,Google的一位技术专家Sam和我们讨论了几个备选方案. Sam的信: 我做了进一步研究,目前有这么几种做法: 1) 最直接粗暴,只做一个主index,比如按行业+地区做一个index,这样来说的话,无论多少个标签的查询,直接先用主index做一个筛选,这样下来可能只有少于10w个row,然后对这10w个一个个filtering,这种做法可能能够满足大部分需求.当然,这种做法需要用到cache来优化,否则每次都去DB load会影响数据库的performanc…
引子 最近在做一个日志系统,用普通关系型数据库做数据查询遇到了查询的瓶颈,想到了用成熟的搜索应用服务,我所知道的比较成熟的搜索应用服务有solr和es(elasticsearch),由于时间比较仓促,最后选择了比较熟悉的solr. 简介SOLR Solr是一个高性能,采用Java5开发,Solr基于Lucene的全文搜索服务器.同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置.可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面,是一款非常优秀的全文搜索引擎…
1   Solr实现全文搜索 1.1   Solr是什么? Solr 是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文搜索服务器.Solr提供了比Lucene更为丰富的查询语言,同时实现了可配置.可扩展,并对索引.搜索性能进行了优化. Solr是一个全文检索服务器,只需要进行配置就可以实现全文检索服务. 1.2   Solr的安装及配置 Solr的版本:4.10.3 1.2.1   安装步骤 需要把solr服务器安装到linux环境: 第一步:安装linux.jd…
最近,很多朋友问我solr 中文分词配置的问题,都不知道怎么配置,怎么使用,原以为很简单,没想到这么多朋友都有问题,所以今天就总结总结中文分词的配置吧. 有的时候,用户搜索的关键字,可能是一句话,不是很规范.所以在 Solr 中查询出的时候,就需要将用户输入的关键字进行分词. 目前有很多优秀的中文分词组件.本篇只以  IKAnalyzer 分词为例,讲解如何在 solr  中及集成中文分词,使用 IKAnalyzer的原因 IK 比其他中文分词维护的勤快,和 Solr 集成也相对容易.具体就不多…
一直想接触下搜索,虽然之前也玩了下solr,但一直没深入,所以也都忘得差不多了,现在solr都6.1了,发展真快.重新拾起,记录下也好,为以后出问题查找起来快一点. 1.搜索最重要的概念就是倒排索引, 通过分词,建立 分词后的一个一个 词 的倒排索引. solr环境搭建 1.solr 6 需要 jdk1.8 和tomcat 8, 下载jdk1.8,下载solr6.1,下载 zookeeper 3.4.8,并按步骤 安装配置好 jdk 和 zookeeper (参考 http://www.cnbl…
1:solr简介 solr是一个开源的搜索引擎,是对lucene做了封装,对外提供类似于webservice接口, 可以使用http请求的方式对solr进行操作. lucene.solr.elasticsearch是java领域比较常用的搜索工具. lucene比较底层. solr对lucene做了封装,可以简单的实现一个站内搜索功能,solr4.0之后 出现了solrcloud,也支持分布式存储和搜索. elasticsearch对lucene做了封装,并且elasticsearch是天生支持…
一致性hash和solr千万级数据分布式搜索引擎中的应用 互联网创业中大部分人都是草根创业,这个时候没有强劲的服务器,也没有钱去买很昂贵的海量数据库.在这样严峻的条件下,一批又一批的创业者从创业中获得成功,这个和当前的开源技术.海量数据架构有着必不可分的关系.比如我们使用mysql.nginx等开源软件,通过架构和低成本服务器也可以搭建千万级用户访问量的系统.新浪微博.淘宝网.腾讯等大型互联网公司都使用了很多开源免费系统搭建了他们的平台.所以,用什么没关系,只要能够在合理的情况下采用合理的解决方…
本文转自http://chuanliang2007.spaces.live.com/blog/cns!E5B7AB2851A4C9D2!499.entry?wa=wsignin1.0 由于搜索引擎功能在门户社区中对提高用户体验有着重在门户社区中涉及大量需要搜索引擎的功能需求,目前在实现搜索引擎的方案上有集中方案可供选择: 1. 基于Lucene自己进行封装实现站内搜索.工作量及扩展性都较大,不采用. 2. 调用Google.Baidu的API实现站内搜索.同第三方搜索引擎绑定太死,无法满足后期业…
1       创建集合 SSH远程连接到安装了SOLR的CDH节点. 运行solrctl  instancedir  --generate  /solr/test/GX_SH_TL_TGRYXX_2015命令就会生成GX_SH_TL_TGRYXX_2015集合的默认配置. 进入/solr/test/GX_SH_TL_TGRYXX_2015/conf目录,先编辑schema.xml配置字段信息,具体网上一搜一片. solrconfig.xml文件中在其他<lib/>后面新增<lib di…
本文简单对比下Solr与MySQL的查询性能速度. 测试数据量:10407608     Num Docs: 10407608 这里对MySQL的查询时间都包含了从MySQL Server获取数据的时间. 在项目中一个最常用的查询,查询某段时间内的数据,SQL查询获取数据,30s左右 SELECT * FROM `tf_hotspotdata_copy_test` WHERE collectTime BETWEEN '2014-12-06 00:00:00' AND '2014-12-10 21…
如果需要对带经纬度的数据进行检索,比如查找当前所在位置附近1000米的酒店,一种简单的方法就是:获取数据库中的所有酒店数据,按经纬度计算距离,返回距离小于1000米的数据. 这种方式在数据量小的时候比较有效,但是当数据量大的时候,检索的效率是很低的,本文介绍使用Solr的Spatial Query进行空间搜索. 空间搜索原理 空间搜索,又名Spatial Search(Spatial Query),基于空间搜索技术,可以做到: 1)对Point(经纬度)和其他的几何图形建索引 2)根据距离排序…
环境搭建 1.到apache下载solr,地址:http://mirrors.hust.edu.cn/apache/lucene/solr/ 2.解压到某个目录 3.cd into D:\Solr\solr-4.10.3\example 4.Execute the server by “java -jar startup.jar”Solr会自动运行在自带的Jetty上 5.访问http://localhost:8983/solr/#/ PS:solr-5.0 以上默认对schema的管理是使用m…
摘要:在项目中使用Solr作为搜索引擎对大数据量创建索引,提供服务,本文是作者对Solr的使用总结的一点心得体会, 具体包括使用DataImportHandler从数据库中近实时同步数据.测试Solr创建索引的性能.以及测试Solr的搜索效率总结等. 具体搜索引擎概念.Solr搭建方法.数据库mysql使用方法,假设读者已有了基础.本文操作均是在linux上进行的. 1.      Solr 1.1  Solr从数据库中读取数据并创建索引速度(使用DataImportHandler) l 一次性…
添加索引模板: <add> <doc> <field name="employeeId">05991</field> <field name="office">Bridgewater</field> <field name="skills">Perl</field> <field name="skills">Java&l…
solr索引查询接口:http://localhost:8080/solr/query 首先了解一下查询参数的含义. q Solr 中用来搜索的查询.可以通过追加一个分号和已索引且未进行断词的字段(下面会进行解释)的名称来包含排序信息.默认的排序是 score desc,指按记分降序排序. q=myField:Java AND otherField:developerWorks; date asc 此查询搜索指定的两个字段并根据一个日期字段对结果进行排序. start 将初始偏移量指定到结果集中…
solr索引数据更新接口:http://localhost:8080/solr/update 有以下一些操作可以通过update接口完成,只能使用post的形式提交数据. 1.添加索引 确保field已全部在schemal.xml 中定义,日期格式要求的比较奇葩,但必须符合他的格式.此处adaptor,director在schemal.xml中设置了多值属性(multiValued=true)可以看出此处对应的添加xml格式. <?xml version="1.0" encodi…
首先,讲解一下/usr/local/solr/collection1/conf/schema.xml的配置,此文档功能类似于配置索引数据库. Field:类似于数据库字段的属性(此文统一使用用“字段”描述它),请看一条field <field name="user" type="string" indexed="true" stored="true" multiValued="true" />…
Solr DIH 源码解析 DataImportHandler.handleRequestBody()中的importer.runCmd(requestParams, sw) if (DataImporter.FULL_IMPORT_CMD.equals(command) || DataImporter.DELTA_IMPORT_CMD.equals(command) || IMPORT_CMD.equals(command)) { importer.maybeReloadConfigurati…
solr DIH 知识梳理 web.xml中listener配置 <listener> <listener-class>org.apache.solr.handler.dataimport.scheduler.ApplicationListener</listener-class> </listener> 配置文件dataimport.properties ################################################# #…
http://127.0.0.1:8095/shangbiao_sale/select?sort=id+desc&fq=&wt=json&json.nl=map&q=state%3AForSale+%26%26+sell_form%3AFixedPrice+%26%26+product_name%3A%2A11%2A+%26%26+product_name+%3A%28%2A+NOT+%2A11%2A%29+&start=0&rows=24 查询参数 常用:…
前面已经讲过 如果安装及配置Solr服务器了, 那么现在我们就来正式在代码中使用Solr.1,这里Solr主要是怎么使用的呢?  当我们在前台页面搜索商品名称关键词时, 我们这时是在Solr库中去查找相应的商品信息, 然后将搜索关键词高亮. 2,那么Solr库中的商品信息又是如何添加的呢?  当我们在给商品上架的时候, 将商品信息update 到mysql数据库中的bbs_product表中, 然后同样的将相应的信息 添加到Solr库中. 接下来就看代码的具体实现吧: 一, 商品上架我们在这里点…
今天 不知自己装的centos 出现了什么问题, 一直卡在 启动界面, 找了半天没找见原因(最后时刻还是发现原因, 只因自己手欠一怒之下将centos删除了, 而且选择的是在本地磁盘也删除. ..让我哭一会..)..于是便重新安装, 可是问题来了, 之前安装及配置好的zookeeper/redis/solr/tomcat/IK 等都需要重新安装, 于是便找了很多文档视频资料重新一个个安装和配置.. 哎,真是麻烦, 所以想记录在这一个博文中方便以后查阅....注明: 本文章属于原创,如若转载请注明…