solr-5.3.1学习(一)

一.搭建solr服务(standalone)很简单,三步解决
1.下载solr-5.3.1.tgz,解压文件
2.在./solr-5.3.1/server/solr目录下建个文件夹作为存放core的地方
3.将./solr-5.3.1/server/solr/configsets/sample_techproducts_configs/下的conf拷到第二步建的文件夹下面
启动solr就可以了......

二.solr配置文件schame.xml学习
1.field
name: mandatory - the name for the field
type: mandatory - the name of a field type from the <types> fieldType section
indexed: true if this field should be indexed (searchable or sortable)
stored: true if this field should be retrievable
docValues: true if this field should have doc values. Doc values are useful for faceting, grouping,
           sorting and function queries. Although not required, doc values will make the index
           faster to load, more NRT-friendly and more memory-efficient. They however come with some
           limitations: they are currently only supported by StrField, UUIDField and all Trie*Fields,
           and depending on the field type, they might require the field to be single-valued, be
           required or have a default value (check the documentation of the field type you‘re interested in
           for more information)
multiValued: true if this field may contain multiple values per document
omitNorms: (expert) set to true to omit the norms associated with this field (this disables length
           normalization and index-time boosting for the field, and saves some memory).  Only full-text
           fields or fields that need an index-time boost need norms. Norms are omitted for primitive
           (non-analyzed) types by default.
termVectors: [false] set to true to store the term vector for a given field. When using MoreLikeThis,
           fields used for similarity should be stored for best performance.
termPositions: Store position information with the term vector.This will increase storage costs.
termOffsets: Store offset information with the term vector. This will increase storage costs.
termPayloads: Store payload information with the term vector. This will increase storage costs.
required: The field is required.  It will throw an error if the value does not exist
default: a value that should be used if no value is specified when adding a document.

2.优化
PERFORMANCE NOTE: this schema includes many optional features and should not be used for benchmarking.  
To improve performance one could
  - set stored="false" for all fields possible (esp large fields) when you only need to search on the
    field but don‘t need to return the original value.
  - set indexed="false" if you don‘t need to search on the field, but only return the field as a result
    of searching on other indexed fields.
  - remove all unneeded copyField statements
  - for best index size and searching performance, set "index" to false for all general text fields,
    use copyField to copy them to the catchall "text" field, and use that for searching.
  - For maximum indexing performance, use the ConcurrentUpdateSolrServer java client.
  - Remember to run the JVM in server mode, and use a higher logging level that avoids logging every request
   
三.JAVA api简单使用
public class App{
    
    private static SolrClient client = null;
    
    static{
        client = new HttpSolrClient("http://192.168.40.129:8983/solr/collection1");
    }

public void add() throws Exception{
        SolrInputDocument doc = new SolrInputDocument();
        doc.setField("id", "107");
        doc.setField("email_box_title", "107hehehe");
        client.add(doc);
        client.commit();
    }

public void remove() throws Exception {
        client.deleteById("106");
        client.commit();
    }

public void query() throws Exception {
        QueryResponse resp = client.query(new SolrQuery("id:10*"));
        SolrDocumentList doclist = resp.getResults();
        for(SolrDocument doc : doclist){
            System.out.println(doc.getFieldValue("id")+":"+doc.getFieldValue("email_box_title"));
        }
    }

public static void main( String[] args ) throws Exception {
    App app = new App();
    app.add();
    app.query();
  }
}

时间: 2024-10-10 17:57:14

solr-5.3.1学习(一)的相关文章

solr配置schema.xml学习

solr创建索引.添加数据的关键是配置schema.xml文件,该文件中主要是完成配置数据源.索引字段.数据类型等定义.同时,该文件的配置直接影响到solr搜索的效率和准确性. 一.搜索类型FileType name:指的是FileType的名字 class:指向org.apache.solr.analysis包里面对应的class名称,用来定义这个类型的行为 <types> <fieldType name="string" class="solr.StrF

搞Solr这一年(本人QQ 282335345 群412268049 欢迎大家一起学习Solr 非诚勿扰)

