• index structure


    1. wordlist
      0) 0, 1byte

      1) token-id(delta), 8byte
      2) doclist-offset(delta), 8byte
      3) doc_count, 4byte
      4) hit_count, 4byte
      1)-4)为一组数据,重复出现,每1024(wordlist_checkpoint)组出现一个checkpoint

      checkpoint:
      5) 0, 8byte : indicate checkpoint
      6) doclist中对应数据长度, 8byte

      last:
      WordlistCheckpoint数据
      7) token_id, 8byte
      8) wordlist-offset, 8byte

    2. doclist
      0) 0, 1byte

      1) doc_count_in_block, 4byte
      2) hitlist_offset, 8byte
      3) array:doc-id-delta, 4byte
      1) - 3)为一个block,不断重复,*当token_id变化时 或 满了 64(max_num_doc_in_one_block)个doc时,写出一个block

      4) 0, 4byte: 标识着一个token的block的结束

    3. hitlist
      0) 0, 1byte

      1) block_size, 4byte
      2) gamma-ziped:array:hit_freq/doc,
      3) gamma-ziped:array:extend_freq/doc,
      4) array:sec_pos_delta/hit, 4byte
      5) array:attr/hit, 8byte
      6) array:extend_attr/hit

      1) - 6)为一个block,与doclist中的block对应, 创建规则与doclist一致


    4. jumplist
      0) token_id, 8byte
      1) array:
        1. doc_id/doc, 4byte the 1st doc-id in block
        2. array2:doclist-offset/doc, 8byte
      2) 0

  • 相关阅读:
    使用 Spring data redis 结合 Spring cache 缓存数据配置
    Spring Web Flow 笔记
    Linux 定时实行一次任务命令
    css js 优化工具
    arch Failed to load module "intel"
    go 冒泡排序
    go (break goto continue)
    VirtualBox,Kernel driver not installed (rc=-1908)
    go运算符
    go iota
  • 原文地址:https://www.cnblogs.com/tekkaman/p/3595744.html
Copyright © 2020-2023  润新知