The requested URL was not found on this server. 不管你信不信,反正我是没找到

社区日报 第772期 (2019-11-04)

1、elasticseach和nginx相结合,增加写入性能的同时还可以提供负载均衡。(自备梯子)
http://t.cn/AiBIEfga
2、避免OOM的利器:ElasticSeach 7.x 实际内存断路器
https://www.elastic.co/cn/blog ... eaker
3、了解es 7.x使用的最新jdk12特性,避免运维踩坑
http://t.cn/ExjQUV7


编辑:cyberdak
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup 
继续阅读 »
1、elasticseach和nginx相结合,增加写入性能的同时还可以提供负载均衡。(自备梯子)
http://t.cn/AiBIEfga
2、避免OOM的利器:ElasticSeach 7.x 实际内存断路器
https://www.elastic.co/cn/blog ... eaker
3、了解es 7.x使用的最新jdk12特性,避免运维踩坑
http://t.cn/ExjQUV7


编辑:cyberdak
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup  收起阅读 »

社区日报 第771期 (2019-11-03)

1.使用Docker尝试部署Elasticsearch。
http://t.cn/AiByJuok
2.(自备梯子)Docker部署Elasticsearch。
http://t.cn/AiByxZxu
3.(自备梯子)什么时候需要区块链?
http://t.cn/EX7OY1A

编辑:至尊宝
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
继续阅读 »
1.使用Docker尝试部署Elasticsearch。
http://t.cn/AiByJuok
2.(自备梯子)Docker部署Elasticsearch。
http://t.cn/AiByxZxu
3.(自备梯子)什么时候需要区块链?
http://t.cn/EX7OY1A

编辑:至尊宝
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup 收起阅读 »

深入理解Elasticsearch写入过程

Elasticsearch 是当前主流的搜索引擎,其具有扩展性好,查询速度快,查询结果近实时等优点,本文将对Elasticsearch的写操作进行分析。

1. lucene的写操作及其问题

Elasticsearch底层使用Lucene来实现doc的读写操作,Lucene通过

public long addDocument(...);
public long deleteDocuments(...);
public long updateDocument(...);

三个方法来实现文档的写入,更新和删除操作。但是存在如下问题

  1. 没有并发设计
    lucene只是一个搜索引擎库,并没有涉及到分布式相关的设计,因此要想使用Lucene来处理海量数据,并利用分布式的能力,就必须在其之上进行分布式的相关设计。
  2. 非实时
    将文件写入lucence后并不能立即被检索,需要等待lucene生成一个完整的segment才能被检索
  3. 数据存储不可靠
    写入lucene的数据不会立即被持久化到磁盘,如果服务器宕机,那存储在内存中的数据将会丢失
  4. 不支持部分更新
    lucene中提供的updateDocuments仅支持对文档的全量更新,对部分更新不支持

2. Elasticsearch的写入方案

针对Lucene的问题,ES做了如下设计

2.1 分布式设计:

为了支持对海量数据的存储和查询,Elasticsearch引入分片的概念,一个索引被分成多个分片,每个分片可以有一个主分片和多个副本分片,每个分片副本都是一个具有完整功能的lucene实例。分片可以分配在不同的服务器上,同一个分片的不同副本不能分配在相同的服务器上。
在进行写操作时,ES会根据传入的_routing参数(或mapping中设置的_routing, 如果参数和设置中都没有则默认使用_id), 按照公式shard_num = hash(\routing) % num_primary_shards,计算出文档要分配到的分片,在从集群元数据中找出对应主分片的位置,将请求路由到该分片进行文档写操作。

2.2 近实时性-refresh操作

当一个文档写入Lucene后是不能被立即查询到的,Elasticsearch提供了一个refresh操作,会定时地调用lucene的reopen(新版本为openIfChanged)为内存中新写入的数据生成一个新的segment,此时被处理的文档均可以被检索到。refresh操作的时间间隔由refresh_interval参数控制,默认为1s, 当然还可以在写入请求中带上refresh表示写入后立即refresh,另外还可以调用refresh API显式refresh。

2.3 数据存储可靠性

  1. 引入translog
    当一个文档写入Lucence后是存储在内存中的,即使执行了refresh操作仍然是在文件系统缓存中,如果此时服务器宕机,那么这部分数据将会丢失。为此ES增加了translog, 当进行文档写操作时会先将文档写入Lucene,然后写入一份到translog,写入translog是落盘的(如果对可靠性要求不是很高,也可以设置异步落盘,可以提高性能,由配置index.translog.durabilityindex.translog.sync_interval控制),这样就可以防止服务器宕机后数据的丢失。由于translog是追加写入,因此性能比较好。与传统的分布式系统不同,这里是先写入Lucene再写入translog,原因是写入Lucene可能会失败,为了减少写入失败回滚的复杂度,因此先写入Lucene.
  2. flush操作
    另外每30分钟或当translog达到一定大小(由index.translog.flush_threshold_size控制,默认512mb), ES会触发一次flush操作,此时ES会先执行refresh操作将buffer中的数据生成segment,然后调用lucene的commit方法将所有内存中的segment fsync到磁盘。此时lucene中的数据就完成了持久化,会清空translog中的数据(6.x版本为了实现sequenceIDs,不删除translog)
  3. merge操作
    由于refresh默认间隔为1s中,因此会产生大量的小segment,为此ES会运行一个任务检测当前磁盘中的segment,对符合条件的segment进行合并操作,减少lucene中的segment个数,提高查询速度,降低负载。不仅如此,merge过程也是文档删除和更新操作后,旧的doc真正被删除的时候。用户还可以手动调用_forcemerge API来主动触发merge,以减少集群的segment个数和清理已删除或更新的文档。
  4. 多副本机制
    另外ES有多副本机制,一个分片的主副分片不能分片在同一个节点上,进一步保证数据的可靠性。

    2.4 部分更新

    lucene支持对文档的整体更新,ES为了支持局部更新,在Lucene的Store索引中存储了一个_source字段,该字段的key值是文档ID, 内容是文档的原文。当进行更新操作时先从_source中获取原文,与更新部分合并后,再调用lucene API进行全量更新, 对于写入了ES但是还没有refresh的文档,可以从translog中获取。另外为了防止读取文档过程后执行更新前有其他线程修改了文档,ES增加了版本机制,当执行更新操作时发现当前文档的版本与预期不符,则会重新获取文档再更新。

