摘要: 日志服务提供Shard自动分裂功能,实时监控Shard流量,自动进行shard分裂以应对流量上涨,解决流量估算不准、随时可能上涨又难以及时处理的问题,保障数据完整。
日志服务的数据模型中,使用Shard来控制Logstore的写入、读取吞吐能力,每个Shard提供5MB/sec写入、10MB/sec读取,通常情况下,shard越多,Logstore的吞吐越大。
在创建Logstore时,可以根据实际数据量来进行预先设置shard的个数,同时,日志服务提供shard的split和merge功能,在日志量超过现有shard处理能力的情况,用户可分裂shard提升Logstore的处理能力。
![11d2b931955dab4615590009210b7bf676b7ac98.png](https://static.studygolang.com/180625/f49354690785b7b0ae26fd7536127f47.png)
但是,你有没有为这样情况而烦恼 :
事先无法准确预估数据量,预设多少个shard才合适呢
数据量随时会突增,人不一定能够及时处理,长时间超quota无法写入而导致丢失的风险
针对以上情况,日志服务提供了Shard自动分裂功能,后台实时监控每个shard的流量,如果发现一个shard的写入在一段时间内,有连续出现超过shard处理能力的情况,会触发shard的自动分裂。触发条件:
数据量超出Shard的服务能力,且持续5分钟。
Logstore中readwrite状态的Shard数目未超过设定的最大shard总数。
![9edda5f0b93c726752c98a7acd27a0d9eb061b32.png](https://static.studygolang.com/180625/acdf168304a2b15baf8b7f3460948b65.png)
开启Logstore的自动分裂功能也非常简单,只要修改一下Logstore属性:
![b62e0548280279bb1bd5a5eefd5b24d9e00d2e3b.png](https://static.studygolang.com/180625/78d1fa1305c3dfaeb9e60696759dcd0c.png)
![312C7E55-96B4-4377-BDAA-4715FB344FBF.png](https://static.studygolang.com/180625/4edb7f68e5a729dc7cf067e8ffd69499.png)
开启Shard自动分裂后, 你的Logstore将直接拥有自动弹性扩容的能力,解决流量估算不准、随时可能上涨又难以及时处理的问题,保障数据完整。
原文链接:http://click.aliyun.com/m/1000003432/
有疑问加站长微信联系(非本文作者)