ES搜索引擎的连环炮面试题

2024-02-21 01:40

本文主要是介绍ES搜索引擎的连环炮面试题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

1 es的分布式架构原理能说一下么(es是如何实现分布式的啊)?

2 es写入数据的工作原理是什么啊?es查询数据的工作原理是什么啊?

3 es在数据量很大的情况下(数十亿级别)如何提高查询性能啊?

4 es生产集群的部署架构是什么?每个索引的数据量大概有多少?每个索引大概有多少个分片?


 想学习架构师构建流程请跳转:Java架构师系统架构设计

内容参考自公众号石杉的架构笔记欢迎大家关注,回答做了一些自己的补充和一些自己遇到的面试问题.

业内目前来说事实上的一个标准,就是分布式搜索引擎一般大家都用elasticsearch,es,solr,但是确实,这两年大家一般都用更加易用的es。

lucene

如果你确实真的不连lucene都不知道是什么?我觉得你确实不应该,lucene底层的原理是一个东西,叫做倒排索引。太基础了。

百度,搜索一下lucene入门,了解一下lucene是什么?倒排索引是什么?全文检索是什么?写个lucene的demo程序体验一把。

回答:

ElasticSearch前世今生luceneicon-default.png?t=N7T8https://blog.csdn.net/ZGL_cyy/article/details/112061159

elasticsearch

百度,搜索一下:elasticsearch入门,初步至少知道es的一些基本概念,然后包括es的基本部署和基本的使用

回答:

ElasticSearch快速入门icon-default.png?t=N7T8https://blog.csdn.net/ZGL_cyy/article/details/111559407

面试官可能会怎么问?

1 es的分布式架构原理能说一下么(es是如何实现分布式的啊)?

回答:

ElasticSearch分布式架构原理icon-default.png?t=N7T8https://blog.csdn.net/ZGL_cyy/article/details/112061170

2 es写入数据的工作原理是什么啊?es查询数据的工作原理是什么啊?

回答:

ElasticSearch写入数据和查询数据的工作原理icon-default.png?t=N7T8https://blog.csdn.net/ZGL_cyy/article/details/112061218

3 es在数据量很大的情况下(数十亿级别)如何提高查询性能啊?

回答:

ElasticSearch提高查询效率icon-default.png?t=N7T8https://blog.csdn.net/ZGL_cyy/article/details/112061244

ElasticSearch深度调优指南大全_赵广陆的博客-CSDN博客第一部分:调优索引速度ES发布时带有的默认值,可为es的开箱即用带来很好的体验。全文搜索、高亮、聚合、索引文档等功能无需用户修改即可使用,当你更清楚的知道你想如何使用es后,你可以作很多的优化以提高你的用例的性能,下面的内容告诉你 你应该/不应该修改哪些配置https://www.elastic.co/guide/en/elasticsearch/reference/current/tune-for-indexing-speed.html使用批量请求批量请求将产生比单文档索引请求好得多的性能。https://blog.csdn.net/ZGL_cyy/article/details/118223228

4 es生产集群的部署架构是什么?每个索引的数据量大概有多少?每个索引大概有多少个分片?

回答:

ElasticSearch生产集群的部署架构中索引和分片icon-default.png?t=N7T8https://blog.csdn.net/ZGL_cyy/article/details/112061262

这篇关于ES搜索引擎的连环炮面试题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/730206

相关文章

SpringBoot整合(ES)ElasticSearch7.8实践

《SpringBoot整合(ES)ElasticSearch7.8实践》本文详细介绍了SpringBoot整合ElasticSearch7.8的教程,涵盖依赖添加、客户端初始化、索引创建与获取、批量插... 目录SpringBoot整合ElasticSearch7.8添加依赖初始化创建SpringBoot项

SpringBoot整合easy-es的详细过程

《SpringBoot整合easy-es的详细过程》本文介绍了EasyES,一个基于Elasticsearch的ORM框架,旨在简化开发流程并提高效率,EasyES支持SpringBoot框架,并提供... 目录一、easy-es简介二、实现基于Spring Boot框架的应用程序代码1.添加相关依赖2.添