3. ES的写入流程

ES的任意节点都可以作为协调节点(coordinating node)接受请求,当协调节点接受到请求后进行一系列处理,然后通过_routing字段找到对应的primary shard,并将请求转发给primary shard, primary shard完成写入后,将写入并发发送给各replica, raplica执行写入操作后返回给primary shard, primary shard再将请求返回给协调节点。大致流程如下图:

3.1 coordinating节点

ES中接收并转发请求的节点称为coordinating节点,ES中所有节点都可以接受并转发请求。当一个节点接受到写请求或更新请求后,会执行如下操作:

  1. ingest pipeline
    查看该请求是否符合某个ingest pipeline的pattern, 如果符合则执行pipeline中的逻辑,一般是对文档进行各种预处理,如格式调整,增加字段等。如果当前节点没有ingest角色,则需要将请求转发给有ingest角色的节点执行。
  2. 自动创建索引
    判断索引是否存在,如果开启了自动创建则自动创建,否则报错
  3. 设置routing
    获取请求URL或mapping中的_routing,如果没有则使用_id, 如果没有指定_id则ES会自动生成一个全局唯一ID。该_routing字段用于决定文档分配在索引的哪个shard上。
  4. 构建BulkShardRequest
    由于Bulk Request中包含多种(Index/Update/Delete)请求,这些请求分别需要到不同的shard上执行,因此协调节点,会将请求按照shard分开,同一个shard上的请求聚合到一起,构建BulkShardRequest
  5. 将请求发送给primary shard
    因为当前执行的是写操作,因此只能在primary上完成,所以需要把请求路由到primary shard所在节点
  6. 等待primary shard返回

3.2 primary shard

Primary请求的入口是PrimaryOperationTransportHandler的MessageReceived, 当接收到请求时,执行的逻辑如下

  1. 判断操作类型
    遍历bulk请求中的各子请求,根据不同的操作类型跳转到不同的处理逻辑
  2. 将update操作转换为Index和Delete操作
    获取文档的当前内容,与update内容合并生成新文档,然后将update请求转换成index请求,此处文档设置一个version v1
  3. Parse Doc
    解析文档的各字段,并添加如_uid等ES相关的一些系统字段
  4. 更新mapping
    对于新增字段会根据dynamic mapping或dynamic template生成对应的mapping,如果mapping中有dynamic mapping相关设置则按设置处理,如忽略或抛出异常
  5. 获取sequence Id和Version
    从SequcenceNumberService获取一个sequenceID和Version。SequcenID用于初始化LocalCheckPoint, verion是根据当前Versoin+1用于防止并发写导致数据不一致。
  6. 写入lucene
    这一步开始会对文档uid加锁,然后判断uid对应的version v2和之前update转换时的versoin v1是否一致,不一致则返回第二步重新执行。 如果version一致,如果同id的doc已经存在,则调用lucene的updateDocument接口,如果是新文档则调用lucene的addDoucument. 这里有个问题,如何保证Delete-Then-Add的原子性,ES是通过在Delete之前会加上已refresh锁,禁止被refresh,只有等待Add完成后释放了Refresh Lock, 这样就保证了这个操作的原子性。
  7. 写入translog
    写入Lucene的Segment后,会以key value的形式写Translog, Key是Id, Value是Doc的内容。当查询的时候,如果请求的是GetDocById则可以直接根据_id从translog中获取。满足nosql场景的实时性。
  8. 重构bulk request
    因为primary shard已经将update操作转换为index操作或delete操作,因此要对之前的bulkrequest进行调整,只包含index或delete操作,不需要再进行update的处理操作。
  9. flush translog
    默认情况下,translog要在此处落盘完成,如果对可靠性要求不高,可以设置translog异步,那么translog的fsync将会异步执行,但是落盘前的数据有丢失风险。
  10. 发送请求给replicas
    将构造好的bulkrequest并发发送给各replicas,等待replica返回,这里需要等待所有的replicas返回,响应请求给协调节点。如果某个shard执行失败,则primary会给master发请求remove该shard。这里会同时把sequenceID, primaryTerm, GlobalCheckPoint等传递给replica。
  11. 等待replica响应
    当所有的replica返回请求时,更细primary shard的LocalCheckPoint。

3.3 replica shard

Replica 请求的入口是在ReplicaOperationTransportHandler的messageReceived,当replica shard接收到请求时执行如下流程:

  1. 判断操作类型
    replica收到的写如请求只会有add和delete,因update在primary shard上已经转换为add或delete了。根据不同的操作类型执行对应的操作
  2. Parse Doc
  3. 更新mapping
  4. 获取sequenceId和Version 直接使用primary shard发送过来的请求中的内容即可
  5. 写如lucene
  6. write Translog
  7. Flush translog

4 总结与分析

Elasticsearch建立在Lucene基础之上,底层采用lucene来实现文件的读写操作,实现了文档的存储和高效查询。然后lucene作为一个搜索库在应对海量数据的存储上仍有一些不足之处。
Elasticsearch通过引入分片概念,成功地将lucene部署到分布式系统中,增强了系统的可靠性和扩展性。
Elasticsearch通过定期refresh lucene in-momory-buffer中的数据,使得ES具有了近实时的写入和查询能力。
Elasticsearch通过引入translog,多副本,以及定期执行flush,merge等操作保证了数据可靠性和较高的存储性能。
Elasticsearch通过存储_source字段结合verison字段实现了文档的局部更新,使得ES的使用方式更加灵活多样。
Elasticsearch基于lucene,又不简单地只是lucene,它完美地将lucene与分布式系统结合,既利用了lucene的检索能力,又具有了分布式系统的众多优点。

本文参考

欢迎关注公众号Elastic慕容,和我一起进入Elastic的奇妙世界吧

继续阅读 »

Elasticsearch 是当前主流的搜索引擎,其具有扩展性好,查询速度快,查询结果近实时等优点,本文将对Elasticsearch的写操作进行分析。

1. lucene的写操作及其问题

