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

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

描述

根据拆分键时间值的年份与月份计算哈希值,然后再按分库数进行取余。

例如,YYYYMM('2012-12-31 12:12:12')等价于按照(2012x12+12)%D(D是分库数目)公式计算出2012-12-31是2012年的第12个月。

使用限制

  • 拆分键的类型必须是DATE、DATETIME或TIMESTAMP中的一种。
  • 使用YYYYMM函数前,需要先确定所需的总物理分表数,您可以通过确定循环周期(如2年)来确定总的物理分表数。因为YYYYMM函数仅支持为循环周期内的每一个月创建一张独立分表。
  • 当月份经过一个循环周期后(如2012-03经过一个2年的循环周期后是2014-03),相同月份有可能被路由到同一个分库分表,具体被分到哪个分表受实际的分表数目影响。

使用场景

适合于需要按年份与月份进行分库的场景,建议结合该函数与tbpartition by YYYYMM(ShardKey)命令一起使用。

使用示例

假设PolarDB-X里已经拥有8个物理库,现有如下需求:

  • 按年月进行分库。
  • 同一个月的数据都能落在同一张分表,且两年以内的每一个月都能单独对应一张分表。
  • 查询时带上分库分表键后能直接将查询落在某个物理分库的某个物理分表。

YYYYMM分库函数即可满足上述要求。上述需求中提到两年以内的每个月都需对应一张分表(即一个月一张表),由于一年有12个月,所以需要创建24(12x2=24)张物理分表才能满足上述需求。PolarDB-X已有8个分库,所以每个分库应该建3(24/8=3)张物理分表。

则您可以使用如下建表DDL:


create table test_yyyymm_tb (    
        id int, 
        name varchar(30) DEFAULT NULL,  
    create_time datetime DEFAULT NULL,
    primary key(id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 
dbpartition by YYYYMM(create_time)
tbpartition by YYYYMM(create_time) tbpartitions 3;
相关文章
|
监控 安全 API
从WAF到WAAP的研究
从WAF到WAAP的研究
|
程序员
面试高频题:开发人员说不是bug,测试如何答复?
面试高频题:开发人员说不是bug,测试如何答复?
476 0
|
4月前
|
人工智能 自然语言处理 前端开发
用通义灵码渐进式开发 0->1 实现高考志愿规划项目题文档
0-1 完全通过自然语言交互 实现一个 AI 高考志愿填报系统,结合通义千问 AI 模型提供专业推荐。该项目旨在帮助高考学生和家长根据个人情况智能推荐合适的专业和学校,减少志愿填报的盲目性。
218 11
|
9月前
|
弹性计算 运维 安全
不得不懂的阿里云账号体系
很多云参与者,并不了解云上账号体系,但了解云账号体系是云采用的基础,本文就带你全面了解阿里云账号体系,适用于所有云参与者。
1108 3
【Latex 格式】Markdown或者LaTeX在单个字母上加一横、一点、两点、三角
Markdown或者LaTeX在单个字母上加一横、一点、两点、三角
1443 8
|
算法 量子技术 数据库
量子计算:从理论到实践的深度解析
在当前科技迅猛发展的时代,量子计算作为一项颠覆性的技术正在不断引起广泛关注。本文旨在深入探讨量子计算的理论基础、关键技术和实际应用,并分析其未来发展前景及面临的挑战。通过对量子比特、纠缠态和量子门操作等核心概念的详细阐述,读者将能够全面理解量子计算的基本原理和潜在影响。
383 27
|
11月前
|
传感器 人工智能
X-Dyna:一张图片就能实现动画化!字节联合斯坦福推出动画生成框架
X-Dyna 是由字节跳动联合斯坦福等高校推出的动画生成框架,基于扩散模型实现单张图像动画化,支持面部表情和身体动作控制,生成高质量动态细节。
282 6
X-Dyna:一张图片就能实现动画化!字节联合斯坦福推出动画生成框架
|
11月前
|
存储 监控 安全
旅游行业 J 人团队协作软件排行榜 TOP6
在旅游行业,春节旅游旺季对团队协作能力提出了严峻考验。针对这一需求,件;Asana 拥有层次分明的任务架构和实时进度跟踪;Podio 支持高度定制的工作流程和无缝集成;Smartsheet 以强大的数据表格管理和智能自动化著称;Zoho Projects 则提供全面的任务管理、资源分配监控和安全文档管理。这些工具各具特色,能够帮助旅游团队提升效率,在竞争中取得优势。
229 6
|
11月前
|
人工智能 算法 数据处理
InternLM3开源发布!4T数据达到18T效果,成本省75%,首度融合深度思考与对话能力!
1月15日,上海人工智能实验室对书生大模型进行重要版本升级,书生·浦语3.0(InternLM3)通过精炼数据框架,大幅提升了数据效率,并实现思维密度的跃升。仅使用4T训练数据的InternLM3-8B-Instruct,其综合性能超过了同量级开源模型,节约训练成本75%以上;同时,InternLM3首次在通用模型中实现了常规对话与深度思考能力融合,可应对更多真实使用场景。
380 1
|
机器学习/深度学习 算法 数据挖掘
【Python机器学习专栏】关联规则学习:Apriori算法详解
【4月更文挑战第30天】Apriori算法是一种用于关联规则学习的经典算法,尤其适用于购物篮分析,以发现商品间的购买关联。该算法基于支持度和置信度指标,通过迭代生成频繁项集并提取满足阈值的规则。Python中可借助mlxtend库实现Apriori,例如处理购物篮数据,设置支持度和置信度阈值,找出相关规则。
731 2