zoukankan      html  css  js  c++  java
  • 68.document增删改原理

    主要知识点

    • document增的原理
    • document删的原理
    • document改的原理

       

    一、document增的原理

    一个document存入es大致要分以下几个步骤

    1)数据写入buffer

    2)写入buffer的数据在达到一定条件(时间等)进行commit point(提交点)

    3buffer中的数据经过commit 写入新的index segment

    4index segment的数据在达到一定条件后写入os cache中,

    5)达到一定条件后os chche中的数据被fsync强制刷到磁盘上,完成保存到磁盘后,新的index sgement被打开,供search使用,并且buffer被清空

       

    二、document删的原理

    每次commit point时,会有一个.del文件,标记了哪些segment中的哪些document被标记为deleted了,在搜索的时候,会依次查询所有的segment,从旧的到新的,比如被修改过的document,在旧的segment中,会标记为deleted,在新的segment中会有其新的数据。对于匹配到的document,如果发现已经在.del文件被标示为deleted了,就不会作用结果返回。

       

    三、document改的原理

    es的修改或更新其实是分两部进行了,先删除,再增加。

       

    四、其他

    es底层用的是lucen,lucen底层的index分为多个segment,每个segment存放部分数据。

    `

  • 相关阅读:
    DrawerLayout Demo
    解析没有key的Json
    Actionbar Demo
    Fragment 创建及替换
    Android 图片在SD卡及包下的存储
    获取SD卡下Android/data/下文件
    判断软键盘的弹出
    Volley
    HttpClient Post请求
    Git .gitignore 设置为全局global
  • 原文地址:https://www.cnblogs.com/liuqianli/p/8477052.html
Copyright © 2011-2022 走看看