美文网首页
2014SIGMOD-The PH-Tree – A Space

2014SIGMOD-The PH-Tree – A Space

作者: Caucher | 来源:发表于2022-04-04 18:11 被阅读0次

    标题:PH-tree,一个空间高效的存储结构和多维索引

    ABSTRACT

    • PH-tree:全称PATRICIA-hypercube-tree,是把之前一种叫做PATRICIA-trie的二叉树和超立方体合并起来设计的。
    • 特色:空间高效。PH-tree是一个内存索引,带有一定的压缩性质。用这个索引存数据,有时甚至比存原数据还要小。

    1. INTRODUCTION

    • 搜索高效:与维数无关
    • 结构与构造顺序无关
    • 更新高效:最多涉及两个节点

    3. THE PH-TREE

    PH-tree将高维数据全部二进制表示,基于trie树的前缀和四叉树的多扇出。优点如下:

    • 四叉结构,同时考虑所有维度。
      • 使得访问与维度存储的顺序无关。
      • 使得节点数量减少。
      • 使得树高度与维度无关。
    • 因为高度有限制,所以即使PH-tree不是平衡树,也不需要单独为它的平衡性考虑,因为插入,更新最多和两个节点相关。
    • PH-tree节点数目虽多,但是把每个节点的size,或者说节点内空间利用率提升了,用更少的空间存储同样多的信息。当然带一些性能代价。
    • 超立方体寻址很快,一次数组查询就可以完成k维分割;二叉树就要路由k个节点。

    3.1 The 1D-PH-Tree

    先从存放1维数据开始讲起。假设每个1维数据有4个bit来表示,1维的PH-tree就类似一个trie树,存放这些bit串。如下图。

    • 这个PH-tree高度最高就是4,每一维数据的bit宽度。


      image.png

    3.2 The kD-PH-Tree

    当存放k维数据时,第一层使用各个维度的第一个bit,依次类推。每个节点称一个超立方体,节点中的数字称地址。


    image.png

    3.3 Floating Point Values

    浮点数都是IEEE754存储的,二进制码和十进制的大小没什么关系。因此本文转换了存储模式,使得二进制码的顺序和十进制顺序一致。

    【后续是复杂度分析和实验,有空补充】

    相关文章

      网友评论

          本文标题:2014SIGMOD-The PH-Tree – A Space

          本文链接:https://www.haomeiwen.com/subject/kaecsrtx.html