- 博客(12)
- 收藏
- 关注
原创 和日本留学同学聊天想到的
两年前写的Blog,今天重新来看觉得还是感受颇深,特别是当初在javaeye上激起了一番讨论,其中有赞成,但是反对者占大多数,笔者还被有些网友冠以5 毛 党 云云。2年过去了,不知道那些持反对意见的朋友们现在对我的说法是否有了新的认识呢? 和日本留学同学聊天想到的 (1) 留学日本的同学告诉我中国留学生的口碑不好…所以日本企...
2013-02-23 15:45:58 273
基于Solr的地理位置搜索(3)
接上文,本文将继续介绍基于Solr的地理位置搜索的第二种实现方案Cartesian Tiers+GeoHash 从基于Solr的地理位置搜索(2)中可以看到完全基于GeoHash的查询过滤,将完全遍历整个docment文档,从效率上来看并不太合适,所以结合笛卡尔层后,能有效缩减少过滤范围,从性能上能很大程度的提高。 构建索引阶段: String geoHash = GeoHas...
2013-01-09 13:48:04 179
原创 基于Solr的地理位置搜索(2)
本文将继续围绕Solr+Lucene使用Cartesian Tiers 笛卡尔层和GeoHash的构建索引和查询的细节进行介绍。 在Solr中其实支持很多默认距离函数,但是基于坐标构建索引和查询的主要会基于2种方案: (1)GeoHash (2)Cartesian Tiers+GeoHash 而这块的源码实现都在lucene-spa...
2013-01-09 13:06:53 193
原创 基于Solr的地理位置搜索(1)
基于Solr的空间搜索学习笔记在Solr中基于空间地址查询主要围绕2个概念实现:(1) Cartesian Tiers 笛卡尔层Cartesian Tiers是通过将一个平面地图的根据设定的层次数,将每层的分解成若干个网格,如下图所示: 每层以2的评方递增,所以第一层为4个网格,第二层为16 个,所以整个地图的经纬度将在每层的网格中体现: 笛卡尔层在Lucene中对空间...
2013-01-08 13:25:35 201
SOLR技术指南系列文章大纲
第一章 初识Solr 1.1理解solr 1.1.1 Solr是什么 1.1.2 Solr能做什么 1.1.3 Solr的历史 1.2 Solr和Lucene 1.2.1 Solr和Lucene的关系 1.2.2 Solr为Lucene做了哪些事情 1.4 Solr的核心类 1.4.1 SolrCore 1.4.2 CoreCo...
2012-11-26 00:43:10 363
原创 关于大区间过滤优化内存设计
主要对一般docId为下标对应域值的结构做了改造,如果大家有更好的建议,欢迎大家提议和拍砖。 主要思路: 生成一个下标为 域 Term 遍历的Postion 且值为域值的数组: A[p]=field value 因为域值并不会像docId一样为唯一键递增,所以在创建的时候 初始化: Int [] A = new Int[reader.maxDoc()] 结束的时候如...
2012-11-16 22:20:34 79
原创 solr之缓存篇
Solr在Lucene之上开发了很多Cache功能,从目前提供的Cache类型有: (1)filterCache (2)documentCache (3)fieldvalueCache (4)queryresultCache 而每种Cache针对具体的查询请求进行对应的Cache。本文将从几个方面来阐述上述几种Cache在Solr的运用,具体如下: (1)Cache的生命周期 (2)...
2012-11-06 01:33:46 168
原创 NumericField&NumericRangeQuery原理分析
NumericField和NumericRangeQuery是Lucene 针对数值型区间查询的优化方案。在展开阐述 NumericField 和NumbericRanageQuery 的实现原理之前,对于Lucene范围查询的实现和概念可以参考博文《TermRangeQuery源码解析》一文。 从Lucene 2.9 开始,提供对数字范围的支持,然而...
2012-06-04 21:52:06 192
原创 TermRangeQuery源码解析
简单介绍下 在较早版本的 Lucene 中对一定范围内的查询RanageQuery 。该Query 继承于 MulitTermQuery,在重写(rewrite )Query 树的时候将会遵从一个原则: 根据起始区间值获取term, 然后遍历,根据满足条件的term 的数目来决定重写Query 的类型 如下代码所示: FilteredTermE...
2012-06-04 14:30:26 108
原创 HIVE安装中两个需要注意的问题
hive是做为客户端被安装的,调用了hadoop的脚本,有两点需要注意: 1.需要在hadoop-env.sh中增加以下脚本 #import hive jar for LIB in `ls -1 $HIVE_HOME/lib/*.jar ./lib/*.zip 2>/dev/null` do HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$LIB done...
2011-10-24 20:06:40 139
Hadoop源码分析 第一章 Hadoop脚本
详细的内容放在附件中,以下列出大纲,以后会陆续有新的章节放出 第一章脚本部分写作大纲,包含以下主题 大纲: 1. 介绍的集群启动过程并画出执行序列图,用一段文字对整体执行过程进行说明 2. 说明集群启动和停止的方式有哪几种:start-all.sh/sop-all.sh和start-dfs.sh/stop-dfs.sh等 3. 以start...
2011-09-05 16:15:04 97
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人