Elasticsearch底层使用Lucene来实现doc的读写操作,Lucene通过

public long addDocument(...);
public long deleteDocuments(...);
public long updateDocument(...);

三个方法来实现文档的写入,更新和删除操作。但是存在如下问题

  1. 没有并发设计
    lucene只是一个搜索引擎库,并没有涉及到分布式相关的设计,因此要想使用Lucene来处理海量数据,并利用分布式的能力,就必须在其之上进行分布式的相关设计。
  2. 非实时
    将文件写入lucence后并不能立即被检索,需要等待lucene生成一个完整的segment才能被检索
  3. 数据存储不可靠
    写入lucene的数据不会立即被持久化到磁盘,如果服务器宕机,那存储在内存中的数据将会丢失
  4. 不支持部分更新
    lucene中提供的updateDocuments仅支持对文档的全量更新,对部分更新不支持

2. Elasticsearch的写入方案

针对Lucene的问题,ES做了如下设计

2.1 分布式设计:

为了支持对海量数据的存储和查询,Elasticsearch引入分片的概念,一个索引被分成多个分片,每个分片可以有一个主分片和多个副本分片,每个分片副本都是一个具有完整功能的lucene实例。分片可以分配在不同的服务器上,同一个分片的不同副本不能分配在相同的服务器上。
在进行写操作时,ES会根据传入的_routing参数(或mapping中设置的_routing, 如果参数和设置中都没有则默认使用_id), 按照公式shard_num = hash(\routing) % num_primary_shards,计算出文档要分配到的分片,在从集群元数据中找出对应主分片的位置,将请求路由到该分片进行文档写操作。

2.2 近实时性-refresh操作

当一个文档写入Lucene后是不能被立即查询到的,Elasticsearch提供了一个refresh操作,会定时地调用lucene的reopen(新版本为openIfChanged)为内存中新写入的数据生成一个新的segment,此时被处理的文档均可以被检索到。refresh操作的时间间隔由refresh_interval参数控制,默认为1s, 当然还可以在写入请求中带上refresh表示写入后立即refresh,另外还可以调用refresh API显式refresh。

2.3 数据存储可靠性

  1. 引入translog
    当一个文档写入Lucence后是存储在内存中的,即使执行了refresh操作仍然是在文件系统缓存中,如果此时服务器宕机,那么这部分数据将会丢失。为此ES增加了translog, 当进行文档写操作时会先将文档写入Lucene,然后写入一份到translog,写入translog是落盘的(如果对可靠性要求不是很高,也可以设置异步落盘,可以提高性能,由配置index.translog.durabilityindex.translog.sync_interval控制),这样就可以防止服务器宕机后数据的丢失。由于translog是追加写入,因此性能比较好。与传统的分布式系统不同,这里是先写入Lucene再写入translog,原因是写入Lucene可能会失败,为了减少写入失败回滚的复杂度,因此先写入Lucene.
  2. flush操作
    另外每30分钟或当translog达到一定大小(由index.translog.flush_threshold_size控制,默认512mb), ES会触发一次flush操作,此时ES会先执行refresh操作将buffer中的数据生成segment,然后调用lucene的commit方法将所有内存中的segment fsync到磁盘。此时lucene中的数据就完成了持久化,会清空translog中的数据(6.x版本为了实现sequenceIDs,不删除translog)
  3. merge操作
    由于refresh默认间隔为1s中,因此会产生大量的小segment,为此ES会运行一个任务检测当前磁盘中的segment,对符合条件的segment进行合并操作,减少lucene中的segment个数,提高查询速度,降低负载。不仅如此,merge过程也是文档删除和更新操作后,旧的doc真正被删除的时候。用户还可以手动调用_forcemerge API来主动触发merge,以减少集群的segment个数和清理已删除或更新的文档。
  4. 多副本机制
    另外ES有多副本机制,一个分片的主副分片不能分片在同一个节点上,进一步保证数据的可靠性。

    2.4 部分更新

    lucene支持对文档的整体更新,ES为了支持局部更新,在Lucene的Store索引中存储了一个_source字段,该字段的key值是文档ID, 内容是文档的原文。当进行更新操作时先从_source中获取原文,与更新部分合并后,再调用lucene API进行全量更新, 对于写入了ES但是还没有refresh的文档,可以从translog中获取。另外为了防止读取文档过程后执行更新前有其他线程修改了文档,ES增加了版本机制,当执行更新操作时发现当前文档的版本与预期不符,则会重新获取文档再更新。

3. ES的写入流程

ES的任意节点都可以作为协调节点(coordinating node)接受请求,当协调节点接受到请求后进行一系列处理,然后通过_routing字段找到对应的primary shard,并将请求转发给primary shard, primary shard完成写入后,将写入并发发送给各replica, raplica执行写入操作后返回给primary shard, primary shard再将请求返回给协调节点。大致流程如下图:

3.1 coordinating节点

ES中接收并转发请求的节点称为coordinating节点,ES中所有节点都可以接受并转发请求。当一个节点接受到写请求或更新请求后,会执行如下操作:

  1. ingest pipeline
    查看该请求是否符合某个ingest pipeline的pattern, 如果符合则执行pipeline中的逻辑,一般是对文档进行各种预处理,如格式调整,增加字段等。如果当前节点没有ingest角色,则需要将请求转发给有ingest角色的节点执行。
  2. 自动创建索引
    判断索引是否存在,如果开启了自动创建则自动创建,否则报错
  3. 设置routing
    获取请求URL或mapping中的_routing,如果没有则使用_id, 如果没有指定_id则ES会自动生成一个全局唯一ID。该_routing字段用于决定文档分配在索引的哪个shard上。
  4. 构建BulkShardRequest
    由于Bulk Request中包含多种(Index/Update/Delete)请求,这些请求分别需要到不同的shard上执行,因此协调节点,会将请求按照shard分开,同一个shard上的请求聚合到一起,构建BulkShardRequest
  5. 将请求发送给primary shard
    因为当前执行的是写操作,因此只能在primary上完成,所以需要把请求路由到primary shard所在节点
  6. 等待primary shard返回

3.2 primary shard

