突破Java面试(14)-分布式搜索引擎的架构
以下用ES表Elastic Search
0 Github
1 面试题
说说ES的分布式架构原理
2 考点分析
在搜索这块,曾经lucene 是最流行的搜索库.
几年前业内一般都问,你了解 lucene 吗?你知道倒排索引的原理吗?
但现在不问了,因为现在项目基本都是采用基于 lucene 的分布式搜索引擎—— ElasticSearch.
现在分布式搜索基本已经成为互联网系统的标配,其中尤为流行的就是 ES,前几年一般用 solr。但是最近基本大部分企业和项目都开始转向 ES.
所以互联网面试,肯定会跟你聊聊分布式搜索引擎,就一定会聊到ES!
如果面试官问你第一个问题,确实一般都会问你 es 的分布式架构设计能介绍一下么?就看看你对分布式搜索引擎架构的一个基本理解。
3 详解
ES的设计理念就是分布式搜索引擎,底层其实还是基于 lucene 的.核心思
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
MaxCompute 费用暴涨之存储压缩率降低导致SQL输入量变大
现象:同样的SQL,每天处理的数据行数差不多,但是费用突然暴涨甚至会翻数倍。 分析: 我们先明确MaxCompute SQL后付费的计费公式:一条SQL执行的费用=扫描输入量 ️ SQL复杂度 ️ 0.3(¥/GB)。 变量主要是输入量和复杂度,如果SQL没有变更的情况下复杂度度也没有变化,那么费用上涨主要原因就是输入量增加,因此我们侧重从输入量去排查是什么环节导致来了输入量的增加。 排查: 挑两个job的Logview查看输入量,推荐用MaxCompute Studio的作业对比功能查看,作业对比功能使用方式可以参考《MaxCompute Studio使用心得系列7——作业对比》。输入量如下: 如上图,数据行数差别没有翻倍,但是大小(bytes)翻倍,基本可以排除是因为数据量暴增导致。那么数据行数增量不大,但是数据大小翻倍,无疑翻倍的这些数
- 下一篇
Elasticsearch搜索调优权威指南 (2/3)
英文原文:https://qbox.io/blog/elasticsearch-search-tuning-part-2 作者:Adam Vanderbush 译者:杨振涛 目录 预索引数据 映射 避免使用脚本 强制合并只读索引 Elasticsearch搜索调优权威指南,是QBOX在其博客上发布的系列文章之一,本文是该系列的第二篇,主要介绍了索引预处理、mapping建立、避免脚本的使用、索引段合并等搜索性能相关的调优方法。 本文是Elasticsearch搜索调优系列文章3篇中的第2篇,第1篇参考这里(点击)。本系列教程旨在更进一步讨论针对Elasticsearch 5.0及以上版本的搜索调优技术、策略及建议。 1.预索引数据 为了优化数据的索引方式,应当在查询中预置一些模式。比如,如果所有文档都有一个叫 price 的价格字段,并且大部分查询在一个固定范围列表上执行 range 聚合,那么就可以通过预索引范围到索引中并使用一个 terms 聚合,来加速该聚合。 比如有如下文档: curl -XPUT 'ES_HOST:ES_PORT/index/type/1 ?pretty' -...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- CentOS关闭SELinux安全模块
- CentOS7设置SWAP分区,小内存服务器的救世主
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Mario游戏-低调大师作品