- 浏览: 150242 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (69)
- Maven (1)
- lucene (22)
- bobo zoie (6)
- eclipse (5)
- Nexus (1)
- Git (1)
- trac (1)
- RMI (2)
- svn (0)
- Protocol buffer (0)
- sensei (6)
- JMX (2)
- Faceted search (1)
- Linux (1)
- Cassandra (1)
- Zookeeper (3)
- zoie (1)
- jmap (1)
- mongodb (2)
- 百度百科 (2)
- 词库 (2)
- 抓取 (2)
- IndexTank (1)
- LinkedIn (4)
- norbert (3)
- 分布式 (2)
- senseidb (2)
- Thrift (1)
- scala (1)
- 搜索引擎 (1)
- 质量 (1)
- Nosql (1)
- Jaccard (1)
- Mahout (1)
最新评论
-
bluky999:
@Mark
怎样量化评价搜索引擎的结果质量 -
baso4233:
非常感谢,我跑通了。途中出现了,java.lang.Unsup ...
norbert 高并发分布式服务例子 examples (二) -
yangsong158:
rabbit9898 写道xiansuanla 写道我运行 m ...
JMX 入门例子 -
rabbit9898:
xiansuanla 写道我运行 main方法以后 cmd 里 ...
JMX 入门例子 -
xiansuanla:
我运行 main方法以后 cmd 里面运行 jconsole ...
JMX 入门例子
基于lucene的bobo-browse 的分组统计(Facet Search)
2010-10-25
转载注明出处
下载编译按照步骤:
http://code.google.com/p/bobo-browse/wiki/GettingStarted
git安装参照
http://rabbit9898.iteye.com/admin/blogs/789809
编译后dist目录下生成jar
测试示例的Java Maven程序
依赖的pom文件:
运行结果:
2010-10-25
转载注明出处
下载编译按照步骤:
http://code.google.com/p/bobo-browse/wiki/GettingStarted
git安装参照
http://rabbit9898.iteye.com/admin/blogs/789809
编译后dist目录下生成jar
测试示例的Java Maven程序
package search.testtry.bobo; import java.io.File; import java.io.IOException; import java.util.Arrays; import java.util.List; import java.util.Map; import org.apache.lucene.analysis.standard.StandardAnalyzer; import org.apache.lucene.index.IndexReader; import org.apache.lucene.queryParser.ParseException; import org.apache.lucene.queryParser.QueryParser; import org.apache.lucene.search.Query; import org.apache.lucene.search.SortField; import org.apache.lucene.store.Directory; import org.apache.lucene.store.FSDirectory; import org.apache.lucene.util.Version; import com.browseengine.bobo.api.BoboBrowser; import com.browseengine.bobo.api.BoboIndexReader; import com.browseengine.bobo.api.Browsable; import com.browseengine.bobo.api.BrowseException; import com.browseengine.bobo.api.BrowseFacet; import com.browseengine.bobo.api.BrowseHit; import com.browseengine.bobo.api.BrowseRequest; import com.browseengine.bobo.api.BrowseResult; import com.browseengine.bobo.api.BrowseSelection; import com.browseengine.bobo.api.FacetAccessible; import com.browseengine.bobo.api.FacetSpec; import com.browseengine.bobo.api.FacetSpec.FacetSortSpec; import com.browseengine.bobo.facets.FacetHandler; import com.browseengine.bobo.facets.impl.SimpleFacetHandler; public class BoboTest { public BoboTest() { // TODO Auto-generated constructor stub } /** * @author zliu * @param args * @throws IOException * @throws ParseException * @throws BrowseException */ public static void main(String[] args) throws IOException, ParseException, BrowseException { // define facet handlers // color facet handler SimpleFacetHandler colorHandler = new SimpleFacetHandler("color"); // category facet handler SimpleFacetHandler categoryHandler = new SimpleFacetHandler("category"); // List<FacetHandler> handlerList = Arrays.asList(new FacetHandler[]{colorHandler,categoryHandler}); List<FacetHandler<?>> handlerList = Arrays.asList(new FacetHandler<?>[] { colorHandler, categoryHandler }); // opening a lucene index Directory idx = FSDirectory.open(new File("D:\\search\\try\\bobo\\src\\cartag")); IndexReader reader = IndexReader.open(idx, true); // decorate it with a bobo index reader BoboIndexReader boboReader = BoboIndexReader.getInstance(reader, handlerList); // creating a browse request BrowseRequest br = new BrowseRequest(); br.setCount(10); br.setOffset(0); // add a selection /* * BrowseSelection sel=new BrowseSelection("color"); * sel.addValue("red"); br.addSelection(sel); */ // parse a query QueryParser parser = new QueryParser("contents", new StandardAnalyzer(Version.LUCENE_CURRENT)); Query q = parser.parse("cool car"); br.setQuery(q); // add the facet output specs FacetSpec colorSpec = new FacetSpec(); colorSpec.setOrderBy(FacetSortSpec.OrderHitsDesc); FacetSpec categorySpec = new FacetSpec(); categorySpec.setMinHitCount(2); categorySpec.setMaxCount(100); categorySpec.setOrderBy(FacetSortSpec.OrderHitsDesc); br.setFacetSpec("color", colorSpec); br.setFacetSpec("category", categorySpec); // SortField colorSort = new SortField("color",true); // sort by color // in descending order SortField colorSort = new SortField("color", SortField.STRING, true); br.setSort(new SortField[] { colorSort }); // perform browse Browsable browser = new BoboBrowser(boboReader); BrowseResult result = browser.browse(br); int totalHits = result.getNumHits(); System.out.println("命中的记录数:" + totalHits); BrowseHit[] hits = result.getHits(); Map<String, FacetAccessible> facetMap = result.getFacetMap(); FacetAccessible colorFacets = facetMap.get("color"); // System.out.println("colorFacets= " + colorFacets.toString()); List<BrowseFacet> facetVals = colorFacets.getFacets(); System.out.println("按color统计:"); for (BrowseFacet facetVal : facetVals) { System.out.println("\t\tcolor name=" + facetVal.getValue() + "; count=" + facetVal.getFacetValueHitCount()); } } }
依赖的pom文件:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>search.testtry</groupId> <artifactId>bobo-test</artifactId> <version>0.1-SNAPSHOT</version> <dependencies> <dependency> <groupId>3rdparty</groupId> <artifactId>bobo-browse</artifactId> <version>2.5.0</version> <!-- 2.0.6 --> <type>jar</type> </dependency> <dependency> <groupId>3rdparty</groupId> <artifactId>bobo-zoie</artifactId> <version>2.5.0</version> <type>jar</type> </dependency> <dependency> <groupId>org.apache.lucene</groupId> <artifactId>lucene-core</artifactId> <version>2.9.2</version> <!-- 3.0.0 --> </dependency> <dependency> <groupId>3rdparty</groupId> <artifactId>fastutil</artifactId> <version>5.1.5</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.5.8</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>1.5.8</version> </dependency> </dependencies> <build> <plugins> <plugin> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.6</source> <target>1.6</target> <encoding>UTF-8</encoding> </configuration> </plugin> </plugins> </build> </project>
运行结果:
命中的记录数:8255 按color统计: color name=black; count=1814 color name=yellow; count=1338 color name=red; count=1316 color name=white; count=1097 color name=silver; count=1021 color name=blue; count=565 color name=green; count=557 color name=gold; count=547
发表评论
-
基于sensei+lucene的分布式搜索终于上线了-2012-12-08
2011-12-08 13:26 1636基于sensei+lucene的分布式搜索终于上线了 ... -
[转载] sensei分布式实时搜索系统源码解析(二) 分布式Search的流程
2011-07-22 14:57 1477看来自己很懒,发现前同事的sensei 研究了 转载: ht ... -
[转载] sensei分布式实时搜索系统源码解析(一) senseiServer的启动及若干概念
2011-07-22 14:55 1784看来自己很懒,发现前同事的sensei 研究了 转载:htt ... -
lucene分布式搜索sensei的使用及完善
2011-07-22 14:32 3550原创文章,转载请注明 ... -
Zoie的升级-乱
2011-06-01 18:06 928Zoie的升级: 2.7.0public class Zoi ... -
bobo zoie的IndexReaderDecorator
2011-04-15 16:06 1309zoie是linkedin的一个基于lucene的实时搜索 ... -
转载:几种常见的基于Lucene的开源搜索解决方案对比
2011-04-06 14:38 1335一 直接使用 Lucene ( http://lucene ... -
转载: Apache Zookeeper入门1
2011-04-06 14:36 1906源: http://www.javabloger.com/ar ... -
转载:Lucene查询语法详解
2011-04-02 10:33 1108英文原文地址:http: ... -
各种字符串Hash函数比较
2011-02-12 14:54 4129Java自带的字符串hash函数: public ... -
Lucene MoreLikeThisQuery 例子 备注
2011-01-06 11:22 14541。 编码问题: MoreLikeThisQuery中的 ... -
Lucene MoreLikeThisQuery 例子
2011-01-04 13:42 2831要做一个跟文章标题相关的新闻,本来想简单做一下,就是把标 ... -
lucene 3.0 分词例子 转载
2010-12-27 17:30 1935源:http://hxraid.iteye.com/blog ... -
lucene基本概念
2010-12-03 15:51 1161一、lucene索引的建立 1 ... -
[转载] lucene使用与优化
2010-12-03 10:14 1059源:http://www.cnblogs.com/bysshi ... -
[转载] 几种常见的基于Lucene的开源搜索解决方案对比
2010-12-02 16:07 908源:http://blog.fulin.org/201 ... -
[转载] LinkedIn公司实现的实时搜索引擎Zoie
2010-12-02 15:42 1061源:http://www.cnblogs.com/fo ... -
Bobo- Zoie 主要接口实现以及继承关系
2010-11-29 12:32 1223Bobo的主要包的继承关系 1. BrowseServi ... -
lucene中的Token, TokenStream, Tokenizer, Analyzer
2010-11-22 10:41 1352转载: Token: 如果一个字段被token化,这表示它经 ... -
Lucene3.0的几种分词系统
2010-11-17 17:25 12891、 StopAnalyzer StopAnalyze ...
相关推荐
使用 React 和 RxJS 为 Elasticsearch 构建分面搜索界面的示例 如果您想查看代码, 从开始 - react 组件在搜索中目录及其名称以大写字母开头,rxjs内容位于的elasticsearch位是和行动,这只是方式来触发来自 UI 的...
SPARQL切面机可以在找到描述SPARQL Faceter的论文,尽管从1.0.0版开始,实现方式却大不相同。 最重要的是,不是只有一个SPARQL查询来获取所有构面的状态,而是每个构面都进行自己的查询。安装通过Bower安装: bower ...
Debian 包 Open Semantic Search Server open-semantic-search_xx.xx.xx.deb in src/packages.chroot 虚拟盒子 Virtual Box 来宾添加 ISO Debian 软件包 vmdebootstrap(安装:“apt-get install vmdebootstrap”...
Faceted-Search 是一个用 Java 编写的小型搜索引擎,用于帮助索引关系内容和创建 准备 用法很简单,首先要做的就是映射持久化实体,基本示例见 。 第二件事是配置数据库连接,这可以通过persistence.xml 或使用预先...
Readers will gain a deep understanding of how to implement core Solr capabilities such as faceted navigation through search results, matched snippet highlighting, field collapsing and search results ...
Technologies like Hadoop are trying to address some of the concerns, while Solr provides high-speed faceted search. Bringing these two technologies together is helping organizations resolve the ...
Readers will gain a deep understanding of how to implement core Solr capabilities such as faceted navigation through search results, matched snippet highlighting, field collapsing and search results ...
`angular-faceted-search` 是一个针对 AngularJS 设计的库,用于在 JSON 数据集上实现分面搜索。 **核心概念** 1. **分面(Facets)**: 分面是数据集的属性或类别,可以作为筛选条件。例如,在一个电商网站上,...
在给定的标题“faceted-search:提供分面搜索的 AmpersandJS 工具集”中,我们可以推断这是一个专门针对JavaScript开发的库,用于实现分面搜索功能。 AmpersandJS 是一套轻量级的JavaScript工具和库,设计用于构建...
时代兼容性检查 Web应用程序根据数据执行路由兼容性检查。... --build-arg FACETED_BASE_URI=https://linked.ec-dataplatform.eu/describe/ ? url= \ ./ 构建此映像时,需要三个配置参数: ERA_GEO_API :在ER
同时,为了满足淘特平台的需求,可能还结合了Solr或Nutch等高级搜索引擎框架,以便实现更复杂的功能,如 faceted search(分面搜索)和相关性排序。 此外,淘特搜索引擎可能还涉及以下关键技术: 1. **分布式处理*...
资源分类:Python库 所属语言:Python 资源全名:eea.faceted.inheritance-4.5.zip 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
资源分类:Python库 所属语言:Python 资源全名:eea.faceted.vocabularies-6.2.zip 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
Apisearch-搜索界面 该库是Apisearch项目的一部分。 Apisearch是一个完全基于开源第三方技术的开源搜索引擎。 该项目为她的用户提供了一套渐进式的语言集成库,以及一些第三方项目集成包,插件或javascript小部件。...
You'll master topics like text analysis, faceted search, hit highlighting, result grouping, query suggestions, multilingual search, advanced geospatial and data operations, and relevancy tuning.
在Lucene 4.3.1中,还引入了一些高级特性和功能,如N-gram分析、Faceted Search(分面搜索)和Spatial Search(空间搜索)。N-gram分析允许短语匹配,而分面搜索则提供了对分类数据的高级浏览和过滤。空间搜索则允许...
它提供了强大的搜索功能,包括全文搜索、faceted Search 和聚合搜索等。 Kibana Kibana 是 Elastic Stack 的数据可视化组件,提供了丰富的数据可视化功能,包括图表、仪表板和地图等。它可以帮助用户快速了解数据...
在检索算法方面,工会档案盒标签可以采用full-text search、 faceted search等。 6. 工会档案盒标签的安全性 工会档案盒标签的安全性是非常重要的,旨在保护文件的机密性、完整性和可用性。工会档案盒标签的安全性...
将 MyEclipse 中创建的 Web 项目导入到 Eclipse 中需要进行一些额外的配置,包括转换项目到 faceted 形式、编辑设置文件和更改目录结构。但是,通过这些步骤,我们可以成功地将项目导入到 Eclipse 中,并在 Tomcat ...