Primary请求的入口是PrimaryOperationTransportHandler的MessageReceived, 当接收到请求时,执行的逻辑如下

  1. 判断操作类型
    遍历bulk请求中的各子请求,根据不同的操作类型跳转到不同的处理逻辑
  2. 将update操作转换为Index和Delete操作
    获取文档的当前内容,与update内容合并生成新文档,然后将update请求转换成index请求,此处文档设置一个version v1
  3. Parse Doc
    解析文档的各字段,并添加如_uid等ES相关的一些系统字段
  4. 更新mapping
    对于新增字段会根据dynamic mapping或dynamic template生成对应的mapping,如果mapping中有dynamic mapping相关设置则按设置处理,如忽略或抛出异常
  5. 获取sequence Id和Version
    从SequcenceNumberService获取一个sequenceID和Version。SequcenID用于初始化LocalCheckPoint, verion是根据当前Versoin+1用于防止并发写导致数据不一致。
  6. 写入lucene
    这一步开始会对文档uid加锁,然后判断uid对应的version v2和之前update转换时的versoin v1是否一致,不一致则返回第二步重新执行。 如果version一致,如果同id的doc已经存在,则调用lucene的updateDocument接口,如果是新文档则调用lucene的addDoucument. 这里有个问题,如何保证Delete-Then-Add的原子性,ES是通过在Delete之前会加上已refresh锁,禁止被refresh,只有等待Add完成后释放了Refresh Lock, 这样就保证了这个操作的原子性。
  7. 写入translog
    写入Lucene的Segment后,会以key value的形式写Translog, Key是Id, Value是Doc的内容。当查询的时候,如果请求的是GetDocById则可以直接根据_id从translog中获取。满足nosql场景的实时性。
  8. 重构bulk request
    因为primary shard已经将update操作转换为index操作或delete操作,因此要对之前的bulkrequest进行调整,只包含index或delete操作,不需要再进行update的处理操作。
  9. flush translog
    默认情况下,translog要在此处落盘完成,如果对可靠性要求不高,可以设置translog异步,那么translog的fsync将会异步执行,但是落盘前的数据有丢失风险。
  10. 发送请求给replicas
    将构造好的bulkrequest并发发送给各replicas,等待replica返回,这里需要等待所有的replicas返回,响应请求给协调节点。如果某个shard执行失败,则primary会给master发请求remove该shard。这里会同时把sequenceID, primaryTerm, GlobalCheckPoint等传递给replica。
  11. 等待replica响应
    当所有的replica返回请求时,更细primary shard的LocalCheckPoint。

3.3 replica shard

Replica 请求的入口是在ReplicaOperationTransportHandler的messageReceived,当replica shard接收到请求时执行如下流程:

  1. 判断操作类型
    replica收到的写如请求只会有add和delete,因update在primary shard上已经转换为add或delete了。根据不同的操作类型执行对应的操作
  2. Parse Doc
  3. 更新mapping
  4. 获取sequenceId和Version 直接使用primary shard发送过来的请求中的内容即可
  5. 写如lucene
  6. write Translog
  7. Flush translog

4 总结与分析

Elasticsearch建立在Lucene基础之上,底层采用lucene来实现文件的读写操作,实现了文档的存储和高效查询。然后lucene作为一个搜索库在应对海量数据的存储上仍有一些不足之处。
Elasticsearch通过引入分片概念,成功地将lucene部署到分布式系统中,增强了系统的可靠性和扩展性。
Elasticsearch通过定期refresh lucene in-momory-buffer中的数据,使得ES具有了近实时的写入和查询能力。
Elasticsearch通过引入translog,多副本,以及定期执行flush,merge等操作保证了数据可靠性和较高的存储性能。
Elasticsearch通过存储_source字段结合verison字段实现了文档的局部更新,使得ES的使用方式更加灵活多样。
Elasticsearch基于lucene,又不简单地只是lucene,它完美地将lucene与分布式系统结合,既利用了lucene的检索能力,又具有了分布式系统的众多优点。

本文参考

欢迎关注公众号Elastic慕容,和我一起进入Elastic的奇妙世界吧

收起阅读 »

社区日报 第770期 (2019-11-02)

1.ES使用delete_by_query删除大量数据可能遇到的问题

http://t.cn/AiB2I2bp

2.ES索引数据快照备份和恢复

http://t.cn/AiB2I2bl

3.ES亿级数据检索案例与原理

http://t.cn/AiB2I2b0

继续阅读 »

1.ES使用delete_by_query删除大量数据可能遇到的问题

http://t.cn/AiB2I2bp

2.ES索引数据快照备份和恢复

http://t.cn/AiB2I2bl

3.ES亿级数据检索案例与原理

http://t.cn/AiB2I2b0

收起阅读 »

社区日报 第769期 (2019-11-01)


1、将Elasticsearch碎片减少90%以提高性能(梯子)
http://t.cn/Ai1s3LKe
2、为 Laravel Scout 开发的 Elasticsearch 驱动
http://t.cn/Ai1s3taf
3、每秒在Elasticsearch中存储5000万个事件:我们是如何做到的?
http://t.cn/Ai1s3aVT

编辑:铭毅天下
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
继续阅读 »

1、将Elasticsearch碎片减少90%以提高性能(梯子)
http://t.cn/Ai1s3LKe
2、为 Laravel Scout 开发的 Elasticsearch 驱动
http://t.cn/Ai1s3taf
3、每秒在Elasticsearch中存储5000万个事件:我们是如何做到的?
http://t.cn/Ai1s3aVT

编辑:铭毅天下
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
收起阅读 »

Elastic认证工程师考试经验分享

笔者于2019年10月参加并通过了Elastic Certified Engineer Exam, 在准备考试的三四个月的时间内,对考试的要求,考试的准备,考试的流程等有一些了解,因此总结这篇文章,希望对后续参加考试的朋友有一定的帮助。

1. 考试简介

Elastic Certified Engineer Exam是Elastic官方推出的Elasticsearch使用能力认证考试,通过该考试表明考生具备了通过执行一些列操作构建完整Elasticsearch解决方案的能力,这些操作包括包括集群安装,配置,管理,数据索引,查询,分析等。 详细介绍可以参考[Elastic Certified Engineer]

2. 考察点

