首页 / 科技百科

elasticsearch 基础之分布式存储

2025-05-03 08:18科技百科

对于任何数据存储工具,都应该清楚明了的知道其数据存储结构。下面说说ElasticSearch中数据存储的一些关键点

倒排索引

倒排索引本质是哈希表,完成由搜索词到文档id的映射,这也是elasticsearch搜索比较快速高效的一个重要原因。

倒排索引

也就是说在存储数据的时候,先进行数据分析,完成可搜索的词条到文档的映射。

Doc Value

完成文档到词项的映射,在索引数据与建立倒排索引时同时建立doc values。主要用于排序,聚合。

除了analyzed string字段之外,其他字段默认都会记录doc value。doc values的存储使用了一些压缩机制。对于数字类型字段,一般取最大公约数,然后只记录其倍数。如果没有合适的最大公约数,取最小的数值,然后记录其差值。

如果某个字段不需要这个功能呢,可以通过配置字段的属性:"doc_values": false 来禁用。

基于lucene的存储结构

Lucene是一个功能强大的搜索库,但是基于Lucene进行开发比较复杂。ElasticSearch是基于lucene开发的搜索引擎,提供了更简单易用的API。

索引实际上是lucene中的概念,一个索引由多个索引段构成,大部分的场景是写一次,读多次。当满足某些条件时,多个索引段会合并成一个更大的索引段。索引段的减少有助于搜索效率的提高(可能是lucene内部原理决定的),但是频繁的段合并会影响性能。

Elasticsearch中的每次刷新都会新创建一个段,新创建的段里面的数据在下一次刷新之前是不会被搜索到的。ES的段合并是在后台进行的。

存储数据时的数据流向

index buffer - filesystem cache - 磁盘

第一个过程是refresh操作,第二个过程称为flush操作。

如果读完这篇文章有很多疑惑之处,请阅读es系列之前的文章:

es系列:集群分布式架构及原理

ES系列:集群、索引、搜索配置优化方案

ES系列:elasticsearch的功能及Top 5大应用场景

ES系列:elasticsearch基础知识汇总及常见面试题(一)

猜你喜欢

  • 机械之最

    一文图解 72 个机器学习基础知识点

    作者王路情,澳门科技大学博士, 提供软件开发、数据分析和智能应用服务。微信:shushengya360,1. 机器学习概述1)什么是机器学习人工智能(Artificial intelligence)是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。它是一个笼统而宽泛的概念,人工智能的最终目标是使计算机能..

    2025-04-06
  • 知识百科

    二年级语文整理的基础知识点

    七、量词:一只(青蛙) 一个(孩子) 一块(手表) 一把(刀) 一条(小河) 一盘(水果)一双(筷子)一份(报纸)一片(叶子) 一句(话)一(片)回声 一 (列) 火车 一(台)电脑一(束)鲜花 一(场)比赛 一(圈)波纹 一(张)桌子 一(颗)石子 一(把)伞一(座)小岛 一(粒)种子 一(面)红旗 一(朵)浪花 一 ..

    2025-04-04
  • 专业排行榜

    天津医科大学十大王牌专业:基础医学夺冠,临床医学仅第二

    天津作为我国四大直辖市之一,一直也是众多高考学子求学向往的城市之一。谈起天津的高校,很多人都知道南开大学和天津大学这两所著名的985大学。天津医科大学是一所公办的医药类大学,也是口碑非常好的双一流、211大学,那么天津医科大学王牌专业有哪些?现在巴拉排行榜网小编为你们整理了一份天津医科大学十大王牌专业:基..

    2025-03-30
  • 生活

    集中注意力的基础是

    集中注意力的基础是对大脑进行科学的锻炼,促使脑神经变得发达和强壮。注意力是指人的心理活动指向和集中于某种事物的能力。“注意”,是一个古老而又永恒的话题。俄罗斯教育家乌申斯基曾精辟地指出:“注意是我们心灵的唯一门户,意识中的一切,必然都要经过它才能进来。”以上是有关集中注意力的基础是的内容,了解更多集..

    2025-03-30
  • 科技百科

    零基础入门学python编程

    首先,学习编程语言并没有年龄上的限制,在当前的工业互联网时代,不论是初级职场人还是资深职场人,学习一门编程语言都是有必要的,从这个角度来看,35岁开始学习编程语言是完全可以的。虽然说学习Python语言并没有年龄上的限制,但是如果想通过学习Python来进入IT互联网行业从事技术岗位,还是具有一定难度的,尤其是在35..

    2025-03-23
  • 娱乐百科

    看了47岁梅婷的打扮,我悟了:衣基础、裙过膝,才是真正的优雅

    女人将近50岁时,很多人都不愿意承认自己已经步入中年末期,岁月的痕迹在脸上已经非常明显,但不得不承认,衰老就是一件不可逆的事情。面容上不必过多地干涉,让自己显得年轻一点,女人完全可以依靠穿搭来做到。50岁上下的女人要如何打造高级又得体的造型?穿衣打扮上,倒是可以借鉴47岁的梅婷,在年龄这块,她很符合,在穿..

    2025-03-19
  • 时尚百科

    日本化妆品基础水乳

    1.兰芝 臻白净透水乳兰芝补水效果很好,种草好久了。敏感肌肤用了也会感觉温和、不刺激。比起水库水乳来说多了美白的功效,补水也更上一层楼了。2.伊思 it's skin 蜗牛精华水乳1号清爽型的质地偏白色,适合所有肌肤,尤其是偏油性肌肤,小编干性皮肤,冬季和霜搭配觉得很好,不油腻。用的2号觉得稍微有油感,但保湿肯定是更..

    2025-03-03
  • 科技百科

    linux基础知识与文件系统简介

    文件系统对象结构查看分区信息查看超级块查看块组描述符表总结上面我们介绍了分区的内部结构如下图所示:Boot Sector: 前面已经介绍过,里面存储的是MBR或者GDT等系统启动的程序Super block:记录着磁盘上所有数据块组的信息以及数据块的大小、inode大小......一旦损坏,数 据丢失,需备份多次GDT:存储着每个块组的磁盘块..

    2025-02-28

微信分享

微信分享二维码

扫描二维码分享到微信或朋友圈

链接已复制