开发指南—函数—拆分函数—RIGHT_SHIFT

简介: 本文将介绍RIGHT_SHIFT函数的使用方式

描述

根据分库键的键值(键值必须是整数)有符号地向右移二进制指定的位数(位数可通过DDL指定),然后将得到的整数值按分库(表)数目取余。

使用限制

拆分键的类型必须整数类型。

使用场景

当拆分键大部分键值的低位部分区分度比较低而高位部分区分度比较高时,则适用于通过此拆分函数提高散列结果的均匀度。

例如有4个拆分键的键值,分别为0x0100、0x0200、0x0300和0x0400, 这4个值的第8位部分都是0。通常一些业务后N位可能只是一些业务上的标志位,如果直接对键值进行取余散列,其散列效果可能会比较差。但如果通过RIGHT_SHIFT(shardKey, 8)将拆分键的值进行二进制右移8位,则分别变成了0x01、0x02、0x03和0x04,这样的散列效果就会比较均匀(若分4个库,刚好可以每个值对应一个分库)。

使用示例

假设需要将ID作为拆分键,并将ID的值向右移二进制4位的值作为哈希值,则可以如下建表:


create table test_hash_tb (    
    id int, 
    name varchar(30) DEFAULT NULL,  
    create_time datetime DEFAULT NULL,
    primary key(id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 
dbpartition by RIGHT_SHIFT(id, 8) 
tbpartition by RIGHT_SHIFT(id, 8) tbpartitions 4;
相关文章
|
小程序 前端开发 JavaScript
基于uniapp的学生(选课)成绩小程序
本系统2022年4月创作完成,该系统包含小程序端和管理端,适合选题:小程序、学生成绩、学生选课、成绩管理。系统小程序端采用uniapp+uview实现,小程序接口和管理端采用springboot+mybatis开发,使用mysql数据库,下面是大概的功能。
基于uniapp的学生(选课)成绩小程序
|
Web App开发 自然语言处理 安全
Internet Download Manager2022免费永久版下载器安装
Internet Download Manager,简称IDM 它是一款优秀的HTTP,HTTPS,FTP协议的下载工具。赞誉极多,获得CNET下载管理工具五星评价。
1231 1
|
移动开发 JSON 前端开发
Vite 2.x + React + Zarm + Less + React Router v6 + Axios + flexible.js 搭建前端 H5 开发环境2
Vite 2.x + React + Zarm + Less + React Router v6 + Axios + flexible.js 搭建前端 H5 开发环境
450 0
Vite 2.x + React + Zarm + Less + React Router v6 + Axios + flexible.js 搭建前端 H5 开发环境2
|
存储 弹性计算 虚拟化
基于阿里云eRDMA的GPU实例大幅提升多机训练性能
2023年3月23日14:00(中国时间),NVIDIA GTC开发者大会,阿里云开发者社区观看入口正式开放,阿里云高级技术专家李伟男;阿里云弹性计算产品专家宋迪共同带来了题为《基于阿里云eRDMA的GPU实例大幅提升多机训练性能》的分享
基于阿里云eRDMA的GPU实例大幅提升多机训练性能
|
存储 运维 监控
什么是华为职业认证体系?阿里云认证呢?一篇就全讲清楚了
华为职业认证 对ICT从业者职业技能的一种认可。 就像我们考取的英语四六级证书一样,他代表你具有相关方面的技能。 华为职业认证体系分为三个层次的认证,而每一个层次又可以细分为不同的领域,具体下图。
1468 1
什么是华为职业认证体系?阿里云认证呢?一篇就全讲清楚了
|
机器学习/深度学习 编解码 算法
【OpenVI—论文解读系列】高清人像美肤模型ABPN CVPR论文深入解读
随着数字文化产业的蓬勃发展,人工智能技术开始广泛应用于图像编辑和美化领域。其中,人像美肤无疑是应用最广、需求最大的技术之一。传统美颜算法利用基于滤波的图像编辑技术,实现了自动化的磨皮去瑕疵效果,在社交、直播等场景取得了广泛的应用。然而,在门槛较高的专业摄影行业,由于对图像分辨率以及质量标准的较高要求,人工修图师还是作为人像美肤修图的主要生产力,完成包括匀肤、去瑕疵、美白等一系列工作。通常,一位专业修图师对一张高清人像进行美肤操作的平均处理时间为1-2分钟,在精度要求更高的广告、影视等领域,该处理时间则更长。
942 0
|
API 芯片
HarmonyOS系统中内核实现UART串口通信方法
大家好,今天主要聊一聊,如何使用鸿蒙系统实现UART数据的读写方法。
1264 0
HarmonyOS系统中内核实现UART串口通信方法
Office 2021 for Mac 简体中文 官网下载地址
Office 2021 for Mac 它包括 Word、Excel、PowerPoint 和 Outlook。一次性购买该产品可安装在一台 Mac 上,供家用或办公之用。
1538 0
|
新零售 供应链 数据管理
解决方案应用实例 |“业务+数据”双中台驱动,源氏木语构建数字化平台
源氏木语携手阿里云,基于业务中台和数据中台双轮驱动,进行新一代数字化系统重建,深化销售数字化能力,打通全链路供应链闭环,实现围绕业务的全面数字化支撑。
1054 0
解决方案应用实例 |“业务+数据”双中台驱动,源氏木语构建数字化平台
|
Web App开发 Linux 数据安全/隐私保护
盘点国内网上银行跨平台兼容性
为了提高开发效率,很多开发者都使用Mac OS X或Linux系统作为桌面系统。但是,国内很多网上银行都只能在Windows下使用,给大家的日常使用带来了不便。陆景昊童鞋整理了国内网上银行在Windows、Mac OS X和Linux系统下的兼容性列表,供大家选择银行时参考。
818 0
盘点国内网上银行跨平台兼容性