认证考试介绍页面中有对考察点有明确的说明,可以参考[Exam Objectives], 考察点主要是Elasticsearch的使用(不考察Elastic stack其他组件如kibana, beat, logstash等的使用),不考察Elasticsearch的实现原理,考察点主要包括:

  • 集群的安装和配置:基本安装,配置,安全配置,角色和用户管理等
  • 索引数据:索引和文档的各种操作
  • 查询:各种查询场景
  • 聚合:各种聚合查询,如指标聚合,分桶聚合,嵌套聚合,pipeline聚合等
  • Mapping和Analzysis: 索引mapping和分词相关操作
  • 集群管理: shard分配,集群健康诊断,备份与恢复,冷热分离,跨集群检索等。

上述只是简单列举,详情以Exam Objectives为准

3. 考试准备

建议参加[Official Elastic Training], 该培训对Elasticsearch的使用会有详细的讲解,并有配套的lab,学习完课程,并认真完成各lab基本就具备了通过考试的能力。
另外要对Elasticsearch官方文档的结构有较为清晰的了解,能快速的查找到相关文档,当然如果能熟练使用kibana文档跳转和文档的搜索功能也可以。
另外还有一些考试通过者的一些经验:

4. 考试报名

  1. 考试购买
    • 注册Elastic Training网站
    • 可以在认证考试页面进行考试报名 按照指示步骤进行操作购买支付即可,考试费用是$400美元,可以使用visa或master信用卡支付
    • 支付完成在注册邮箱和Training网站账号页面的inbox中均会收到两封邮件,一封是订单信息,另一封是考试网站指引 购买成功后考试有一年的有效期,可以在购买后的一年时间内的任意时间预约考试
  2. 考试预约
    • 按照邮件指引注册examlocal 这是一个第三方考试网站,注意注册时使用和注册training网站相同的邮箱
    • 在schedule an Exam页面搜索Elastic Certificate Exam
    • 选择合适的考试时间,注意时区的选择
    • 最后校验会有一个checklist,检测你当前机器是否符合要求 这里要注意
    • 要按照指引为浏览器安装插件
    • 准备VPN,以保证考试时网络没有问题
    • 考试时后台不能有任何进程,如果机器上有默认无法禁用的程序要注意
    • 电脑要带摄像头和麦克风

5. 考试环境和流程

  1. 考试环境
    考试环境是一个通过浏览器连接的远程centos系统,通过terminal连接考试的各集群服务器,通过系统内浏览器来查看官方文档和作答考卷。关于环境的讲解可以查看官方讲解视频,考试环境和讲解中完全一致
  2. 考试流程
    考试开始前15分钟,考生通过考试网站指引进入考试系统,此时考官便可以通过摄像头和麦克风看到听到你,但是你是看不到听不到考官的,考官会通过一个聊天窗口与你打字沟通。
    考官会要求你先出示你的证件,注意这里一定要使用护照等带有拼音的证件,毕竟外国人不认识中文,如果没有此类证件,想要使用身份证,需要提前写邮件给Elasitc申请。
    接着考官会要求你抱着电脑环视周围,查看桌面上是否有任何物品,如果有物品如护照等,会被要求拿走放到其他地方。
    接着考官会要求你打开你电脑的任务管理器,查看是否有除去浏览器的其他进程。
    上述检查均通过后,便可以开始考试,考试时间是3个小时,考题也都是常规的一些集群使用相关的知识点,没有偏题怪题。考前看其他人的经验大概90分钟完成,我也基本在这个时间点完成。
    考试过程中可以向考官申请中途休息和喝水,考官会暂停考试。建议做完第一遍后进行检查,可能会发现一些细节问题,如单节点集群考试创建的索引默认一副本会导致集群yellow等。

6. 考题回顾

正式进入考题前会有一个考题作答讲解和集群情况描述,我的环境是三个集群,第一个是三节点,另外两个都是一节点,每个集群都带有一个kibana。 我的考题共10道,我这里只对考题考点做简单描述:

  1. 冷热分离架构配置
  2. update_by_query + script按照要求更新索引
  3. 自定义分词插件,让king's和kings有相同的评分
  4. nested类型和nested query
  5. dynamic mapping
  6. multi-match, boost, most_fields
  7. date-histogram, sub-aggregation
  8. 开启security
  9. 集群备份snapshot
  10. match_phrase, hightlighting, sort

7. 考试结果

考试成绩会在三个工作日内公布,但实际一般一个工作日就会出结果。如果通过考试会收到一封考试通过的邮件,如下
按照邮件指引便可以得到一个电子证书,如下图

最后分享一下从大洋彼岸寄过来的纪念币

最后祝大家考试顺利(●'◡'●)

欢迎关注公众号Elastic慕容,和我一起进入Elastic的奇妙世界吧

继续阅读 »

笔者于2019年10月参加并通过了Elastic Certified Engineer Exam, 在准备考试的三四个月的时间内,对考试的要求,考试的准备,考试的流程等有一些了解,因此总结这篇文章,希望对后续参加考试的朋友有一定的帮助。

1. 考试简介

Elastic Certified Engineer Exam是Elastic官方推出的Elasticsearch使用能力认证考试,通过该考试表明考生具备了通过执行一些列操作构建完整Elasticsearch解决方案的能力,这些操作包括包括集群安装,配置,管理,数据索引,查询,分析等。 详细介绍可以参考[Elastic Certified Engineer]

2. 考察点

认证考试介绍页面中有对考察点有明确的说明,可以参考[Exam Objectives], 考察点主要是Elasticsearch的使用(不考察Elastic stack其他组件如kibana, beat, logstash等的使用),不考察Elasticsearch的实现原理,考察点主要包括:

  • 集群的安装和配置:基本安装,配置,安全配置,角色和用户管理等
  • 索引数据:索引和文档的各种操作
  • 查询:各种查询场景
  • 聚合:各种聚合查询,如指标聚合,分桶聚合,嵌套聚合,pipeline聚合等
  • Mapping和Analzysis: 索引mapping和分词相关操作
  • 集群管理: shard分配,集群健康诊断,备份与恢复,冷热分离,跨集群检索等。

上述只是简单列举,详情以Exam Objectives为准

