elastic stack
小旋锋
DGUT
展开
-
ElasticSearch初体验
需要明白的问题什么是倒排索引?它的组成是什么?常见的相关性算分方法有哪些?为什么查询语句没有返回预期的文档?常用的数据类型有哪些?Text和Keyword的区别是什么?集群是如何搭建起来的?是如何实现故障转移的?Shard具体是由什么组成的?Elastic Stack构建在开源基础之上, Elastic Stack 让您能够安全可靠地获取任何来源、任何格式的数据,并且...原创 2018-08-15 19:48:25 · 372 阅读 · 0 评论 -
基于ELK 的 Apache 日志可视化分析
Apache日志可视化分析项目地址:https://github.com/whirlys/Elastic-In-Practice/tree/master/apache_log_demo在网站的运营过程中,网站访问者的各种信息对于网站运营者来说,是非常有价值的信息。而网站日志则是这些信息的来源,其记录着web服务器接收处理请求等各种原始信息。分析包括网站独立访问者的数量访问热度地图...原创 2018-12-05 00:15:41 · 3191 阅读 · 1 评论 -
Elasticsearch 6.3.2 启动过程
前言本文探究Elasticsearch 6.3.2的启动流程环境准备使用工具:IDEA,XMind关于ES调试环境的搭建,可以参考前面的文章 《教你编译调试Elasticsearch 6.3.2源码》然后通过设置断点,从 org.elasticsearch.bootstrap.ElasticSearch 的入口函数开始,一步一步调试上图为使用 IDEA 2018.2...原创 2018-09-01 20:54:36 · 2804 阅读 · 0 评论 -
Google Guice 快速入门
Guice是Google开源的一个依赖注入类库,相比于Spring IoC来说更小更快。Elasticsearch大量使用了Guice,本文简单的介绍下Guice的基本概念和使用方式基本使用1. 引入依赖如果使用gradle的话,添加下列依赖compile group: 'com.google.inject.extensions', name: 'guice-multibi...转载 2018-08-30 00:05:43 · 586 阅读 · 0 评论 -
Elasticsearch 分布式特性
前言本文的主要内容:分布式介绍及cerebro构建集群副本与分片集群状态与故障转移文档分布式存储脑裂问题shard详解分布式介绍及cerebroES支持集群模式,是一个分布式系统,其好处主要有两个: - 增大系统容量,如内存、磁盘,使得ES集群可以支持PB级的数据 - 提高系统可用性,即使部分节点停止服务,整个集群依然可以正常服务ES集群由多个ES实例组...原创 2018-08-25 18:52:45 · 1145 阅读 · 0 评论 -
23个最有用的ES检索技巧(Java API实现)
前言本文是对 23个最有用的Elasticseaerch检索技巧 一文提到的ES检索技巧进行 Java API 的简单实现,但仅限于简单实现,并不考虑包括参数校验,异常处理,日志处理,安全等问题,仅供参考代码见 UsefullESSearchSkill ,原查询语句请对照原文运行环境JDK version : 10.0.2 gradle version : 4.7 Elas...原创 2018-08-25 13:27:54 · 18189 阅读 · 5 评论 -
23个最有用的Elasticseaerch检索技巧
前言本文主要介绍 Elasticsearch 23种最有用的检索技巧,提供了详尽的源码举例,并配有相应的Java API实现,是不可多得的 Elasticsearch 学习&实战资料数据准备为了讲解不同类型 ES 检索,我们将要对包含以下类型的文档集合进行检索:title 标题authors 作者summary...转载 2018-08-24 18:55:50 · 474 阅读 · 0 评论 -
Elasticsearch 中的 Guice
前言Elasticsearch 源代码中使用了Guice框架进行依赖注入. 为了方便阅读源码, 此处我先通过模仿ES guice的使用方式简单写了一个基本Demo 方便理解, 之后再来理一下ES的Guice使用. 编写的测试类原理图如下:总共有两个Module,一个是ToolModule,**用于绑定**IAnimal接口、ITool接口以及Map对象. 另一个是HumanModule...转载 2018-08-31 00:19:13 · 497 阅读 · 0 评论 -
教你编译调试Elasticsearch 6.3.2源码
前言想深入理解 Elasticsearch,阅读它的源码是很有必要的,一来可以了解它内部的具体实现,有助于调优,二来可以了解优秀开源项目的代码架构,提高我们的代码架构能力等阅读Elasticsearch源码的第一步是搭建调试环境,然后作者在这个过程中遇到很多麻烦,在网上找不到想要的答案,历经千辛最后一一解决,所以记录下,帮助有需要的童鞋软件环境操作系统:win7Elasti...原创 2018-08-23 12:44:11 · 14680 阅读 · 4 评论 -
Elasticsearch 6.x Mapping设置
Mapping类似于数据库中的表结构定义,主要作用如下:定义Index下字段名(Field Name)定义字段的类型,比如数值型,字符串型、布尔型等定义倒排索引的相关配置,比如是否索引、记录postion等 需要注意的是,在索引中定义太多字段可能会导致索引膨胀,出现内存不足和难以恢复的情况,下面有几个设置:index.mapping.total_fields.limi...原创 2018-08-16 21:29:48 · 11471 阅读 · 1 评论 -
windows上运行 Lucene 7.4 demo
下载 Lucene7.4.0 解压到 C:\Program Files\配置环境变量 LUCENE7 值为 C:\Program Files\lucene-7.4.0将以下4个jar包复制到Java的环境变量CLASSPATH所指引的路径中,也就是在环境变量CLASSPATH中追加下面的值:%LUCENE7%\demo\lucene-demo-7.4.0.jar;%LUCENE7%...原创 2018-08-18 17:10:39 · 1427 阅读 · 0 评论 -
Lucene7.4 初体验
前言本文的简要内容:Lucene简介体验Lucene DemoLucene 核心类介绍Lucene 索引文件格式Lucene简介Lucene是目前最流行的Java开源搜索引擎类库,最新版本为7.4.0。Lucene通常用于全文检索,Lucene具有简单高效跨平台等特点,因此有不少搜索引擎都是基于Lucene构建的,例如:Elasticsearch,Solr等等。现...原创 2018-08-18 16:32:22 · 2785 阅读 · 0 评论 -
elasticsearch倒排索引与分词
倒排索引正排索引:文档id到单词的关联关系倒排索引:单词到文档id的关联关系示例: 对以下三个文档去除停用词后构造倒排索引 倒排索引-查询过程查询包含“搜索引擎”的文档通过倒排索引获得“搜索引擎”对应的文档id列表,有1,3通过正排索引查询1和3的完整内容返回最终结果倒排索引-组成单词词典(Term Dictionary)倒排列表(Post...原创 2018-08-16 00:26:12 · 1167 阅读 · 0 评论 -
Elasticsearch源码分析 | 单节点的启动和关闭
本文主要简要介绍Elasticsearch单节点的启动和关闭流程。Elasticsearch版本:6.3.2相关文章1、Google Guice 快速入门2、Elasticsearch 中的 Guice3、教你编译调试Elasticsearch 6.3.2源码4、Elasticsearch 6.3.2 启动过程创建节点Elasticsearch的启动引导类为 Bootstrap 类,...原创 2019-01-08 02:10:44 · 1997 阅读 · 1 评论