当前位置:首页 > 开发教程 > java教程 >

Apache Solr 初级教程(介绍、安装部署、Java接口、中文分词)(2)

时间:2013-04-27 16:59 来源:网络整理 作者:采集侠 收藏

图 1 Solr 欢迎界面 图 2 管理控制台界面 使用Java 接口访问Solr 服务 SolrJ 是Solr 服务器的一个Java 接口,使用该接口再也不同为虑客户端与服务器端交互时格式解析和转换的问题烦恼了,取而代之的是用你熟悉的对

图 1 Solr 欢迎界面

Apache Solr 初级教程(介绍、安装部署、Java接口、中文分词)

图 2 管理控制台界面

使用Java 接口访问Solr 服务

  SolrJ 是Solr 服务器的一个Java 接口,使用该接口再也不同为虑客户端与服务器端交互时格式解析和转换的问题烦恼了,取而代之的是用你熟悉的对象来进行相关的操作,而且随着Solr 的不断升级SolrJ 也会同样提供这些新加入的功能。

SolrJ (Solr1.4 )依赖的Jar 包 创建 SolrServer

  SolrJ 中有2 种SolrServer 对象,CommonsHttpSolrServer 与EmbeddedSolrServer ,他们都是线程安全的并建议使用单例模式来使用他们,因为动态创建会造成连接泄露。

  • Create CommonsHttpSolrServer
  • 1 2 SolrServer server

  • Create EmbeddedSolrServer
  • 1 2 3 4 5 , CoreContainer.CoreContainer coreContainer EmbeddedSolrServer server

    添加

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 CommonsHttpSolrServer  SolrServer server server.SolrInputDocument doc1 doc1., "id1", 1.0f ); doc1., "doc1", 1.0f ); doc1., SolrInputDocument doc2 doc2., "id2", 1.0f ); doc2., "doc2", 1.0f ); doc2., Collectiondocs.docs.server.server.

    查询

    1 2 3 4 5 6 7 8 // 得到一个 SolrServer 实例(通过上面介绍的方法创建) SolrServer server SolrQuery query query.query., SolrQuery.SolrDocumentList docs

    中文分词 分词产品

    目前Lucene 的中文分词主要有:

  • paoding :Lucene 中文分词“庖丁解牛” Paoding Analysis 。
  • 分词效率

    下面是各个分词产品官方提供的数据:

  • paoding :在PIII 1G 内存个人机器上,1 秒 可准确分词 100 万 汉字。
  • imdict :483.64 ( 字节/ 秒) ,259517( 汉字/ 秒) 。
  • mmseg4j : complex 1200kb/s 左右, simple 1900kb/s 左右。
  • ik :具有 50 万字 / 秒的高速处理能力。
  • 自定义词库 ik 与 solr 集成

    以上产品中只有 ik 提供了 Solr ( 1.3 , 1.4 )的分词接口程序,只需修改配置文件即可实现中文分词,配置方法如下;

    使用 IKAnalyzer 的配置

    1 2 3 4 5 6 7 ="1.1"> …… == …… </schema>

    使用 IKTokenizerFactory 的配置

    1 2 3 4 5 6 7 8 9 10 === …… == …… </analyzer> </fieldType>


    java教程阅读排行

    最新文章