`
mengdejun
  • 浏览: 410303 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

php 分库分表hash算法

    博客分类:
  • Php
阅读更多
//分库分表算法 
function calc_hash_db($u, $s = 4) 
{ 
$h = sprintf("%u", crc32($u)); 
$h1 = intval(fmod($h, $s)); 
return $h1; 
} 


for($i=1;$i<100;$i++) 
{ 
echo calc_hash_db($i); 
echo "<br>"; 
} 

function calc_hash_tbl($u, $n = 256, $m = 16) 
{ 
$h = sprintf("%u", crc32($u)); 
$h1 = intval($h / $n); 
$h2 = $h1 % $n; 
$h3 = base_convert($h2, 10, $m); 
$h4 = sprintf("%02s", $h3); 
return $h4; 
}

 

分享到:
评论

相关推荐

    Spring MVC +Spring + Mybatis 构建分库分表源码

    在分库分表的设计中,通常会采用Hash一致性算法,如哈希取模,根据业务字段(如用户ID)的值将数据分散到不同的数据库和表中,以保证数据分布的均匀性和查询效率。此外,还需要考虑跨库事务的一致性,Spring的事务...

    SpringBoot_shardDB_shardTable:SpringBoot集成Sharding-JDBC实现分库分表,自定义分片算法,基于一致性hash算法,易于扩容

    整合了 Sharding-JDBC ,实现了 分库分表,并且在分库分表中实现了自定义的分片算法; 一致性Hash算法,易于扩容;添加了 单元测试,使用Spring提供的RestTemplate调用RestFul风格的API接口;整合了 quartz 定时任务...

    ShardingJDBC分库分表mysql数据库实战小滴新版

    同时,课程还涉及分库分表进阶内容,如 Snowflake 雪花算法实战、广播表和绑定表配置实战以及 Sharding-Jdbc 多种分片策略实战,包括精准分片算法、范围分片算法、复合分片算法和 Hint 分片算法等。此外,课

    CDR分库分表的机制

    ### CDR分库分表机制详解 #### 一、引言 随着通信行业业务量的不断增长,单一数据库已经难以满足大规模数据处理的需求。CDR(Calling Detail Record,呼叫详细记录)作为通信业务中的一项重要数据,其处理能力直接...

    第五节课交易分库分表详解一1

    - **散列 Hash**:通过哈希算法将数据均匀分布到各个库表,减少数据热点,但扩展性较差,因为扩容可能导致数据迁移。 - **范围 Range**:按数据范围分配,易于扩展,但难以解决数据热点问题。 3. 实战应用: - *...

    MySQL分库分表,读写分离与Mycat的使用文章中字符串hash解析算法分片sql

    MySQL分库分表,读写分离与Mycat的使用文章中字符串hash解析算法分片sql

    高运算性能,低碰撞率的hash算法MurmurHash算法.zip

    MurmurHash算法由Austin Appleby创建于2008年,现已应用到Hadoop、libstdc 、nginx、libmemcached,Redis,Memcached,Cassandra,HBase,Lucene等开源系统。2011年Appleby被Google雇佣,随后Google推出其变种的...

    mysql分库分表分区1

    MySQL 数据库在处理大数据量时,为了提高查询性能和管理效率,通常会采用分库分表的技术。这里的“mysql分库分表分区1”主要讨论的是 MySQL 中的表分区技术,这是一种将大表物理分割为多个更小、更易管理的部分的...

    ShardingSphere分库分表教程.pdf

    分库分表技术主要分为四种方式:垂直分表、垂直分库、水平分表和水平分库。 垂直分表是指将数据库中的表按照字段进行拆分,将热数据和冷数据分离,从而减少I/O竞争和锁表的情况。这种方式通常用于优化表结构设计,...

    20多个常用的Hash算法C++ 实现

    Hash函数集合,包含主流的hash函数: nginx_hash算法,OpenSSL_hash算法,RSHash,JSHash,PJWHash,ELFHash,BKDRHash,DJBHash,DEKHash,APHash等等!

    C语言实现hash算法

    在IT领域,哈希算法(Hash Algorithm)是一种用于将任意长度的数据转化为固定长度输出的算法。这个过程通常称为哈希或散列。哈希算法在信息安全、数据完整性验证、密码学等多个方面都有着广泛的应用。本项目是用...

    数据库分库分表存储分析思路

    数据库分库分表存储分析...数据库分库分表存储是解决大数据量存储的有效方法之一,但是需要选择合适的分库或分表方法,考虑到join操作、事务、成本等问题,并选择合适的路由算法来确定某条数据具体属于哪个切分后的表。

    Java实现GeoHash算法

    Java实现GeoHash算法是一种在IT领域中用于地理位置数据存储和检索的技术。GeoHash将经纬度坐标转换为字符串,使得地理位置可以被高效地索引和查询。这种算法利用了空间分割和编码策略,使得相邻的位置在编码后具有...

    常用的hash算法(java实现)

    在计算机科学中,哈希(Hash)算法是一种用于将任意长度的数据映射为固定长度输出的函数。这种输出通常称为哈希值或消息摘要。在Java编程语言中,实现哈希算法可以方便地用于数据验证、查找表以及密码存储等多种用途...

    图像的相似度Hash算法(aHash的delphi实现).rar

    在IT领域,Hash算法是一种广泛应用于数据验证、存储和比较的技术。它将任意长度的数据转换成固定长度的输出,通常称为Hash值或指纹。在这个压缩包中,我们重点关注的是图像的相似度Hash算法,特别是平均哈希算法(a...

    hash算法工具类

    一个hash算法的工具类,里面包含了一些常用的hash算法

Global site tag (gtag.js) - Google Analytics