OTSReader自己定义切分主键

本文涉及的产品
表格存储 Tablestore,50G 2个月
简介: OTSReader自己定义切分主键

该配置项属于高级配置项,是用户自己定义切分配置信息,普通情况下不建议用户使用。

适用场景通常在OTS数据存储发生热点,使用OTSReader自动切分的策略不能生效情况下,使用用户自定义的切分规则。split指定是的在Begin、End区间内的切分点,且只能是partitionKey的切分点信息,即在split仅配置partitionKey,而不需要指定全部的PrimaryKey。
例如对一张主键为id01、id02的OTS进行抽取任务,主键是数据0~90可以配置为:

{
"job": {
       "setting": {
           "speed": {
               "byte": 1048576
           },
           "errorLimit": {
               "record": 0,
               "percentage": 0.02
           }
       },
       "content": [
           {
               "reader": {
                   "name": "otsreader-internal",
                   "parameter": {
                       "mode": "multiVersion",
                       "endpoint": "http://datax-internal.cn-hangzhou.ots.aliyuncs.com/",
                       "accessId": "xxxxxxxxxxxxxxxx",
                       "accessKey": "yyyyyyyyyyyyyy",
                       "instanceName": "datax-internal",
                       "table": "datax_ots_reader_internal_test_table",
                       "range": {
                           "begin": [
                               {
                                   "type": "INF_MIN",//主键id01最小值
                                   "value": ""
                               },
                               {
                                   "type": "INF_MIN",//主键id02最小值
                                   "value": ""
                               }
                           ],
                           "end": [
                               {
                                   "type": "INF_MAX",//指定 id01 抽取最大值
                                   "value": ""
                               },
                               {
                                   "type": "INF_MIN",//指定 id02 抽取最大值
                                   "value": ""
                               }
                           ],
                           "split": [
            // 用户指定的切分点,如果指定了切分点,Job 将按照 begin、end 和 split 进行 Task 的切分,
           // 切分的列只能是 Partition Key(ParimaryKey 的第一列)
           // 支持 INF_MIN, INF_MAX, STRING, INT
           
                               {
                                   "type": "int",
                                   "value": "30"
                               },
                               {
                                   "type": "int",
                                   "value": "60"
                               },
                               {
                                   "type": "int",
                                   "value": "90"
                               }
                           ]
                       },
                       "column": [
                           {
                               "name": "name"
                           },
                           {
                               "name": "mobile"
                           },
                           {
                               "name": "age"
                           },
                           {
                               "name": "salary"
                           },
                           {
                               "name": "marry"
                           }
                       ]
                   }
               },
               "writer": {
                   "name": "txtfilewriter",
                   "parameter": {}
               }
           }
       ]
   }
}
相关实践学习
消息队列+Serverless+Tablestore:实现高弹性的电商订单系统
基于消息队列以及函数计算,快速部署一个高弹性的商品订单系统,能够应对抢购场景下的高并发情况。
阿里云表格存储使用教程
表格存储(Table Store)是构建在阿里云飞天分布式系统之上的分布式NoSQL数据存储服务,根据99.99%的高可用以及11个9的数据可靠性的标准设计。表格存储通过数据分片和负载均衡技术,实现数据规模与访问并发上的无缝扩展,提供海量结构化数据的存储和实时访问。 产品详情:https://www.aliyun.com/product/ots
相关文章
|
8月前
|
索引
15. 索引是越多越好嘛? 什么样的字段需要建索引, 什么样的字段不需要 ?
是否越多索引越好?并非如此。应根据需求建索引:主键自动索引,频繁查询、关联查询、排序、查找及统计分组字段建议建索引。但表记录少,频繁增删改操作,频繁更新的字段,以及使用频率不高的查询条件则不需要建索引。
133 0
|
3月前
|
数据库 索引
联合索引和单独列有什么区别
【10月更文挑战第15天】联合索引和单独列有什么区别
137 2
|
6月前
|
算法 数据库
|
8月前
|
SQL C++
组合两个表(C++)
组合两个表(C++)
42 0
|
Oracle 关系型数据库 索引
唯一约束和唯一索引区别
唯一约束和唯一索引区别
943 0
|
索引
索引是越多越好嘛? 什么样的字段需要建索引, 什么样的字段不需要 ?
索引是越多越好嘛? 什么样的字段需要建索引, 什么样的字段不需要 ?
145 0
|
关系型数据库 MySQL 索引
Mysql索引是越多越好嘛? 什么样的字段需要建索引, 什么样的字段不需要 ?
MySQL索引的数量并不是越多越好,过多的索引可能会导致性能下降和存储空间的浪费。
357 0
|
存储 SQL 关系型数据库
【名词解释与区分】聚集索引、非聚集索引、主键索引、唯一索引、普通索引、前缀索引、单列索引、组合索引、全文索引、覆盖索引
【名词解释与区分】聚集索引、非聚集索引、主键索引、唯一索引、普通索引、前缀索引、单列索引、组合索引、全文索引、覆盖索引
523 1
【名词解释与区分】聚集索引、非聚集索引、主键索引、唯一索引、普通索引、前缀索引、单列索引、组合索引、全文索引、覆盖索引
|
关系型数据库 数据库 索引
主键和唯一索引的区别
主键和唯一索引的区别
174 0
|
SQL 算法 关系型数据库
(四)mybatisPlus中表的三种主键和列的两种映关系,使用“雪花算法“提供分布式主键使用方案
😄看本博客之前,建议先看 1️⃣Mybatis-plus(MP)中CRUD操作保姆级笔记 2️⃣mybatisPlus实现ActiveRecord(AR)操作笔记 3️⃣mybatisPlus自定义Sql语句 🍅 作者:程序员小王 🍅 程序员小王的博客:https://www.wolai.com/wnaghengjie/ahNwvAUPG2Hb1Sy7Z8waaF 🍅 扫描主页左侧二维码,加我微信 一起学习、一起进步 🍅 欢迎点赞 👍 收藏 ⭐留言 📝 🍅 如有编辑错误联系作者,如果有比较好的文章欢迎分享给我,我会取其精华去其糟粕
344 0
(四)mybatisPlus中表的三种主键和列的两种映关系,使用“雪花算法“提供分布式主键使用方案