bill的数据库学习笔记2,Linear Hashing

Linear Hashing

在这里插入图片描述

  • 使用同一个hash 函数,但是根据该函数定义很多小函数
  • 在小函数中使用mod函数,得到hash的值在每一位上的位置。
  • 一个hi+1的值的值域范围是hi的2倍
  • 按照固定的规则进行splitting,按照一轮一轮的顺序,所以需要处理bucket的overflow的情况。

在这里插入图片描述
每一轮都分为3个部分

  1. Split Pages: 对应从0到next
  2. To be split:对应从next pointer
  3. Split images: 对应从 2 i − 1 2^i - 1 2i1 2 i + 1 − 1 2^{i+1}-1 2i+11

在这里插入图片描述

在这里插入图片描述

  • 使用一堆hash functions

在这里插入图片描述

  • hi(k) 对应2
    如果hi(k) < reference的话,则表示hi(k)的值所对应的bucket值已经被split,(一个bucket(桶)如果已经被split,则会根据二进制中最后的i+1位来辨别在哪个桶),那么我们则使用hi+1(k) 这个函数来判断其属于哪个bucket,如果hi(k)
  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值