最具影响力的数字化技术在线社区

168大数据

 找回密码
 立即注册

QQ登录

只需一步,快速开始

1 2 3 4 5
打印 上一主题 下一主题
开启左侧

[ES] Elasticsearch原理:实时架构

[复制链接]
跳转到指定楼层
楼主
发表于 2019-7-3 13:50:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多数据大咖,获取更多知识干货,轻松玩转大数据

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
Elasticsearch的核心优势就是近乎实时,为什么说是近乎实时而非真实意义上的实时呢,因为Elasticsearch能够做到准实时,而并不是完全的实时。下面介绍Elasticsearch是如何索引数据的整个流程。


先上图:





首先,当我们对记录进行修改时,es会把数据同时写到内存缓存区和translog中。而这个时候数据是不能被搜索到的,只有数据形成了segmentFile,才会被搜索到。默认情况下,es每隔一秒钟执行一次refresh,可以通过参数index.refresh_interval来修改这个刷新间隔,执行refresh主要做三件事:


1、所有在内存缓冲区中的文档被写入到一个新的segment中,但是没有调用fsync,因此内存中的数据可能丢失


2、segment被打开使得里面的文档能够被搜索到


3、清空内存缓冲区




从上面可以看出,内存缓存中的数据,每一秒会生成一个新的segment,一分钟就会生成60哥segments。只有在生成segment之后,才会被索引到,所以这里说并非realtime,而是near-realtime。


translog的相当于事务日志,记录着所有对Elasticsearch的操作记录,也是对Elasticsearch的一种备份。因为并不是写到segment就表示数据落到磁盘了,实际上segment是存储在系统缓存(page cache)中的,只有达到一个周期或者数据量达到一定值,才会flush到磁盘上。这个时候如果系统内存中的segment丢失,是可以通过translog来恢复的。这个flush过程主要做了三件事:


1、往磁盘里写入commit point信息。


2、文件系统中的segment,fsync到磁盘。


3、清空translog文件。


translog可以保证缓存中的segment的恢复,但translog也不是实时也磁盘的,也就是说,内存中的translog丢了的话,也会有丢失数据的可能。所以translog也要进行flush。translog的flush主要有三个条件:


1、可以设置是否在某些操作之后进行强制flush,比如索引的删除或批量请求之后。


2、translog大小超过512mb或者超过三十分钟会强制对segment进行flush,随后会强制对translog进行flush,这种情况缓存中的translog在flush之后会被清空。


3、默认5s,会强制对translog进行flush。最小值可配置100ms。




6.3版本显示保留translog文件的最长持续时间。默认为12h。


参考官网:https://www.elastic.co/guide/en/ ... #_translog_settings




总结


translog是保证es数据安全的关键所在,增加flush的频率可以减少数据丢失的风险,但是所带来的是非常大的性能开销,所以生产上要根据具体的业务需求来进行配置的优化。对实时要求不高的长久,可以考虑增加refresh的时间间隔,这会很有效的提升性能。
---------------------
作者:桃花惜春风
来源:CSDN
原文:https://blog.csdn.net/xiaoyu_bd/article/details/81735473

楼主热帖
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享 分享淘帖 赞 踩

168大数据 - 论坛版权1.本主题所有言论和图片纯属网友个人见解,与本站立场无关
2.本站所有主题由网友自行投稿发布。若为首发或独家,该帖子作者与168大数据享有帖子相关版权。
3.其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和168大数据的同意,并添加本文出处。
4.本站所收集的部分公开资料来源于网络,转载目的在于传递价值及用于交流学习,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。
5.任何通过此网页连接而得到的资讯、产品及服务,本站概不负责,亦不负任何法律责任。
6.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源,若标注有误或遗漏而侵犯到任何版权问题,请尽快告知,本站将及时删除。
7.168大数据管理员和版主有权不事先通知发贴者而删除本文。

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

关于我们|小黑屋|Archiver|168大数据 ( 京ICP备14035423号|申请友情链接

GMT+8, 2024-5-3 13:42

Powered by BI168大数据社区

© 2012-2014 168大数据

快速回复 返回顶部 返回列表