OpenTSDB在HBase上的优化

OpenTSDB时光序列数据库架构如图所示,它的存储基于HBase,HBase具有高机能,可以线性扩大。TSD被设计为无状况节点,任何一个节点可以随时调换另一个节点进行办事,对外供给的RPC协定是HTTP/Json接口,很便利应用。TSD依附HBase解决一致性,当TSD产生写时,它必定会将写及时更新到HBase, 而产生读不射中时刻,也会大年夜HBase中将数据读回来。

OpenTSDB 存储格局如图所示,它的存储上做了很多针对时序的┞峰酌和优化。
- 最核心的点是将Tags紧缩,将tags分成两个级别,第一个级别有一个表将tags转换成 id,所有的tags id和指标的名称以及时光一路被组合成row key,row key实际上是OpenTSDB保存的行键,每一行中反复存储只有row key,row key 实际上是每一个tags都被转换成了整型,row key 相对来说比较短。
- 每个row key对应时光序列+一个时光戳,时光序列上的数据一向存在时光序列之上,理论上row key 不须要反复保存,所以一个小时的数据保存在同一行里,OpenTSDB的存储格局中每一行有3600个列,每个列对应一个小时内的点,而这一小时的时光界线、指标名称、id一路构成了row key。row key反复存储的空间就变成了按行设计的1/3600,大年夜大年夜地紧缩了row key。
- Row key的构建也经由了很好的设计,时光位于metric和tags之间,不须要预先定义数据格局,包管了灵活性;tags扫描时刻,我们经常碰到的场景是聚合,须要找到某个tags的一系列时光线,OpenTSDB场景中,在tags和搜刮前提正好知足前缀规矩时可以很好的优化,如不雅共有三个标签园区、楼、楼层构建row key,如不雅搜刮园区,扫过的数据就是我们要的数据,其余园区数据就会排出掉落,HBase常见的问题是产生热点,OpenTSDB用salt机制包管热点。
OpenTSDB的缺点

OpenTSDB也有很多缺点,具体如下:
- 时光序列的Meta Data以缓存的方法在所有的TSD节点中存在,时光序列太多的时刻内存压力很大年夜
- 以RowScan的方法做多维度萌芽,当萌芽前提不知足RowKey的前缀时,会扫过很多无用的RowKey
- 在固定的Column中保存一小时内的时光点,Qualifier存在额外的开销
- 单点聚合,轻易出现聚合机能瓶颈(cpu&memory)
- 通悠揭捉?缩算法,紧缩率依然不睬想(每个数据点大年夜约消费20字节,包含了RowKey的开销)
- HiTSDB的优化和进步
倒排索引
参考搜刮引擎的倒排索引实现,每个时光序列作为一个文档,经由过程tags的倒排索引到时光序列ID,把timestamp + 时光序列ID作为RowKey,代替由timestamp + metric ID + tag IDs拼接成的RowKey。
应用倒排索引的解决的问题和对比如下:
- 倒排索引在集群中的分片和一致性问题,解决办法:BinLog写入到HDFS,每个分片一个BinLog文件
- 分片策略的问题:按metric,按特定的tag,照样按metric+tags?
- 倒排索引加快了多维度的随便率性前提萌芽
- 倒排索引可以便利的实现metric和tagkey/tag value的输入提示
- RowScan vs mget
- 大年夜HBase攫取数据是瓶颈,包含收集吞吐率和磁盘IO
高紧缩比算法

我们一般认为比来的数据是最热的,我们欲望比来的数据可以或许完全的被内存缓存,然则时序数据量比较大年夜,是以我们须要采取高紧缩比算法:平均每个时光灯揭捉?缩到1.37字节。timestamp采取delta-delta紧缩,value采取二进制xor紧缩。
高紧缩比使得比来一段时光(若干小时)的数据可以完全缓存在内存里,萌芽的时刻避免了HBase的mget操作。解紧缩速度很快,并且降精度可以在解压的过程中同时处理,削减内存的开销。
预降精度功能
我们做了预降精度,HiTSDB会在写入之前根据很多猜测好的降精度级别将数据计算好,预降精度在逻辑上会有一些问题,包含以下几个方面:
- 数据老化 vs 预降精度
- 预降精度的级别和额外空间开销
- 预降精度和及时降精度结合
- 平均值带来的问题
- 精确计算 vs 概略计算,在预降精度数据上统计P99
- 时光窗口和数据修改
【编辑推荐】
- 流式大年夜数据及时处理技巧、平台及应用
- 分析10个垂直行业,告诉你大年夜数据应用面对哪些挑衅
- 解读:大年夜数据分析及其数据来源
- 我们分析了10个垂直行业,告诉你大年夜数据应用面对哪些挑衅
- 揭秘10个大年夜数据神话
推荐阅读
引言:本文不推荐什么大年夜社群!不推荐课程!只是简明地描述一下我是若何转行到数据分析岗的。先说说自身情况吧: 16年本科卒业,专业财务治理 。在故乡,一个二线城市,做管帐做了一年多>>>详细阅读
本文标题:HiTSDB时序数据库技术架构和产品解析
地址:http://www.17bianji.com/lsqh/37157.html
1/2 1

网友点评
精彩导读
科技快报
品牌展示