3. 考试准备

建议参加[Official Elastic Training], 该培训对Elasticsearch的使用会有详细的讲解,并有配套的lab,学习完课程,并认真完成各lab基本就具备了通过考试的能力。
另外要对Elasticsearch官方文档的结构有较为清晰的了解,能快速的查找到相关文档,当然如果能熟练使用kibana文档跳转和文档的搜索功能也可以。
另外还有一些考试通过者的一些经验:

4. 考试报名

  1. 考试购买
    • 注册Elastic Training网站
    • 可以在认证考试页面进行考试报名 按照指示步骤进行操作购买支付即可,考试费用是$400美元,可以使用visa或master信用卡支付
    • 支付完成在注册邮箱和Training网站账号页面的inbox中均会收到两封邮件,一封是订单信息,另一封是考试网站指引 购买成功后考试有一年的有效期,可以在购买后的一年时间内的任意时间预约考试
  2. 考试预约
    • 按照邮件指引注册examlocal 这是一个第三方考试网站,注意注册时使用和注册training网站相同的邮箱
    • 在schedule an Exam页面搜索Elastic Certificate Exam
    • 选择合适的考试时间,注意时区的选择
    • 最后校验会有一个checklist,检测你当前机器是否符合要求 这里要注意
    • 要按照指引为浏览器安装插件
    • 准备VPN,以保证考试时网络没有问题
    • 考试时后台不能有任何进程,如果机器上有默认无法禁用的程序要注意
    • 电脑要带摄像头和麦克风

5. 考试环境和流程

  1. 考试环境
    考试环境是一个通过浏览器连接的远程centos系统,通过terminal连接考试的各集群服务器,通过系统内浏览器来查看官方文档和作答考卷。关于环境的讲解可以查看官方讲解视频,考试环境和讲解中完全一致
  2. 考试流程
    考试开始前15分钟,考生通过考试网站指引进入考试系统,此时考官便可以通过摄像头和麦克风看到听到你,但是你是看不到听不到考官的,考官会通过一个聊天窗口与你打字沟通。
    考官会要求你先出示你的证件,注意这里一定要使用护照等带有拼音的证件,毕竟外国人不认识中文,如果没有此类证件,想要使用身份证,需要提前写邮件给Elasitc申请。
    接着考官会要求你抱着电脑环视周围,查看桌面上是否有任何物品,如果有物品如护照等,会被要求拿走放到其他地方。
    接着考官会要求你打开你电脑的任务管理器,查看是否有除去浏览器的其他进程。
    上述检查均通过后,便可以开始考试,考试时间是3个小时,考题也都是常规的一些集群使用相关的知识点,没有偏题怪题。考前看其他人的经验大概90分钟完成,我也基本在这个时间点完成。
    考试过程中可以向考官申请中途休息和喝水,考官会暂停考试。建议做完第一遍后进行检查,可能会发现一些细节问题,如单节点集群考试创建的索引默认一副本会导致集群yellow等。

6. 考题回顾

正式进入考题前会有一个考题作答讲解和集群情况描述,我的环境是三个集群,第一个是三节点,另外两个都是一节点,每个集群都带有一个kibana。 我的考题共10道,我这里只对考题考点做简单描述:

  1. 冷热分离架构配置
  2. update_by_query + script按照要求更新索引
  3. 自定义分词插件,让king's和kings有相同的评分
  4. nested类型和nested query
  5. dynamic mapping
  6. multi-match, boost, most_fields
  7. date-histogram, sub-aggregation
  8. 开启security
  9. 集群备份snapshot
  10. match_phrase, hightlighting, sort

7. 考试结果

考试成绩会在三个工作日内公布,但实际一般一个工作日就会出结果。如果通过考试会收到一封考试通过的邮件,如下
按照邮件指引便可以得到一个电子证书,如下图

最后分享一下从大洋彼岸寄过来的纪念币

最后祝大家考试顺利(●'◡'●)

欢迎关注公众号Elastic慕容,和我一起进入Elastic的奇妙世界吧

收起阅读 »

社区日报 第768期 (2019-10-31)

1.Elasticsearch(GEO)空间检索查询
http://t.cn/Ai1d32VX
2.剖析Elasticsearch的IndexSorting
http://t.cn/EAlDnwc
3..elasticsearch-comrade:操作和监控Elasticsearch的管理面板
http://t.cn/Ai1d3Gsb

编辑:金桥
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
继续阅读 »
1.Elasticsearch(GEO)空间检索查询
http://t.cn/Ai1d32VX
2.剖析Elasticsearch的IndexSorting
http://t.cn/EAlDnwc
3..elasticsearch-comrade:操作和监控Elasticsearch的管理面板
http://t.cn/Ai1d3Gsb

编辑:金桥
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup 收起阅读 »

社区日报 第767期 (2019-10-30)

1、ECE 2.4.0 发布,快来看看新增的功能吧!
http://t.cn/Ai1u2l5g
2、(自备梯子)来听 Elastic 的安全专家聊聊云上大数据安全该如何实现
http://t.cn/Ai1u2l51
3、ES Painless Script 入门
http://t.cn/RNXjWeG

编辑:rockybean
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
继续阅读 »
1、ECE 2.4.0 发布,快来看看新增的功能吧!
http://t.cn/Ai1u2l5g
2、(自备梯子)来听 Elastic 的安全专家聊聊云上大数据安全该如何实现
http://t.cn/Ai1u2l51
3、ES Painless Script 入门
http://t.cn/RNXjWeG

编辑:rockybean
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup 收起阅读 »

社区日报 第766期 (2019-10-29)

1、2019年Elasticsearch资源Top10汇总。
http://t.cn/Ai1jrtzS
2、使用 Open Distro for Elasticsearch 针对安全事件发出警报
http://t.cn/Ai1jr7M3
3、(自带梯子)Elasticsearch影响排名及其优化策略。
http://t.cn/Ai1jryAu

编辑:叮咚光军
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
继续阅读 »
1、2019年Elasticsearch资源Top10汇总。
http://t.cn/Ai1jrtzS
2、使用 Open Distro for Elasticsearch 针对安全事件发出警报
http://t.cn/Ai1jr7M3
3、(自带梯子)Elasticsearch影响排名及其优化策略。
http://t.cn/Ai1jryAu

