我的 2024 年 Elasticsearch 认证考试经验与真题回顾

大家好,我是凌虚。

我于 2024 年 3 月 14 日参加了 Elastic Certified Engineer(ECE)认证考试,并与 18 日收到了考试通过的邮件。本文将会回顾我的考试过程、考试真题、个人感受。

  • 目前考试使用的是 Elasticsearch v8.1 版本。
  • 考试费用 500 美元(涨价过了),需要用支持美元支付的信用卡购买,可以用别人的卡代付。
  • 只有一次考试机会,没有补考,没有官方模拟考和模拟题。
  • 考试内容是 10 个题目,都是实操题,可以使用 Kibana。

考试内容完完全全就是按照考试大纲里的考点来的,但是每个题目都会涉及到多个考点。

以下是我这次考试的题目。

按要求创建一个 ilm policy ,数据索引后 5 分钟内在 hot 节点,之后翻滚至 warm 节点,3分钟后转换到 cold 节点,翻滚之后 6 分钟删除。

然后创建一个 data stream 的 index template :

  • 按要求设置 index_patterns
  • 关联上面的 ilm policy (我第一遍复制粘贴官方文档的代码然后忘了改 settings 里的 index.lifecycle.name )
  • 由于题目要求数据要先到 hot 节点上,所以按照我的理解 settings 中还应该加 “index.routing.allocation.include._tier_preference”: “data_hot”

最后复制粘贴题目给的请求写入一个文档,从而把这个 data stream 创建出来。

给了某个 index 和搜索请求,用 the 去搜索 title 字段的时候会匹配很多文档,要求 reindex 为另外的 index(一般名称都是要求你使用 task2 这种跟题目编号一致的命名方式),然后在新的索引上用 the 搜索不到任务文档。需要注意的是他明确要求你保留原索引的数据结构和类型(也就是要先查原索引的 mappings 并复制粘贴过来),然后在 mappings 中的 title 字段中定义 analyzer 去处理这个 the(这道题 tokenizer 用 standard ,character filter 用 stop 就可以了)。

要求给某个索引增加一个新的字段,新字段是已有四个字段的值拼接而成,注意拼接的时候字段之间加空格(题目给的正确文档示例是有加空格的)。

看到 update 这种操作建议先 reindex 一下原索引然后测试一下,免得原索引改错了找不回来。

定义一个 runtime field ,值是已有两个字段的值相减,然后在这个 field 上面做 range aggregation 。

要求搜索三个字段,其中一个字段权重乘2,最终得分为每个字段得分相加(也就是设置 type 为 most_fields)。

题目明确告诉你不需要配置 remote cluster,环境已经配好了,只要写一个跨集群的 query 就行了,query 的内容也很简单,里面会有一个 sort 排序。

结果填空,不是填搜索请求。

要求找出来平均飞行里程最大的 airline 航班。

其实就是先按照 airline 航班做一遍 terms 分桶(bucket aggregation),然后在每个 bucket 里再用 avg(metrics aggregation)做一个子聚合求值,最后用 pipeline aggregation 里的 max bucket 取出来 avg 最大的这个 bucket。最后的答案是 AS 。

要求先注册一个 shared file system repository 类型的 repository(用 Kibana 操作就行了),然后创建一个 snapshot (要求只包含特定的某个 index),去 rest API 文档下面看一下 snapshot API 就行了。

自己创建一个 search template(只需要单个 params 参数),要求查询里有 highlight 和 sort ,查询条件很简单,最后要求在 movie_data 这个索引上使用这个 search template 进行查询。题目只要求粘贴最后使用 search template 进行实际查询的请求(但是 search template 需要你先创建好)。

写一个异步搜索,针对航班数据索引进行聚合,填完整的请求。内容是查询每周的某个 metrics 指标(具体是啥我忘了,反正就是先做 date_histogram 然后再做 metrics),题目有另外要求 size 为 0 。

最后,你会发现我考试的这十道题除了集群管理里有几个考点没考,其余大纲里所有考点基本都覆盖到了。

我最开始在备考的时候想的很简单,找几套真题做做就行了,但是后来发现行不通。一方面,考试涉及到的部分内容是 7.x 版本新增的特性,而我由于换公司的原因这几年基本没玩 ES 了,且我之前玩的 ES 还是 6.x 版本,也就是说其实我需要重新学一遍。另一方面,网上基本找不到 8.1 的考试真题,考试相关的资源被几个大佬搞成了付费增值服务的一部分,说到底还是 ES 的圈子太小了,没啥办法。

最后,考试难不难?一点都不难,做题的整个流程基本就是:1、理解题目内容,提炼考点;2、找到考点对应的官方文档,复制粘贴文档里的代码;3、按题目要求修改代码最后提交(某些步骤可以直接用 Kibana 可视化操作,代码都不用敲)。只要你理解了每个考点,能快速找到每个考点的文档位置,你一定能过。

这种实操类的 IT 考试其实都不难,就是考察的基本功,像我这种几年不玩 ES 的复习两周也能过,大家不要害怕,对自己要有信心。

原文链接:https://blog.csdn.net/weixin_39489487/article/details/136817840?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522171869697316800215027021%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=171869697316800215027021&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~times_rank-18-136817840-null-null.nonecase&utm_term=2024+%E8%80%83%E8%AF%95

© 版权声明
THE END
喜欢就支持一下吧
点赞11 分享