原创 Logstash:把MySQL数据导入到Elasticsearch中

在今天的这篇文章中,我们来讲述一下如何把一个MySQL的数据库导入到 Elasticsearch中并对数据进行分析。 安装 在今天的这个练习中,我们需要使用到MySQL数据。在做这个练习之前,我假设我们已经安装好自己的Elasticsearch及Kibana。如果没有安装,请参照我如下的文...

2019-09-29 18:33:35 912 9

原创 Beats:运用 Filebeat module 分析 nginx 日志

在之前的文章中,我介绍了如何使用Filebeat把一个日志文件直接写入到Elasticsearch中,或通过Logstash的方法写到Elasticsearch中。在今天的文章中,我们来介绍如何运用Filebeat模块来把nginx日志导入到Elasticsearch中,并进行分析。 Fileb...

2019-09-28 12:53:19 2445 0

原创 Elasticsearch:fuzzy 搜索 (模糊搜索)

在实际的搜索中,我们有时候会打错字,从而导致搜索不到。在Elasticsearch中,我们可以使用fuzziness属性来进行模糊查询,从而达到搜索有错别字的情形。 match查询具有“fuziness”属性。它可以被设置为“0”, “1”, “2”或“auto”。“auto”是推荐的选项,它会...

2019-09-24 15:55:00 1282 0

原创 Beats:Elastic Beats介绍

ElasticStack传统上由三个主要组件(Elasticsearch,Logstash和Kibana)组成,早已脱离了这种组合,现在也可以与名为“ Beats”的第四个元素结合使用--一个针对不同用例的日志运送者系列。 现在网上有一种说法叫做ELKB,这里的B就是指的beats. 本教程为刚刚...

2019-09-23 17:35:08 1157 0

原创 Elasticsearch:运用search_after来进行深度分页

在上一篇文章 “Elasticsearch:运用scroll接口对大量数据实现更好的分页”,我们讲述了如何运用scroll接口来对大量数据来进行有效地分页。在那篇文章中,我们讲述了两种方法: from加上size的方法来进行分页 运用scroll接口来进行分页 对于大量的数据而言,我们尽量避免...

2019-09-19 21:58:39 1919 0

原创 Elasticsearch:运用scroll接口对大量数据实现更好的分页

在Elasticsearch中,我们可以通过size和from来对我们的结果来进行分页。但是对于数据量很大的索引,这是有效的吗?Scroll API可用于从单个搜索请求中检索大量结果(甚至所有结果),这与在传统数据库上使用cursor的方式非常相似。Scroll不是用于实时用户请求,而是用于处理大...

2019-09-19 17:11:08 540 0

原创 Logstash:多个配置文件(conf)

在前面的一篇文章“Logstash:处理多个input”中,我们介绍了如何使用在同一个配置文件中处理两个input的情况。在今天这篇文章中,我们来介绍如何来处理多个配置文件的问题。对于多个配置的处理方法,有多个处理方法: 多个pipeline 一个pipleline处理多个配置文件 一个...

2019-09-18 20:47:31 2527 2

原创 Logstash:处理多个 input

我们知道Logstash的架构如下: 它的整个pipleline分为三个部分: input插件:提取数据。 这可以来自日志文件,TCP或UDP侦听器,若干协议特定插件(如syslog或IRC)之一,甚至是排队系统(如Redis,AQMP或Kafka)。 此阶段使用围绕事件来源的元数据标...

2019-09-18 16:39:51 915 0

原创 Elastic:用Docker部署Elastic栈

在之前的文章“如何在Linux,MacOS及Windows上进行安装Elasticsearch”,我介绍了如何通过安装包或者下载的压缩文件来进行安装Elasticsearch。在今天的文章里,我们来详细介绍如何使用docker来进行安装Elastic栈。 安装 因为我们需要使用docker...

2019-09-17 14:20:02 1952 8

原创 Logstash:Data转换,分析,提取,丰富及核心操作

在今天的这篇文章中,着重介绍Logstash在数据转换,分析,提取及核心操作方便的内容。首先,希望大家已经按照我之前的文章 “如何安装Elastic栈中的Logstash”把Logstash安装好。 Logstash数据源 我们知道Logstash可以在很多的应用场景中使用。它...

2019-09-15 21:26:19 1099 4

原创 Beats:通过Filebeat把日志传入到Elasticsearch

我们知道Elastic Stack被称之为ELK (Elasticsearch,Logstash and Kibana)。由于beats的加入,现在很多人把ELK说成为ELKB。这里的B就是代表Beats。Beats在Elasticsearch中扮演很重要的角色。 从上面的图上,我们可以看出...

2019-09-12 08:55:35 6029 12

原创 Logstash:把Apache日志导入到Elasticsearch

在之前的文章“Logstash: 应用实践 - 装载CSV文档到Elasticsearch”中,我们已经讲述了如果把一个CSV格式的文件的数据传入到Elasticsearch之中,今天我们来讲述一下如何把一个Apache log的内容传入到Elasticsearch之中。 在进行这个练习之前,大...

2019-09-11 16:24:37 947 9

原创 Elasticsearch:Pinyin 分词器

Elastic的Medcl提供了一种搜索Pinyin搜索的方法。拼音搜索在很多的应用场景中都有被用到。比如在百度搜索中,我们使用拼音就=可以出现汉字: 对于我们中国人来说,拼音搜索也是非常直接的。那么在Elasticsearch中我们该如何使用pinyin来进行搜索呢?答案是我们采用Medc...

