OpenTSDB 存储容量估算 以及 建表方式
来源:互联网 发布:淘宝售后率怎么算 编辑:程序博客网 时间:2024/06/06 09:09
容量估算
根据 Rowkey以及表设计,进行存储容量估算的方式,大致如下:
rowkey: metric_name + ts + tag_name + tag_value …..
确定metric_name的个数: m
确定tag_name: tag1 tag2 tag3 tag4….tagN
确定tag_value的个数: t1 t2 t3 t4 ….tn
(假设每个metric的tag数量和类型一样,实际也应该保证)
在一个小时内rowkey的个数计算公式: m * t1 * t2 * t3 ..... * tn = num
假设一个小时内,每秒都在写数据,则在一个小时内存储占用空间为:
num * ( ( 3+4+6*n + (1+2+8) ) * 3600) // 最终单位 byte从前到后的含义是:num: rowkey的个数,也是行数3: metric_name编码长度4: timestamp 编码长度6: tagK, tagV加起来编码长度n: tagK,tagV KV对的个数1: hbase family name 默认 "t", 认为一个byte存储2: 列名的 编码长度8: metric的value值编码长度(1,2,4,8),取最大的估算3600: 在精度为秒的假设下,有3600秒
假设:
200 个metric
3 个tagKV对, 每个tagV的取值个数分别为: 1000 20 5
每10秒采集一次数据
则一个小时内占用的最大存储空间为:
200 * 1000 * 20 * 5 * ((3+4+6*5+1+2+8) * 360) = 321 GB
这个是假设每个机器都是全量采集的估值,实际中可能没这么大。
PS:以上是我根据对OpenTSDB的了解做出的一个大概的估算方式,可能有不对的地方,如果发现有错误的地方,后续会进行纠正。
建表方式
需要根据实际的metric等信息确定,后续补上(主要是hbase Region预分区和是否在rowkey上加salt)。
0 0
- OpenTSDB 存储容量估算 以及 建表方式
- MySQL的表存储容量
- 存储容量
- 挂载方式扩展vm虚拟机存储容量
- Opentsdb表结构设计
- opentsdb
- 关于存储容量的单位(以及英文写法)
- SQL查询库、表存储容量大小
- eq_range_index_dive_limit决定COST估算方式
- 第十天:估算活动持续时间,类比估算,参数估算,自下而上估算,三点估算解析表
- 初探功能点估算以及功能点估算工具
- opentsdb-2.0.1 RPM包的安装以及测试
- java封装openTsDb连接以及查询,插入数据
- 估算表的长度
- 估算
- 估算
- 估算
- 估算
- POJ 2452 Sticks Problem(ST+二分查找)
- Android ScrollView嵌套ScrollView滚动的问题解决办法
- 自动优化mycncart和opencart所有数据库
- React Native windows Android环境搭建
- MyEclipse将控制台输出信息保存到文件
- OpenTSDB 存储容量估算 以及 建表方式
- UIScrollView的常用属性和方法(自己总结)
- php文件系统——目录
- FreaMarker入门教程,环境集成到使用实例
- Java 类的继承与构造函数
- 项目文件包含 ToolsVersion="12.0" 设置,而此版本的 MSBuild 不支持该工具版本
- C#集成ActiveX控件
- window.location.href无法跳转的解决办法
- hdoj--5606--tree(并查集)