solr学习之添加文档】的更多相关文章

一.开篇语 其实Solr就是一个你可以通过他来查询文档的东西,他整个都是基于Document的,那么这些Document从何而来列?  当然是我们给他,而这些来源就包括了:数据库文件,XML,Json,CSV等...  然后solr给你转为他自己的格式统一存储, 当你通过他来search的,他就去自己的存储文件里面,将结果集找出来返回给你.虽然以上说法可能不太严谨,但是大致上就是这么一回事. 所以,你必须先给solr数据,然后他才能为你服务,正如guide上所说:Solr needs input…
单机solrJ不需要占用太多的服务器和资源,本机使用solr-6.3.0,也不需要配置tomcat. 一.新建一个java工程需要依赖的jar包如下: solr-solrj-6.3.0.jar;  commons-lang-2.5.jar  ; log4j-1.2.17.jar; slf4j-api-1.7.7.jar; slf4j-log4j12-1.7.6.jar;httpclient-4.4.1.jar; httpcore-4.4.1.jar; httpmime-4.4.1.jar (解析…
本文主要记录Xapian的内存索引在添加文档过程中,做了哪些事情. 内容主要为函数执行过程中的流水线. demo代码: Xapian::WritableDatabase db = Xapian::InMemory::open(); Xapian::Document doc; // 添加文档的,T表示字段名字,TERM内容为世界,position为1 doc.add_posting(); doc.add_posting(); doc.add_posting(); // 添加doc的数据 doc.s…
  1 ES数据读写流程¶ ES中,每个索引都将被划分为若干分片,每个分片可以有多个副本.这些副本共同组成复制组,复制组中的分片在添加或删除文档时必须保持同步,否则,从一个副本中读取的数据将与从另一个副本读取的结果有差异.保持复制组中分片数据同步以及从它们中读取的过程称为数据复制模型. ES的数据复制模型基于主备份模型,这种模型使用复制组的一个分片作为主分片,复制组中其他分片作为副本分片.主分片是所有索引操作的主要入口点,负责验证操作的有效性.一旦主分片通过操作验证,主数据库还负责将该操作复制到…
全文检索技术——Solr 1 主要内容 1.站内搜索技术选型 2.什么是solr Solr和lucene的区别 3.solr服务器的安装及配置 Solr整合tomcat Solr的演示 4.维护索引 创建索引 删除索引 更新索引 5.索引的查询 6.Solr的客户端SolrJ 维护索引 查询索引 2 站内搜索技术选型 1.使用Lucene来实现:需要大量的编码才能实现.集群方案需要自己解决.查询速度的优化都需要自己解决.不推荐使用. 2.使用搜素引擎提供的接口实现站内搜索.索引库在搜索引擎上,维…
最近准备为一个产品做一个站内的搜索引擎,是一个java产品.由于原来做过Lucene.net,所以自然而然的就想到了使用Lucene.在复习Lucene的过程中发现了Solr这个和Lucene绑定在一起的Apache的子项目,发现这个搜索服务器正是我们想要的.原来我们做Lucene,会把索引和搜索都放在同一个网站下,也就是在网站启动的时候,或定时在网站应用程序中进行Lucene的初始化和索引,并使用Lucene搜索API提供搜索服务.这个过程,应用网站既提供了搜索内容的提供者(从数据库或文件提取…
学习Solr前需要有Lucene的基础 Lucene的一些简单用法:https://www.cnblogs.com/dddyyy/p/9842760.html 1.部署Solr到Tomcat(Windows) Solr自带小型服务器jetty,但在我们开发环境中,习惯使用Tomcat,所以把Solr部署到Tomcat上(Tomcat 8.0以上,jdk 1.8以上) 其实步骤相同,但在windows配置要方便一些,所以第一次还是使用Windows来部署. 1.1 准备工作 Solr下载地址:ht…
上一篇已经讲到了Solr 查询的相关的参数.这里在讲讲C#是如何通过客户端请求和接受solr服务器的数据, 这里推荐使用SolrNet,主要是:SolrNet使用非常方便,而且用户众多,一直都在更新,感兴趣的可以加入他们的邮件群组,方便迅速了解SolrNet的最新动态. SorlNet源码地址:https://github.com/mausch/SolrNet SolrNet使用说明文档:https://github.com/mausch/SolrNet/tree/master/Document…
Solr学习笔记之3.Solr导入SQLServer数据建立索引 一.下载MSSQLServer的JDBC驱动 下载:Microsoft JDBC Driver 4.0 for SQL Server 地址:http://www.microsoft.com/zh-CN/download/details.aspx?displaylang=en&id=11774 二.配置Solr dataimport for SQLServer 1.依赖jar包配置 将MSSQLServer的JDBC驱动中的sqlj…
Solr学习(二) Solr4.2.0+IK Analyzer 2012 开场白: 本章简单讲述如何在solr中配置著名的 IK Analyzer 分词器. 本章建立在 Solr学习(一)  基础上进行配置. 通过(一)的介绍,目前已经成功部署好单实例 solr+tomcat 声明:描述的比较笼统繁琐,有偏差的地方请大家毫不留情的拍砖 准备工作: 下载 “IK Analyzer 2012FF_hf1.zip”包. 详见:IK Analyzer中文分词器创始人 林良益 博客 名词解释: IK源目录…
Solr学习笔记之5.Component(组件)与Handler(处理器)学习 一.搜索篇 拼写检查(spellCheck) 作用:用来检查用户输入的检索内容是否存在,如果不存在则给它提示出相近或相似的内容 配置:在solrconfig.xml中配置如下 <searchComponent name="spellcheck" class="solr.SpellCheckComponent"> <lst name="spellchecker&…
Solr学习笔记之4.Solr配置文件简介 摘自<Solr in Action>. 1. solr.xml – Defines one or more cores per Solr server2. solrconfig.xml – Defines the main settings for a specific Solr core3. schema.xml – Defines the structure of your index including fields and field typ…
一 基本说明 简单来说Solr是基于Lucene的高性能的,开源的Java企业搜索服务器.Solr可以看作一个Web app,运行在tomcat或Jetty这类HTTP服务器上, 底层是一个基于Lucene的搜索引擎,还附加一个Solr的基本管理界面.Solr提供HTTP服务,通过Get方法进行查询,通过Post方法进行索引的添加/删除管理. 一般来说Solr的查询时通过Get方法请求到HTTP服务器的solr这个app下的/select对应的servlet上去,而添加等操作时通过POST方法到…
上一篇的配置说明主要是说明solrconfig.xml配置中的查询部分配置,在solr的功能中另外一个重要的功能是建索引,这是提供快速查询的核心. 按照Solr学习之一所述关于搜索引擎的原理中说明了建立索引,其实就需要经过分词组件处理,语言组件处理最后建立成一个倒排索引表, 通过这个索引表,来进行查询,本篇就是说明solr如何建立索引的也即是solrconfig.xml中关于更新索引的部分,另外由于建立索引需要涉及到 schemal.xml相关内容定义,这里面也一起说明. 一.设计schema…
目录 Solr学习记录:Getting started 1.Solr Tutorial 2. A Quick Overview Solr学习记录:Getting started 本教程使用环境:java8或者更高版本.Solr8.1.centos7 1.Solr Tutorial 1.1简介 本篇将用三个部分具体练习以引领对Solr的快速体验.每个练习将基于前一个练习. 第一个练习:启动solr,创建一个Collection,索引一些基础文档,执行一些搜索. 第二个练习:使用不同数据集,并尝试用…
solr学习笔记 1.安装前准备 solr依赖java 8 运行环境,所以我们先安装java.如果没有java环境无法启动solr服务,并且会看到如下提示: [root@localhost solr-6.1.0]# ./bin/solr start -e cloud -noprompt /*运行solr服务*/ Java not found, or an error was encountered when running java. A working Java 8 is required t…
经过测试,同步MongoDB数据到Solr的时候,Solr版本为8.4.0会出现连接不上的错误,8.3.0未经测试不知,博主测试好用的一版为8.2.0,但是官网已经下不到了,所以我会把下载链接放在文末,需要的同学自取,不要再下8.3.0/8.4.0!!! 拖更了一个多月,忙于公司的新项目,期间接触到了一个新东西,那就是solr,什么是solr,我理解为全文检索,他能实现数据库的全文检索并实现高亮显示,相信你的脑海中已经浮现出了在淘宝类似的购物平台搜索商品时的样子,没错,solr跟他很类似,当我们…
上一篇,讲到了SolrNet的基本用法及CURD,这个算是SolrNet 的入门知识介绍吧,昨天写完之后,有朋友评论说,这些感觉都被写烂了.没错,这些基本的用法,在网上百度,资料肯定一大堆,有一些写的肯定比我的好,不过,这个是Solr系列文章,会从Solr的基础入门讲到实际开发中的分页,高亮,Facet查询等高级用法.所以,基础的入门也会涉及一些,望大家见谅.我用这么多篇文章,来总结Solr 也是为了将Solr 的 安装,配置,开发等等,整个过程的资料,都能总结汇集到一起,这样不管是懂Solr还…
Solr学习笔记之2.集成IK中文分词器 一.下载IK中文分词器 IK中文分词器 此文IK版本:IK Analyer 2012-FF hotfix 1 完整分发包 二.在Solr中集成IK中文分词器 1.将 IKAnalyzer.cfg.xml,IKAnalyzer2012FF_u1.jar,stopword.dic 拷贝到tomcat的/webapps/solr/WEB-INF/lib/下面 2.选择某一Solr的core配置IK分词,打开coreName/conf/schema.xml,在<…
Solr学习笔记之1.环境搭建 一.下载相关安装包 1.JDK 2.Tomcat 3.Solr 此文所用软件包版本如下: 操作系统:Win7 64位 JDK:jdk-7u25-windows-i586.exe Tomcat:apache-tomcat-8.0.3.exe Solr:solr-4.7.0.zip 注意:JDK 与 Tomcat 版本要对应,要么都是32位版本,要么都是64位版本,否则会报异常. 二.Solr安装 1.解压solr的zip安装包: 2.将dist文件夹中的solr-4…
在上一节中我们已经成功部署和运行了一个solr应用,那么我们就可以通过这个正在运行的solr来创建一些文档,并进行搜索. 首先介绍一下core这个概念,core在solr中类似与关系型数据库中一张表的概念,在core中存放着结构化的数据用于查询,现在我们创建一个core 创建core的方式有三种: 通过web管理页面来创建页面 通过solr命令行创建 通过restful风格的url请求来创建 由于前两种创建的方式的实质也是调用url请求,因此这里我们采用第三种,直接在浏览器中请求url来创建co…
需求分析: 我不想使用solr默认的主键id,我想换成其他的,比如我的文章id为article_id,我想让article_id作为主键. 而且,我的主键是int类型,而solr的主键默认是string类型,我们还需要修改,修改后,还会报错,我们还需要来解决报错问题. 实践: 第一步: 我们需要打开C:\data\solr\collection1\conf\schema.xml 然后我们找到id的主键field 1 2  <field name="id" type="S…
1.什么是solrJ solrj是访问Solr服务的java客户端,提供索引和搜索的请求方法,SolrJ通常在嵌入在业务系统中,通过SolrJ的API接口操作Solr服务,如下图: 依赖jar包: 2.用solrJ对solr后台进行增删改查 2.1 添加文档 //向索引库中添加索引 @Test public void addDocument() throws Exception { //和solr服务器创建连接 //参数:solr服务器的地址 SolrServer solrServer = ne…
之前用Lucene进行了一些简单的例子,现在安装Solr学习一下. 在mac下,貌似可以直接brew install solr来进行安装.尝试一下. 貌似安装成功了: ==> Summary…
一.什么是SolrJ solrj是访问Solr服务的java客户端,提供索引和搜索的请求方法,SolrJ通常嵌入在业务系统中,通过SolrJ的API接口操作Solr服务,如下图: 二.SolrJ的基本操作 2.1 添加文档 实现步骤: 第一步:创建一个java工程 第二步:导入相关jar包   第三步:和Solr服务器建立连接.HttpSolrServer对象建立连接 第四步:创建一个SolrInputDocument对象,然后添加域 第五步:将SolrInputDocument添加到索引库 第…
MongoDB学习笔记:文档Crud Shell   文档插入 一.插入语法 db.collection.insertOne() 将单个文档插入到集合中.db.collection.insertMany() 将多个文件插入集合中. 文档删除 一.删除语法 db.collection.deleteOne() 即使多个文档可以匹配指定的过滤器,也最多删除匹配指定过滤器的单个文档.db.collection.deleteMany() 删除匹配指定过滤器的所有文档. 文档查询 一.查询语法 db.col…
前面讲到了Solr的安装,按道理,这次应该讲讲.net与数据库的内容,C#如何操作Solr索引等.不过我还是想先讲一些基础的内容,比如solr查询参数如何使用,各个参数都代表什么意思? 还有solr 自带的web 管理系统如何使用等.只有先明白了solr的基本内容,后续学习solr 的C#和数据库操作,才不会费劲.本人刚开始也是配置完solr 之后,直接找solr客户端,写相应的测试代码,但是由于不知道一个Update请求具体都需要哪些参数,各个参数都是什么意思,以至于碰到各种solr 的基础问…
今天还是不会涉及到.Net和数据库操作,主要还是总结Solr 的查询参数,还是那句话,只有先明白了solr的基础内容和查询语法,后续学习solr 的C#和数据库操作,都是水到渠成的事.这里先列出solr查询所需要的参数 wiki 地址:http://wiki.apache.org/solr/FrontPage, 里面有各个参数详细的介绍. 一.基本查询 q  查询的关键字,此参数最为重要,例如,q=id:1,默认为q=*:*, fl  指定返回哪些字段,用逗号或空格分隔,注意:字段区分大小写,例…
严格来说,我这篇内容,主要是根据Solr in Action关于配置的说明,以及参考Solr的wiki写的算是读书笔记吧,所有的图片默认来自Solr in Action这本书. 这本书我觉得对学习Solr来说非常有用,虽然目前没有中文版,另外对于其理解可能有偏差的地方,大家谨慎阅读. 一.总览 solr的配置重要的有三个:solr.xml.solrConfig.xml.schema.xml solr.xml 是整个Solr节点的配置,是定义关于core的管理.collection分片.solr云…
学习了一段时间的solr了,用自己的方式总结下目前学到的内容,这是个系列文章,这里面的有些说法可能不准确,也可能有问题 欢迎大家指正. 一.搜索引擎目的 搜索引擎在我们的生活中,已经无处不在,除了我们常用的baidu.Google等,还有一些电商的搜索 比如亚马逊搜书等.除了网页搜索外,企业内部可能涉及到知识库搜索,一般称为企业搜索.现在搜索要主要的目的是,在海量信息中,从非结构化数据中快速找到符合我们含义的信息.注意这里的几个关键词语. "海量信息"  :搜索引擎一般处理的数据量很大…