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
相关文章
|
6月前
|
索引
15. 索引是越多越好嘛? 什么样的字段需要建索引, 什么样的字段不需要 ?
是否越多索引越好?并非如此。应根据需求建索引:主键自动索引,频繁查询、关联查询、排序、查找及统计分组字段建议建索引。但表记录少,频繁增删改操作,频繁更新的字段,以及使用频率不高的查询条件则不需要建索引。
119 0
|
1月前
|
数据库 索引
联合索引和单独列有什么区别
【10月更文挑战第15天】联合索引和单独列有什么区别
56 2
|
1月前
|
数据库 索引
联合索引和单独列索引哪个更好
【10月更文挑战第15天】联合索引和单独列索引哪个更好
54 2
|
4月前
|
算法 数据库
|
5月前
|
SQL 关系型数据库 MySQL
MySQL数据库——索引(6)-索引使用(覆盖索引与回表查询,前缀索引,单列索引与联合索引 )、索引设计原则、索引总结
MySQL数据库——索引(6)-索引使用(覆盖索引与回表查询,前缀索引,单列索引与联合索引 )、索引设计原则、索引总结
108 1
|
6月前
|
SQL C++
组合两个表(C++)
组合两个表(C++)
34 0
|
存储 数据库 索引
一般会在什么样字段上添加什么样的索引
在数据库中,索引是一种用于加快数据检索速度的数据结构。通过在特定的字段上创建索引,可以大幅度提高查询效率。然而,不是所有的字段都适合创建索引,因为索引的创建和维护也会带来额外的开销。在选择字段创建索引时,需要综合考虑数据的查询频率、数据的更新频率以及索引的存储和性能开销等因素。下面将介绍一些常见的字段类型和索引的选择策略。
195 1
|
Oracle 关系型数据库 索引
唯一约束和唯一索引区别
唯一约束和唯一索引区别
917 0
|
索引
索引是越多越好嘛? 什么样的字段需要建索引, 什么样的字段不需要 ?
索引是越多越好嘛? 什么样的字段需要建索引, 什么样的字段不需要 ?
132 0
|
关系型数据库 MySQL 索引
Mysql索引是越多越好嘛? 什么样的字段需要建索引, 什么样的字段不需要 ?
MySQL索引的数量并不是越多越好,过多的索引可能会导致性能下降和存储空间的浪费。
324 0