2019-09-10 14:56:24 682 0

原创 Logstash:用Filebeat把数据传入到Logstash

在今天的讲座里,我们来讲述一下如何把Filebeat里的数据传入到Logstash之中。在做这个练习之前,我想信大家已经安装我之前的文章“如何安装Elastic栈中的Logstash”把Logstash安装好。 之前,我们介绍了一这样的一幅图: 如上图所示,我们可以直接把beats里的数据...

2019-09-10 09:30:41 1703 0

原创 Logstash: 应用实践 - 装载 CSV 文档到 Elasticsearch

在进行我们这个实践之前,相信大家已经安装好自己的Logstash环境。如果大家还没安装好Logstash,可以参照我之前的文章“如何安装Elastic栈中的Logstash”。 Logstash到底是做什么的? 我们先看一下如下的图: 简单地说,Logstash就是位于Data和...

2019-09-09 11:48:42 529 0

原创 Elasticsearch: Painless script编程

我们之前看见了在Elasticsearch里的ingest node里,我们可以通过以下processor的处理帮我们处理我们的一些数据。它们的功能是非常具体而明确的。那么在Elasticsearch里,有没有一种更加灵活的方式可供我们来进行编程处理呢?如果有,它使用的语言是什么呢? 在Elas...

2019-09-06 18:43:33 1444 1

原创 Elasticsearch:Dynamic mapping

Elasticsearch最重要的功能之一是它试图摆脱你的方式,让你尽快开始探索你的数据。 要索引文档,您不必首先创建索引,定义映射类型和定义字段 - 您只需索引文档,那么index,type和field将自动生效。比如: PUT data/_doc/1 { "count"...

2019-09-05 16:25:22 273 0

原创 Elasticsearch:search template

我们发现一些用户经常编写了一些非常冗长和复杂的查询 - 在很多情况下,相同的查询会一遍又一遍地执行,但是会有一些不同的值作为参数来查询。在这种情况下,我们觉得使用一个search template(搜索模板)来做这样的工作非常合适。搜索模板允许您使用可在执行时定义的参数定义查询。 Search ...

2019-09-05 14:10:13 489 0

原创 Elasticsearch: Index template

Index template定义在创建新index时可以自动应用的settings和mappings。 Elasticsearch根据与index名称匹配的index模式将模板应用于新索引。这个对于我们想创建的一系列的Index具有同样的settings及mappings。比如我们希望每一天/月的...

2019-09-05 11:50:58 385 0

原创 Elasticsearch:设置Elastic账户安全

我们知道Elastic安全是非常重要的。没有这个我们的数据可以被任何的人进行访问,串改,删除。Elastic Stack的安全是由x-pack所提供的。在Elastic Stack 7.0版本之前,这个是商用的版本,需要进行安装,并购买。从Elastic Stack 7.0之后,x-pack都已经...

2019-09-04 23:23:50 1460 1

原创 Elasticsearch: Reindex接口

在我们开发的过程中,我们有很多时候需要用到Reindex接口。它可以帮我们把数据从一个index到另外一个index进行重新reindex。这个对于特别适用于我们在修改我们数据的mapping后,需要重新把数据从现有的index转到新的index建立新的索引,这是因为我们不能修改现有的index的...

2019-09-04 09:36:29 357 0

原创 Elasticsearch: Ngrams, edge ngrams, and shingles

Ngrams和edge ngrams是在Elasticsearch中标记文本的两种更独特的方式。 Ngrams是一种将一个标记分成一个单词的每个部分的多个子字符的方法。 ngram和edge ngram过滤器都允许您指定min_gram以及max_gram设置。 这些设置控制单词被分割成的标记的大...

2019-09-03 22:53:25 357 0

原创 Elasticsearch: analyzer

如果大家之前看过我写的文章“开始使用Elasticsearch (3)”,在文章的最后部分写了有关于analyzer的有关介绍。在今天的文章中,我们来进一步了解analyzer。 analyzer执行将输入字符流分解为token的过程,它一般发生在两个场合: 在indexing的时候,也即在建立...

2019-09-03 11:08:09 1057 4

原创 Elasticsearch:Index alias

现在让我们来谈谈Elasticsearch最简单和最有用的功能之一:别名 (alias)。为了区分这里alias和文章“Elasticsearch : alias数据类型”,这里的别名(alias)指的是index的别名。别名正是他们听起来的样子; 它们是您可以使用的指针或名称,对应于一个或多个具...

2019-09-02 15:27:40 342 0

原创 Elasticsearch : alias 数据类型

就像其他的很多语言一样,我们可以给已有的变量取一个别名(alias)。即便是对高级语言一样,比如我们定义不同的指针变量,指向同一个内存空间。这个有些类似别名的概念。 在Elasticsearch中,我们也可以为index中的一个字段(field)取一个另外的名字: 它可以用来代替搜索请求中的目...

2019-09-02 12:52:42 1276 0

原创 Elasticsearch: Join数据类型

在Elasticsearch中,Join可以让我们创建parent/child关系。Elasticsearch不是一个RDMS。通常join数据类型尽量不要使用,除非不得已。那么Elasticsearch为什么需要Join数据类型呢? 在Elasticsearch中,更新一个object需要ro...

2019-09-01 01:13:09 623 0

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