荣耀嵌入式面试题及参考答案

在项目中是否有使用过实时操作系统? 在我参与的项目中,有使用过实时操作系统。实时操作系统(RTOS)在对时间要求严格的应用场景中具有重要作用。我曾参与的一个工业自动化控制项目就采用了实时操作系统。在这个项目中,需要对多个传感器的数据进行实时采集和处理,并根据采集到的数据及时控制执行机构的动作。实时操作系统能够提供确定性的响应时间,确保关键任务在规定的时间内完成。 使用实时操作系统的

一些其他面试题

阿里二面:那你来说说定时任务?单机、分布式、调度框架下的定时任务实现是怎么完成的?懵了。。_哔哩哔哩_bilibili 1.定时算法 累加,第二层每一个格子是第一层的总时间400 ms= 20 * 20ms 2.MQ消息丢失 阿里二面:高并发场景下引进消息队列有什么问题?如何保证消息只被消费一次?真是捏了一把汗。。_哔哩哔哩_bilibili 发送消息失败

zookeeper相关面试题

zk的数据同步原理?zk的集群会出现脑裂的问题吗?zk的watch机制实现原理?zk是如何保证一致性的?zk的快速选举leader原理?zk的典型应用场景zk中一个客户端修改了数据之后,其他客户端能够马上获取到最新的数据吗?zk对事物的支持? 1. zk的数据同步原理? zk的数据同步过程中,通过以下三个参数来选择对应的数据同步方式 peerLastZxid:Learner服务器(Follo

java常用面试题-基础知识分享

什么是Java? Java是一种高级编程语言,旨在提供跨平台的解决方案。它是一种面向对象的语言,具有简单、结构化、可移植、可靠、安全等特点。 Java的主要特点是什么? Java的主要特点包括: 简单性:Java的语法相对简单,易于学习和使用。面向对象:Java是一种完全面向对象的语言,支持封装、继承和多态。跨平台性:Java的程序可以在不同的操作系统上运行,称为"Write once,

【Kubernetes】常见面试题汇总(三)

目录 9.简述 Kubernetes 的缺点或当前的不足之处? 10.简述 Kubernetes 相关基础概念? 9.简述 Kubernetes 的缺点或当前的不足之处? Kubernetes 当前存在的缺点(不足)如下: ① 安装过程和配置相对困难复杂; ② 管理服务相对繁琐; ③ 运行和编译需要很多时间; ④ 它比其他替代品更昂贵; ⑤ 对于简单的应用程序来说,可能不

【附答案】C/C++ 最常见50道面试题

文章目录 面试题 1:深入探讨变量的声明与定义的区别面试题 2:编写比较“零值”的`if`语句面试题 3:深入理解`sizeof`与`strlen`的差异面试题 4:解析C与C++中`static`关键字的不同用途面试题 5:比较C语言的`malloc`与C++的`new`面试题 6:实现一个“标准”的`MIN`宏面试题 7:指针是否可以是`volatile`面试题 8:探讨`a`和`&a`

Laravel 面试题

PHP模块 PHP7 和 PHP5 的区别,具体多了哪些新特性? 性能提升了两倍 结合比较运算符 (<=>) 标量类型声明 返回类型声明 try…catch 增加多条件判断,更多 Error 错误可以进行异常处理 匿名类,现在支持通过new class 来实例化一个匿名类,这可以用来替代一些“用后即焚”的完整类定义 …… 了解更多查看文章底部链接 PHP7 新特性 为什么 PHP

【吊打面试官系列-Redis面试题】说说 Redis 哈希槽的概念?

大家好,我是锋哥。今天分享关于 【说说 Redis 哈希槽的概念?】面试题,希望对大家有帮助; 说说 Redis 哈希槽的概念? Redis 集群没有使用一致性 hash,而是引入了哈希槽的概念,Redis 集群有 16384 个哈希槽,每个 key 通过 CRC16 校验后对 16384 取模来决定放置哪个槽, 集群的每个节点负责一部分 hash 槽。