【 使用环境 】 测试环境
【 OB or 其他组件 】OB
【 使用版本 】4.3.1
【问题描述】如何创建range分区,并根据一个字段每天01:00时间戳就自动生成分区,自动删除30日之前的分区
OB,没看到这个语法支持
有类似的解决方案吗?
不自动删除分区,可以每天根据指定时间自动生成分区吗
存储过程定时每天执行,可行不?
目前可以用数据库存储每个表的分区策略,凌晨用定时任务扫描配置信息,更新分区
生成分区不希望是整点,主要统计分析,希望延后一点,每天01:00生成新的分区
更希望实现类似clickhouse这样的功能,
根据DATESTAMP_CHD 年月日生成分区,添加一小时
PARTITION BY toYYYYMMDD(DATESTAMP_CHD - toIntervalHour(1))
ORDER BY DATESTAMP_CHD
TTL (DATESTAMP_CHD - toIntervalHour(1)) + toIntervalDay(30)
SETTINGS index_granularity = 8192
这要等ob实现这功能了,目前不支持这语法
目前是自己实现的,写脚步或者定时任务
也行啊,数据库层原生支持那得等了
可以自己写脚本,定时执行。
还完全可控
能否实现每天1点到第二天1点为一个分区,而不是整点呢
是的,其实这个功能日常用的挺多的,但是现在数据库基本都不支持
数据库底层目前暂时不支持这语法,等后面ob官方实现这种功能。
现阶段的常见的阶级方案除了ODC有提供专门针对 Range 分区的扩展功能 支持依据用户设置的分区策略对 Range 分区表进行自动管理之外,其他应该是得写个脚本或者应用程序程序去定时执行处理。
请教下,ob 的 mysql 租户,4.2.1-ce版本 没有看到有定时任务啊,类似mysql events ,定时执行分区job 。
社区版ob暂时不支持event功能
可以用 ODC 的分区计划