编辑:叮咚光军
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup 收起阅读 »

​社区日报 第766期 (2019-10-29)

1、2019年Elasticsearch资源Top10汇总。
http://t.cn/Ai1jrtzS
2、使用 Open Distro for Elasticsearch 针对安全事件发出警报
http://t.cn/Ai1jr7M3
3、(自带梯子)Elasticsearch影响排名及其优化策略。
http://t.cn/Ai1jryAu

编辑:叮咚光军
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
继续阅读 »
1、2019年Elasticsearch资源Top10汇总。
http://t.cn/Ai1jrtzS
2、使用 Open Distro for Elasticsearch 针对安全事件发出警报
http://t.cn/Ai1jr7M3
3、(自带梯子)Elasticsearch影响排名及其优化策略。
http://t.cn/Ai1jryAu

编辑:叮咚光军
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
收起阅读 »

【阿里云技术直播】全面了解ELK云上生态与日志分析场景实践 | 直播预约中

 #敲黑板、敲黑板#【知识点】 

本次直播活动,将由阿里巴巴六位产品负责人共计六天,分六场,为大家全面讲解ELK云上生态及日志分析场景下的最佳实践,以及开放搜索/智能推荐背后的技术能力与最佳实践;
 
#干货满满,千万别错过#(点击预约报名
 
一、直播议程及时间安排
 
议程.png


 
二、预约方式
 
STEP / 1:“访问”页面
https://yq.aliyun.com/users/us ... vNRfN
 
STEP / 2:“选择”您关注的Topic

1.png

 
STEP / 3:“点击”立即报名(需登录云栖社区)

2.png

 

3.png

 

2019年阿里云云栖大会上,Elasticsearch背后的商业公司Elastic与阿里云Elasticsearch确定战略合作升级,在100%兼容开源的基础上,完成了ELK的完整生态云上闭环,欢迎开通使用。
点击了解更多产品信息
继续阅读 »
 #敲黑板、敲黑板#【知识点】 

本次直播活动,将由阿里巴巴六位产品负责人共计六天,分六场,为大家全面讲解ELK云上生态及日志分析场景下的最佳实践,以及开放搜索/智能推荐背后的技术能力与最佳实践;
 
#干货满满,千万别错过#(点击预约报名
 
一、直播议程及时间安排
 
议程.png


 
二、预约方式
 
STEP / 1:“访问”页面
https://yq.aliyun.com/users/us ... vNRfN
 
STEP / 2:“选择”您关注的Topic

1.png

 
STEP / 3:“点击”立即报名(需登录云栖社区)

2.png

 

3.png

 

2019年阿里云云栖大会上,Elasticsearch背后的商业公司Elastic与阿里云Elasticsearch确定战略合作升级,在100%兼容开源的基础上,完成了ELK的完整生态云上闭环,欢迎开通使用。
点击了解更多产品信息 收起阅读 »

​社区日报 第765期 (2019-10-28)

1、elasticseach和mongodb以及redis的对比,五分钟帮你做好数据库选型
http://t.cn/Ai1Xdbrm
2、ElasticSeach 7.x新特性体验-安装部署
http://t.cn/Ai1Kz8qJ
3、存储异构,Elasticsearch如何充分利用存储空间
http://t.cn/Ai1KwjK5


编辑:cyberdak
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup 
继续阅读 »
1、elasticseach和mongodb以及redis的对比,五分钟帮你做好数据库选型
http://t.cn/Ai1Xdbrm
2、ElasticSeach 7.x新特性体验-安装部署
http://t.cn/Ai1Kz8qJ
3、存储异构,Elasticsearch如何充分利用存储空间
http://t.cn/Ai1KwjK5


编辑:cyberdak
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup  收起阅读 »

社区日报 第764期 (2019-10-27)

1.如何阻止内存密集型查询使ElasticSearch崩溃。
http://t.cn/Ai1tSw9E
2.什么是Elasticsearch。
http://t.cn/RTGlpLe
3.(自备梯子)通往未来的区块链。
http://t.cn/Ai15Bbhn

编辑:至尊宝
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
继续阅读 »
1.如何阻止内存密集型查询使ElasticSearch崩溃。
http://t.cn/Ai1tSw9E
2.什么是Elasticsearch。
http://t.cn/RTGlpLe
3.(自备梯子)通往未来的区块链。
http://t.cn/Ai15Bbhn

编辑:至尊宝
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup 收起阅读 »

社区日报 第763期 (2019-10-26)

1.注意控制ngram分词器的参数大小(需翻墙) http://t.cn/Ai1V7SUa

2.如何利用es进行大而快的NLP实验(需翻墙) http://t.cn/Ai1V7SUo

3.Elasticsearch 7.x 之节点、集群、分片及副本 http://t.cn/Ai1V7SUK

继续阅读 »

1.注意控制ngram分词器的参数大小(需翻墙) http://t.cn/Ai1V7SUa

2.如何利用es进行大而快的NLP实验(需翻墙) http://t.cn/Ai1V7SUo

3.Elasticsearch 7.x 之节点、集群、分片及副本 http://t.cn/Ai1V7SUK

收起阅读 »

普翔科技诚招 Elastic 技术顾问

招聘主页
http://www.elastictech.cn/jobs

公司介绍
普翔科技是一家专注于开源软件的数据服务商,以成为最专业的开源数据服务商为目标,是 Elastic 在中国的战略级合作伙伴,拥有国内最早的一批 Elastic Certified Engineer,同时也是国内拥有最多认证工程师的团队。
 
我们已专注于 Elastic 产品服务两年多的时间,现有客户包含全球大型连锁餐饮品牌、大型国有银行、证券行业龙头企业、超大型金融集团等等。普翔科技在 
 
Elastic 产品方面提供咨询运维、数据分析、培训指导等服务,全方位地帮助客户用好 Elastic 的产品,创造实际的业务价值。
 
下图我们作为 elastic 战略级合作伙伴的证书
partner_cert.jpg


