Lucene/Solr解密

探索Lucene/Solr高性能的秘密

排序:
默认
按更新时间
按访问量

Lucene倒排索引简述 细说倒排索引构建

设计合适的数据结构对影响提升至关,在特定的场景使用的合适的结构是成功的基石,Lucene采用哪些数据结构解决构建索引的性能呢?本文将带你领略Lucene数据结构之美。

2018-11-13 23:39:42

阅读数:171

评论数:0

Lucene倒排索引简述 番外篇

Lucene构建索引是一个非常复杂的过程,需要经过多道工序才能完成。那你知道Lucene在索引构建过程有哪些工序吗?又是整体流程是怎么样的呢?

2018-10-30 19:18:27

阅读数:128

评论数:0

Lucene倒排索引简述 之倒排表

文章目录前言Postings编码VIntBlockPackedBlockPostings文件结构说明Frequencies And Skip Data(.doc文件)TermFreqs -- FrequenciesMulti-level SkipList -- SkipDataPostitions...

2018-10-09 20:31:55

阅读数:2772

评论数:0

Lucene倒排索引简述 之索引表

Lucene倒排索引的核心内容,索引表,你对这部分真的熟悉了吗?那你知道FST用什么地方吗?FST又存储了什么内容呢?有什么功能呢?关于Burst-Trie,你知道Lucene是如何采用它的思想来加速Lucene搜索性能的吗?

2018-09-27 09:57:42

阅读数:237

评论数:0

Lucene DocValues详解

DocValues,人称正向索引,也是大家所认识的面向列存储。即通过文档编号与字段值在索引建立直接映射的关系,并存储。对DocValues我想你并不陌生,但我相信你对它并不算熟悉。接下来,我们将具体来看看它的存储结构、字段类型、以及使用场景等。

2017-03-07 00:10:39

阅读数:4040

评论数:0

Lucene TFIDFSimilarity评分公式详解

TFIDFSimilarity曾经是Lucene/Solr默认评分公式,想知道Lucene的评分过程就得先了解Lucene的评分公式,接下来将深刻剖析公式每个部分推导过程以及它的含义。

2017-02-26 17:34:41

阅读数:1841

评论数:0

Solr/SolrCloud Faceting细节三则

FacetComponent提供了Faceting功能,你了解Faceting吗?你知道facet.overrequest.count和facet.overrequest.ratio这两个参数吗?你知道Faceting总是带自QueryComponent的结果集吗

2018-10-30 16:28:53

阅读数:667

评论数:1

Lucene's MergePolicy

Lucene’s MergePolicy Lucene很多特征,在我看来跟LSM-Tree的数据库非常相似,甚至很多问题的解决方式都如出一辙。这里我想跟大家来聊聊Lucene的Segment合并问题,这个问题同样发生LSM-Tree数据库(HBase)。 我们知道我们每次冲刷索引时,Lucen...

2018-03-23 16:58:33

阅读数:276

评论数:0

Hive本地调试

一准备 二事情远没这么简单呢 1 winutilsexe找不到 2 系统找不到指定的文件 3 系统找不到指定的路径 三这样就可以了吗 1 UnsatisfiedLinkError 2 如果还不行 四结尾 虽然已经很习惯看静态代码了,但是这种方式始终很不方便,需要来来回回...

2018-02-11 20:24:38

阅读数:490

评论数:0

Solr 迟到的Payloads

是什么让索引时Boost汗颜退场,又是什么是让Payloads在Solr6.6开始名声大噪,走进Solr6.6 新特性之一,Payloads Query了解她的前世今生,她的沉沉浮浮。PayloadsQuery为我们带来哪些不一样查询和文档组织方式呢,也许你看完了之后就不需要频频groupby了;...

2017-10-23 22:28:09

阅读数:560

评论数:0

Solr Date类型的哪些你不得不了解的细节

