有奖捉虫:办公协同&微信生态&物联网文档专题 HOT

分区定义

主题分区(Partition)是日志服务(Cloud Log Service,CLS)的最小读写单元,一个日志主题可以包含多个分区,分区数量决定了单个日志主题的最大数据读写能力。单个分区的读写能力如下表:
频控
单个主题分区读请求限制:200QPS。超限返回状态码429,提示错误 SpeedQuotaExceed。
单个主题分区写请求限制:500QPS。超限返回状态码429,提示错误 SpeedQuotaExceed。
说明:
此处500QPS不代表500条日志。 一次请求中的 pb 包可以包含多条日志批量上传。

流控
单个主题分区读流量无限制,建议不超过5MB/s。
单个主题分区压缩后写流量限制:5MB/s。超限返回状态码429,提示错误 SpeedQuotaExceed。
假设某个日志主题有10个读写态分区,则该日志主题最大可承载的压缩后日志写流量为5MB/s * 10 = 50MB/s。单个日志主题最大可拥有50个分区,对应的最大压缩后日志写流量为5MB/s * 50 = 250MB/s
说明:
实际使用过程中建议开启 自动分裂 功能,CLS 将根据实际数据量自动扩增主题分区数量,无需手动管理分区。

分区属性

主题分区包含以下三个属性,这些属性主要由日志服务内部使用。
分区 ID:每个分区在同一个日志主题下有唯一 ID,该 ID 在创建或操作后由系统确定。
分区范围:每个分区均有区间范围,每个区间范围均为左闭右开区间。一个日志主题的有效范围为 MD5 的取值范围为[00000000000000000000000000000000,ffffffffffffffffffffffffffffffff),所有读写态的主题分区会按左闭右开的原则切分整个取值范围,上报数据时会随机写入日志主题的某个分区。
分区状态:创建主题分区时,所有分区状态均为读写态,合并和分裂操作会将原分区状态改变为只读态。
读写态:表示当前分区可以进行读写操作。
只读态:表示当前分区仅允许进行读操作,不可再写入数据。
可通过如下方式手动管理分区,操作步骤详见 操作指南
合并分区:将两个范围相邻的两个读写态分区合并成一个分区。合并完成之后,原来的两个分区状态将会变成只读态,新合成的分区为读写态,新分区的范围会覆盖原来两个分区范围。
分裂分区:将一个读写态的分区分裂成两个小范围分区,分裂分区时需指定一个分裂点的 MD5 值(该值必须大于起止位置,小于终止位置)。分裂成功后,原来的分区状态将会变成只读态,新分裂的分区为读写态,且新分区的范围会覆盖原来分区的范围。