0

我有一个分布式监控系统,它收集监控数据,如 CPU 利用率、数据库性能指标、网络性能到后端存储。其他应用程序需要使用这些数据,例如实时计算(用于资源调度程序)、用于系统监控(用于使用监控仪表板的系统管理员)、用于历史分析(用于操作和分析程序以对未来容量规划的资源使用模式进行建模)和业务系统活动分析)。

数据集大小约为 12 亿个条目,存储时间为 9 个月。(全部采用类似 OpenTSDB 的格式)

以前我使用 Elasticsearch 集群作为后端数据存储解决方案,并决定寻找一个更好的解决方案。

我正在查看 Couchbase 或 VoltDB 集群,但仍处于调查阶段,因此需要来自这里的具有类似经验的一些输入。

主要问题如下:

  1. 哪种后端存储解决方案适合我的场景?(Couchbase 或 VoltDB)?

  2. 我必须重写我的数据聚合器代码(在 golang 中)。Couchbase 提供了一个很好的 golang SDK 客户端,但 VoltDB 的 go 驱动程序仅处于社区级别,功能有限。那么有没有更好的实现来与 golang 中的 voltdb 进行通信?

  3. 有什么建议或最佳实践吗?

4

2 回答 2

1

这里没有太多的使用模式,但听起来像是人们使用 VoltDB 的那种应用程序。

至于 Golang 客户端,如果它特别缺少你需要的东西,我们希望得到一些反馈,告诉它如何使它更合适。您还可以使用任何语言的 HTTP/JSON 查询接口,包括 Golang。更多信息在这里: http ://docs.voltdb.com/UsingVoltDB/ProgLangJson.php

于 2015-09-04T13:31:23.850 回答
-1

如果您想利用现有模型,请查看Axibase 时间序列数据库。它同时支持 tcollector 网络和 http 协议。规则引擎和可视化是内置的。

ATSD 基于 HBase 的事实可能是资产或负债,具体取决于您之前的经验:)

tcollector 集成的 URL: http ://axibase.com/products/axibase-time-series-database/writing-data/tcollector/

披露:我为开发 ATSD 的公司工作。

于 2015-09-10T21:38:01.710 回答