solr实现LBS(地理位置搜索)有两种方式:Cartesian Tiers 笛卡尔层 和 GeoHash算法,本文主要介绍GeoHash算法实现。
实现步骤:
1. 修改schema.xml文件
<fieldtype name="geohash" class="solr.GeoHashField"/> <field name="geohashTest" type="geohash" indexed="true" stored="true"/>
2.sorlJ创建索引
double latitude = 39.869664; double longitude = 116.38325; Collection<SolrInputDocument> docs = new ArrayList<SolrInputDocument>(); SolrInputDocument doc1 = new SolrInputDocument(); doc1.addField("geohashTest",latitude+","+longitude); docs.add(doc1); server.add(docs); server.commit();
注意:经纬度格式:纬度,经度
3.检索
(1)sorlJ查询
SolrQuery query = new SolrQuery(); query.addFilterQuery("{!geofilt}"); query.set("q", "*:*"); query.set("d","10"); query.set("sfield","geohashTest"); query.set("pt","40.2323,116.12"); QueryResponse rsp = server.query(query);
(2)控制台查询
(3)检索字段说明
sfield:geohash对应的域名
pt:经纬度字符串 (纬度,经度)
d=球面距离
4.其它
关于Cartesian Tiers 笛卡尔层 和 GeoHash算法 实现原理可以参考:http://blog.csdn.net/a221133/article/details/14525197
相关推荐
### Solr 4.7 服务搭建详细指南 #### 一、环境准备 为了搭建 Solr 4.7 服务,我们需要确保以下环境已经准备好: ...通过以上步骤,用户可以成功搭建并配置好 Solr 4.7 服务,实现高效的数据索引和搜索功能。
5. **分布式搜索**:Solr4.7支持多节点的集群部署,可以实现数据的横向扩展,提高系统的可用性和容错性。通过ZooKeeper进行集群协调,可以实现数据的自动复制和负载均衡。 6. **查询和过滤器**:Solr支持多种查询...
### Apache Solr Guide 4.7 知识点解析 #### 一、Apache Solr 概述 **Apache Solr** 是一个高性能、基于 Lucene 的全文检索服务系统,广泛应用于互联网企业的搜索服务中。Solr 提供了高度可扩展且稳定的搜索功能,...
当前的IKAnalyzer官方版在用于Solr4以上高版本时,由于没有TokenizerFactory而造成诸多不便,于是有了为Lucene/Solr 4.7重新打包的IKAnalyzer 2012 FF
Solr 4.7 是一个流行的全文搜索引擎,它允许用户通过数据导入处理器(DataImportHandler, DIH)从关系型数据库如 SQL Server 导入数据并建立索引,以实现快速搜索。在这个教程中,我们将深入理解如何在 Solr 4.7 中...
Solr 4.7是其在2013年的版本,它提供了高效、可扩展的全文检索、命中高亮、 faceted search(面向切面的搜索)、结果排序等功能,广泛应用于网站内容搜索、电子商务产品搜索等领域。以下是对Solr 4.7中文企业开发...
solr4.7+myeclipse示例包含需要的jar包 httpcore-4.3 httpmime-4.3.1 jtds-1.2.4 jul-to-slf4j-1.6.6 solr-core-4.7.0
Solr 4.7 是一个基于 Lucene 的全文检索服务器,它提供了强大的搜索功能和配置灵活性。IK Analyzer 2012FF_hf1 是一个针对中文的分词器,专为处理中文文本而设计,旨在提高中文文本的索引和搜索效率。这个组合在描述...
### Solr 4.7 从数据库导入数据创建索引详解 #### 一、概述 在实际工程应用中,从数据库导出数据并创建索引来优化搜索效率是一种常见的做法。本文将详细介绍如何使用Solr 4.7从SQL Server 2005数据库中导入数据并...
### Solr 4.7 在 Tomcat 6 中部署详细步骤及知识点解析 #### 一、Solr 和 Tomcat 简介 - **Solr**:Apache Solr 是一个高性能、采用 Java 开发的全文搜索引擎。它基于 Lucene 库,支持高度可扩展性而不牺牲性能,...
在做IK分词器与solr过滤器结合是时候遇到一些问题, 在网上页找了一些jar包或者class,最后找到一个合适的源码,解决了问题。 另外根据产品需要使用了solr的WordDelimiterFilterFactory和ShingleFilterFactory。 ...
Solr实现电扇站内搜索Solr实现电扇站内搜索Solr实现电扇站内搜索Solr实现电扇站内搜索
通过继承Analyzer编写自定义类UseSmartIKAnalyzer和NotUseSmartIKAnalyzer,实现智能分词和最细粒度分词,支持solr4.7通过配置schema.xml实现不同的分词效果 <fieldType name="text_ik" class="solr.TextField"> ...
apache solr的4.7版本。Solr是一个基于Lucene的Java搜索引擎服务器,可以理解为一个独立的服务器端程序。Solr 提供了层面搜索、命中醒目显示并且支持多种输出格式(包括 XML/XSLT 和 JSON 格式)
结合《解密搜索引擎技术实战》第八章的代码,你可以逐步学习并实践上述知识点,理解Solr搜索引擎的实现原理,从而掌握构建高效搜索引擎的技术。记得在实际操作中不断调试和优化,以适应不同的业务场景和性能需求。
本篇文章将详细阐述如何利用Solr实现京东搜索的功能。 一、关键词搜索 在商品信息搜索中,关键词搜索是最基础也最重要的功能。用户输入关键词后,Solr会通过分析器对关键词进行分词处理,然后在索引库中匹配与之...
Solr in Action by Trey Grainger , Timothy Potter Book Description Publication Date: April 5, 2014 | ISBN-10: 1617291021 | ISBN-13: 978-1617291029 | Edition: 1 ... - Coverage of versions through Solr 4.7
Solr,全称为Apache Solr,是一款开源的全文搜索引擎,广泛应用于电商、新闻、文档检索等领域。它提供了高效、可扩展的搜索与分析能力。在电商领域,搜索结果的排序和打分对于用户体验至关重要,因为它直接影响到...