名词解释
名词 | 解释 |
Project |
|
Topic | Topic是DataHub订阅和发布的最小单位,可以用Topic来表示一类或者一种流数据。 |
Topic Lifecycle | Topic Lifecycle表示在一个Topic中写入的数据能够在系统中保存的最长时间,以天为单位,最小值为1,最大值为7。 |
Shard | Shard表示在一个Topic数据传输的并发通道,每个Shard有对应的ID。 Shard启用以后会占用一定的服务端资源,建议按需申请Shard数量。 Shard的不同状态详情参考Shard状态说明。 |
Shard Hash Key Range | Shard属性,表示哈希键值范围,Key范围是左闭右开。 写入数据的时候具有相同Key的数据会落到同一个Shard上。 |
Shard Merge | Shard合并,可以把相邻的Key 范围的Shard合并成一个Shard。 更多详情参考Shard操作。 |
Shard Split | Shard分裂,可以把一个Shard分裂成Shard Key Range相邻的两个Shard。 |
Record | 用户数据和DataHub端交互的基本单位。 |
RecordType | Topic数据类型,目前支持Tuple与Blob两种类型。
数据类型支持详情参考数据类型介绍。 |
数据类型介绍
Tuple类型支持写入以下几种数据类型的数据:
DataHub 中的 TINYINT、SMALLINT、INTEGER、FLOAT类型从java sdk 2.16.1-public开始支持。
类型
含义
值域
BIGINT
8字节有符号整型
-9223372036854775807 ~ 9223372036854775807DOUBLE
8字节双精度浮点数
-1.0 _10^308 ~ 1.0 _10^308BOOLEAN
布尔类型
True/true/1
False/false/0
TIMESTAMP
时间戳类型
表示到微秒的时间戳类型。
STRING
字符串,只支持UTF-8编码
单个STRING列最长允许2MB。
TINYINT
单字节整型
-128 ~ 127SMALLINT
双字节整型
-32768 ~ 32767INTEGER
4字节整型
-2147483648 ~ 2147483647FLOAT
4字节单精度浮点数
-3.40292347_10^38 ~ 3.40292347_10^38DECIMAL
数字型
- 10^38 +1 ~ 10^38 - 1Blob模式下支持写入一块二进制数据作为一个Record,数据将会以BASE64编码传输。
Shard状态说明
状态 | 说明 | 读写支持 |
Opening | Topic刚创建,所有shard会处于Opening状态直至准备完成。 | 不可读写。 |
Active | Shard通道打开后,状态会置为Active。 | 正常读写。 |
Closing | Shard进行了Split/Merge操作,后台正在关闭该通道。 | 不可读写。 |
Closed | Shard在Split/Merge完成后,会变为Closed态。 | 只读。 |
异常描述
ErrorCode | HttpCode | 含义 |
InvalidUriSpec | 400 | 请求的Uri非法 |
InvalidParameter | 400 | 参数错误,详细内容请看返回的ErrorMessga |
Unauthorized | 401 | 签名错误 |
NoPermission | 403 | 账号权限不足 |
InvalidSchema | 400 | Schema格式错误 |
InvalidCursor | 400 | 无效或过期的cursor |
NoSuchProject | 404 | 请求的Project不存在 |
NoSuchTopic | 404 | 请求的Topic不存在 |
NoSuchShard | 404 | 请求的ShardID不存在 |
ProjectAlreadyExist | 400 | Project已存在 |
TopicAlreadyExist | 400 | Topic已存在 |
InvalidShardOperation | 405 | 非法Shard操作,如Shard已经Closed后继续写入. |
LimitExceeded | 400 | 请求参数超出限制,如Shard总数超过512个. |
InternalServerError | 500 | 未知错误或内部服务异常或系统处于升级中. |