ved*_*ang 28 monitoring metrics graphite opentsdb
据我所知,以下是主要区别:
我想就使用哪种工具来存储指标做出明智的决定,我是否错过了这两个系统中的任何其他差异?它们的性能/可扩展性如何?
额外问题:还有其他时间序列系统我应该看看吗?
小智 48
免责声明:我写了OpenTSDB。
我想说Graphite的最大优势似乎是卓越的绘图能力。它提供了更多的图形类型和功能。 Graphite 的部署复杂性也可能稍低一些,因为它不是分布式系统,因此移动部件较少。
另一方面,OpenTSDB能够存储大量的细粒度数据点。这是以部署HBase为代价的,老实说这没什么大不了的。如果您想以>>10k 新数据点/秒的速度将实时数据精确到秒,那么 OpenTSDB 将非常适合您。
关于我们目前在 StumbleUpon 的规模的一些信息(这些数字通常每 2-3 个月翻一番):
小智 20
用户界面
Graphite有一些出色的绘图工具可用。默认的 Web 界面很丑陋(虽然功能强大),但是您拥有大量出色的图形和仪表板选项。
几个例子:



另一方面,OpenTSDB仍处于 gnuplot 阶段:

设置
在实践中,Graphite 实际上比 HBase + OpenTSDB 更难设置。OpenTSDB 有一个全面的文档和几个简单的步骤。这些是安装 Graphite 的命令,如果您从源代码构建,事情会变得更加棘手。
演出
与预先确定数据库大小的 Graphite 不同,OpenTSDB 不会随着时间的推移损坏数据。
真的。此外,Graphite 使用类似于 RRD 的文件格式,实际上这意味着单个数据点将占用与完整时间序列一样多的磁盘空间,因为该空间是预先分配的。这也意味着绘制一个空的时间间隔将花费与那里有数据一样多的时间(另一种存储引擎Ceres正在开发中,但我还没有尝试过)。
正如 tsuna 所说,OpenTSDB 将让你存储更多的数据点,利用 Hadoop 的 HDFS 的力量。另一方面,Graphite 的架构在 AOSA 章节中有详细介绍,它是一种更临时的解决方案。
OpenTSDB 可以每秒存储指标,而不是具有分钟间隔的石墨。
不,两者都可以登录到第二个。