名词解释
名词 | 解释 |
---|---|
Project | 项目(Project)是DataHub数据的基本组织单元,下面包含多个Topic。值得注意的是,DataHub的项目空间与MaxCompute的项目空间是相互独立的。用户在MaxCompute中创建的项目不能复用于DataHub,需要独立创建。 |
Topic | Topic是 DataHub 订阅和发布的最小单位,用户可以用Topic来表示一类或者一种流数据。 更多详情请参考:Project及Topic数量限制。 |
Topic Lifecycle | 表示一个Topic中写入数据在系统中可以保存的最长时间,以天为单位,最小值为1,最大值为7 |
Shard | Shard表示对一个Topic进行数据传输的并发通道,每个Shard会有对应的ID。每个Shard会有多种状态 : |
Shard Hash Key Range | 每个Shard都有的属性,包括开始和结束的Key范围,写入数据的时候具有相同Key的数据会落到同一个Shard上。对一个Shard的Key范围是左闭右开。更多详情请参考:根据HashKey写入数据。 |
Shard Merge | Shard合并,可以把相邻的Key Range连接的Shard merge成一个Shard。更多详情请参考:Shard扩容缩容。 |
Shard Split | Shard分裂,可以把一个Shard分裂成Shard Key Range相连接的两个Shard |
Record | 用户数据和 DataHub 端交互的基本单位 |
RecordType | Topic的数据类型,目前支持Tuple与Blob两种类型。Tuple类型的Topic支持类似于数据库的记录的数据,每条记录包含多个列。Blob类型的Topic仅支持写入一块二进制数据。 |
数据类型介绍
Tuple类型下只支持写入数据是有格式的数据,支持以下几种数据类型
类型 | 含义 | 值域 |
---|---|---|
BIGINT | 8字节有符号整型 | -9223372036854775807 ~ 9223372036854775807 |
DOUBLE | 8字节双精度浮点数 | -1.0 _10^308 ~ 1.0 _10^308 |
BOOLEAN | 布尔类型 | True/False或true/false或0/1 |
TIMESTAMP | 时间戳类型 | 表示到微秒的时间戳类型 |
STRING | 字符串,只支持UTF-8编码 | 单个STRING列最长允许2MB |
TINYINT | 单字节整型 | -128 ~127 |
SMALLINT | 双字节整型 | -32768 ~ 32767 |
INTEGER | 4字节整型 | -2147483648 ~ 2147483647 |
FLOAT | 4字节单精度浮点数 | -3.40292347_10^38 ~ 3.40292347_10^38 |
DECIMAL | 数字型 | - 10^38 +1 ~ 10^38 - 1 |
DataHub 中的 TINYINT , SMALLINT , INTEGER , FLOAT 类型从 java sdk 2.16.1-public 开始支持。
Blob模式下支持写入一块二进制数据作为一个Record,数据将会以BASE64编码传输。
Shard状态说明
状态 | 说明 |
---|---|
Opening | Topic刚创建,所有shard会处于Opening状态直至准备完成。不可读写。 |
Active | Shard通道打开后,状态会置为Active,此时表示Shard正常可读写。 |
Closing | Shard进行了Split/Merge操作,后台正在关闭该通道。该状态Shard不可读写。 |
Closed | Shard在Split/Merge完成后,会变为Closed态,此时Shard为只读状态。 |
异常描述
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 | 未知错误或内部服务异常或系统处于升级中. |