我们先来看看Solr日期类型的一些内幕,然后讨论一下Solr日期类型存在的一些问题,最后我们看看怎么解决现存的问题。 概述 DateField 在Solr4.x之前,我们只有DateField,这类型现在用的应该比较少了,它对应Java中的java.util.Date类型。实现上,如你...

2017-07-09 14:29:58

阅读数:3832

评论数:9

Solr搜索统计 JSON Faceting API

如果你一直用在Solr,并打算使用Solr来做一些统计分析的话,接下来的内容你会非常感兴趣。 solr 5.3的时候完全重写了Solr查询语法,其中最为重要的就是重写Solr Facet查询语法。她就是我们今天的主角,JSON Facet API是一种全新的搜索查询语法,针对Facet+Stats...

2017-06-26 03:40:46

阅读数:1405

评论数:0

Solr查询语言 JSON Request API

JSON Request API是一套优雅高效查询语法,尤其在搜索统计方面带全新的体验,既简洁又漂亮。绝对是一次非常美好的体验。

2017-06-13 14:51:32

阅读数:1419

评论数:0

大明想跟你聊聊Solr6.x

来来来,坐下来,我们一起来聊聊Solr6.6。其实我关注Solr也有很长时间了,已经有小几年了吧。接下来, 我们来具体的聊一聊Solr几个变化或者变化趋势。

2017-06-08 23:50:00

阅读数:1743

评论数:0

JUC之JDK自带锁StampedLock

StampedLock是JDK 1.8的一把新锁,同样出自Doug Lee之手。这货高级了,出身显赫、自带光环,有着光辉的使命。她是一把不一样的锁,前面我们所整理过的两把锁(ReentantLock&ReentrantReadWriteLock)都是基于AQS框架实现,同时又都具有可重入性...

2017-02-22 02:18:29

阅读数:502

评论数:0

JUC之JDK自带锁ReentrantReadWriteLock

Java纪年1.5年,ReentrantReadWriteLock诞生于J·U·C。此后,国人一般称它为读写锁。人如其名,人如其名,她就是一个可重入锁,同时她还是一个读、写锁。跟ReentrantLock并没有亲属关系因为ReentrantReadWriteLock在命名上跟ReetrantLoc...

2017-02-14 23:10:25

阅读数:217

评论数:0

JUC之JDK自带锁ReentrantLock

ReentrantLock出身自Java 1.5,中文名可重入锁 是Java JDK自带独占锁的唯一实现,也是最常用的锁,是synchronized的升级版。我们中间有个synchronized我们已经认识过synchronized了,知道她能帮我们实现线程同步提供原子性语义,同时又有可重入性。...

2017-02-12 10:19:50

阅读数:455

评论数:0

JUC之AQS框架

AQS是一个框架,一个提供锁或同步器依赖于`FIFO等待队列`所必要的“基础设施”的框架。**Dong Lea**之所以写个抽象类的目的是为了简化我们实现同步器的工作。 提供一个基于FIFO等待队列,可以用于构建锁或者其他同步装置的基础框架。意在能够成为实现大部分同步需求的基础。 AQS默认提供...

2017-02-08 00:38:21

阅读数:1381

评论数:0

JUC之volatile

volatile提供了一个高效的同步机制,她在某些情况下可以代替synchronized实现更轻量和高效的同步机制,同时也更为脆弱,更难于掌控。被volatile修饰的变量具有内存可见性,但不具有原子性。至于什么是可见性,前面已经做过简单介绍,接下来我们进一步来看什么是可见性。

2017-02-06 03:12:38

阅读数:353

评论数:0

JUC之synchronized

synchronized是Java语言的一个关键字,用来修饰一个方法或者代码块,使得目标达到线程同步的目的。当我们希望某个方法或者代码块,同一时间只能有一个线程能够执行,即是同一时间只有一个线程能够进入该方法或者代码块,其它线程将会被阻塞直接原线程执行结束,此时我们使用该关键字。

2017-02-04 15:22:58

阅读数:228

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