搞Solr这一年 去年6月份毕业到现在已经快一年半了,很庆幸从事了搜索引擎这份工作,虽然谈不上有多深入,但至少已经入门了.在这一年半里,搞了3个月的hbase和mapreduce,搞了一个月的nutch,最后搞了一年的Solr.想当初刚参加项目的时候,大家对hbase.solr一点都不懂,通过慢慢摸索每日每夜的攻关,现在终于把产品做好了.那段一起奋斗的时光真让人怀念. 回想这一年里,前半段一直在做Solr的测试,测Solr的性能,测产品的规格,测最优的配置,那段时间其实蛮枯燥的.慢慢的,测试多了

Solr

Solr Solr它是一款非常优秀的全文搜索引擎,它是一种开放源码的.基于Lucene的企业级搜索应用服务器.它对外提供类似于Web-service的API接口.用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引:也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果. 官方网址:http://lucene.apache.org/solr/ 官方文档:http://lucene.apache.org/solr/resources.html#documen

solr + tomcat + mysql整合

上一次分享了solr+tomcat的整合 学习就是要一步一步的进行才有趣 所以这次给大家分享solr+tomcat+mysql 一.准备工作 1.一张带数据的数据库表(我用的是这张叫merchant的表) 2.导jar包 需要把solr-5.5.4\dist目录下的solr-dataimporthandler-5.5.4.jar复制到tomcat\webapps\solr\WEB-INF\lib 目录下如图 还需要导一个数据库连接的jar包到tomcat\webapps\solr\WEB-INF

BugPhobia开发篇章:Alaph阶段Scurm Meeting

0x01 :目录与摘要 If you weeped for the missing sunset, you would miss all the shining stars 索引 提纲 整理与更新记录节点 起始记录时间 终止记录时间 0x01 目录与摘要 初次整理于2015/10/23 2015/10/23 12:00 A.M. -- 0x02 Alaph阶段第一次Scrum Meeting 初次整理于2015/10/24 2015/10/23 12:00 A.M. 2015/10/24 12:

第十九天内容

今日完成: 完成solr的主页面 学习老师所下发的程序 查阅与solr相关的文件资料 再次尝试构建文本数据库,并用solrJ实现增删改查 尝试构建solr的http页面 尝试将基于luncene的主页面抠出并于solr相结合,查阅了许多论文想写出单单基于solr的搜索引擎 明日计划: 构建solr的http页面,开始向数据库中导入office,word等文件,用solr的网页页面实现对数据库的查找和本地文本内容的检索,尝试将JSP页面与数据库进行连接,实现solr对文件内容的查找 心得体会: 这

solr学习(1)

solr是基于Lucene做的全文搜索引擎,目前只是对solr处于使用状态,源码未看.. 简单一点提提最近一段时间学习solr的收获吧. 一.solr的部署安装 这个网上教程挺多的,简要说明流程 1.zookeeper在linux安装部署 使用的是zookeeper-3.3.6,linux环境是centos6.5,建立了三个虚拟机,分别是222,223,224 解压zookeeper包,到usr/local/solrcloud文件下. 在solrcloud目录下建立zk-data文件(今后zk所

solr入门学习笔记1 --- solr的安装启动

solr是apache一个基于lucene开发的的完整搜索引擎解决方案.lucene只提供了建立索引和搜索的API接口,相当于一个内核,没有提供实际可用的将外部数据转化为lucene索引的方案或接口.而solr则提供了这样的一个功能,用户只需做简单的配置,即可将外部数据如数据库.office文档.PDF.页面文件等转化为索引文件,然后就可以基于这些数据和solar封闭的查询接口进行数据搜索. solr使用HTTP的方式外外部程序进行交互.即用户做好配置之后,将之发布为一个web服务,其它程序可以

solr学习-基础环境搭建(一)

目前网上关于solr6.+的安装教程很少,有些6.0之前的教程在应用到6.+的版本中出现很多的问题,所以特别整理出来这一片文章,希望能给各位码农一些帮助! 很少写些文章,如有不对的地方,还希望多多指导. 一.window 环境 solr 6.6.0 下载地址 http://apache.fayea.com/lucene/solr/6.6.0/ jdk 1.8    tomcat 8.0 本机tomcat环境:E:\Java\tomcat\apache-tomcat-8.0.26-windows-