下图是我们与 Elastic 管理层的合影,当然也包括 Elastic 创始人 Shay Banon 
first-certified-china-blog-6.jpg

 
也可以去 elastic 官网查看其对于我们技术负责人的专访报道。
https://www.elastic.co/cn/blog ... ineer
blog.jpg



工作地点
深圳 上海 北京

招聘职位
Elastic 中高级技术顾问

薪资待遇
14k~30K,上不封顶,以能力评定

工作内容
  1. 根据客户需求完成合理的 ELK 集群架构设计方案,并能快速完成 ELK 集群的搭建工作。
  2. 与客户沟通其数据收集与分析的需求,并合理设计解决方案,可以基于 Elastic 产品如 Filebeat Logstash Elasticsearch Kibana 等快速高效地完成方案的实施落地工作。
  3. 向客户介绍 Elastic 开源与商业产品,并根据客户需求提供对应的商业解决方案,帮助客户快速掌握 Elastic 商业产品的使用方法,如安全认证、监控告警、机器学习等功能。
  4. 参与公司自有产品研发,有 docker、k8s 使用经验的加分。
  5. 参与 Elastic 在国内的社区推广工作,如编写博文、参与直播、workshop 等活动。

  
职位要求
  1. 本科以上学历,计算机专业有加分,2年以上工作经验,1年以上运维经验,开发经验有加分。
  2. 熟悉 Elastic 产品(如 Elasticsearch Kibana Logstash Beats )的组成和使用,了解其底层的运行机制,掌握常见的排障技巧与优化方案。
  3. 需要良好的学习和研究能力,面对一个新产品或者特性时,可以在较快的时间内掌握。
  4. 有良好的沟通和表达能力,擅长倾听客户的问题并快速定位解决问题的关键点。
  5. 经常参加elastic 线下活动有加分,经常在中文社区讨论问题有加分。

 
特别说明
  1. 如果你还没有使用过 Elastic 产品,但有 2 年以上运维经验,熟悉常见系统日志、软件日志的查询与分析策略,对 ETL 有一定了解,或者你有其他大数据产品如 hadoop、kafka 等的使用经验,同时对 Elastic 产品抱有极大的学习热情,也欢迎投简历来沟通,我们有完善的培训机制,可以帮助你快速掌握相关知识。
  2. 如果你通过了 Elastic Certified Engineer 认证考试并成功入职我司,我们会报销你的考试费用!!!

 
如果你对 Elastic Stack、Kafka、Nginx、Grafana 等开源技术感兴趣,欢迎加入我们,这里有实战、有直播、有源码分析活动、有培训,还有与各大原厂技术面对面深度交流的机会,给你带来全方位的提升!

欢迎投递简历至:weibinway@puxiangtech.com

也可以添加微信沟通:rockybean
继续阅读 »
招聘主页
http://www.elastictech.cn/jobs

公司介绍
普翔科技是一家专注于开源软件的数据服务商,以成为最专业的开源数据服务商为目标,是 Elastic 在中国的战略级合作伙伴,拥有国内最早的一批 Elastic Certified Engineer,同时也是国内拥有最多认证工程师的团队。
 
我们已专注于 Elastic 产品服务两年多的时间,现有客户包含全球大型连锁餐饮品牌、大型国有银行、证券行业龙头企业、超大型金融集团等等。普翔科技在 
 
Elastic 产品方面提供咨询运维、数据分析、培训指导等服务,全方位地帮助客户用好 Elastic 的产品,创造实际的业务价值。
 
下图我们作为 elastic 战略级合作伙伴的证书
partner_cert.jpg


下图是我们与 Elastic 管理层的合影,当然也包括 Elastic 创始人 Shay Banon 
first-certified-china-blog-6.jpg

 
也可以去 elastic 官网查看其对于我们技术负责人的专访报道。
https://www.elastic.co/cn/blog ... ineer
blog.jpg



工作地点
深圳 上海 北京

招聘职位
Elastic 中高级技术顾问

薪资待遇
14k~30K,上不封顶,以能力评定

工作内容
  1. 根据客户需求完成合理的 ELK 集群架构设计方案,并能快速完成 ELK 集群的搭建工作。
  2. 与客户沟通其数据收集与分析的需求,并合理设计解决方案,可以基于 Elastic 产品如 Filebeat Logstash Elasticsearch Kibana 等快速高效地完成方案的实施落地工作。
  3. 向客户介绍 Elastic 开源与商业产品,并根据客户需求提供对应的商业解决方案,帮助客户快速掌握 Elastic 商业产品的使用方法,如安全认证、监控告警、机器学习等功能。
  4. 参与公司自有产品研发,有 docker、k8s 使用经验的加分。
  5. 参与 Elastic 在国内的社区推广工作,如编写博文、参与直播、workshop 等活动。

  
职位要求
  1. 本科以上学历,计算机专业有加分,2年以上工作经验,1年以上运维经验,开发经验有加分。
  2. 熟悉 Elastic 产品(如 Elasticsearch Kibana Logstash Beats )的组成和使用,了解其底层的运行机制,掌握常见的排障技巧与优化方案。
  3. 需要良好的学习和研究能力,面对一个新产品或者特性时,可以在较快的时间内掌握。
  4. 有良好的沟通和表达能力,擅长倾听客户的问题并快速定位解决问题的关键点。
  5. 经常参加elastic 线下活动有加分,经常在中文社区讨论问题有加分。

 
特别说明
  1. 如果你还没有使用过 Elastic 产品,但有 2 年以上运维经验,熟悉常见系统日志、软件日志的查询与分析策略,对 ETL 有一定了解,或者你有其他大数据产品如 hadoop、kafka 等的使用经验,同时对 Elastic 产品抱有极大的学习热情,也欢迎投简历来沟通,我们有完善的培训机制,可以帮助你快速掌握相关知识。
  2. 如果你通过了 Elastic Certified Engineer 认证考试并成功入职我司,我们会报销你的考试费用!!!

 
如果你对 Elastic Stack、Kafka、Nginx、Grafana 等开源技术感兴趣,欢迎加入我们,这里有实战、有直播、有源码分析活动、有培训,还有与各大原厂技术面对面深度交流的机会,给你带来全方位的提升!

欢迎投递简历至:weibinway@puxiangtech.com

也可以添加微信沟通:rockybean
收起阅读 »