软件系统的数据检索设计

电子说

1.3w人已加入

描述

软件系统的数据检索设计

随着业务量加大,数据检索量也会日益增多,为了减轻数据库压力,本系统采用ElasticSearch来实现数据检索功能。

简单来说,Elasticsearch 是一个实时的分布式存储、搜索、分析的引擎,它可以近乎实时的存储、检索数据,本身扩展性很好,可以扩展到上百台服务器,处理PB级别(大数据时代)的数据,ElasticSearch的检索流程如下:

数据

数据检索流程图

1) 执行refresh操作将mem buffer中的数据写入到新的segment并写入os cache,然后打开本segment以供search使用,最后再次清空mem buffer。

2) 一个commit point被写入磁盘,这个commit point中标明所有的index segment。

3) filesystem cache(os cache)中缓存的所有的index segment文件被fsync强制刷到磁盘os disk,当index segment被fsync强制刷到磁盘上以后,就会被打开,供查询使用。

translog被清空和删除,创建一个新的translog。

审核编辑 黄宇
 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分