2

这是一个概念证明,我很好奇使用 Riak-TS 评估它的经验。

我正在开发一个移动应用程序,其中部分用途是显示各种数据的图形/图表。这些数据与商业打印机、传递给它们的作业以及预处理信息有关,并具有各种指标的快照,但目前只能实时获得,因此我正在研究用于分析历史数据的 tsdb 实现。

我会使用 Riak-TS 以大约 30-60 秒的间隔收集时间序列数据,并使用数据显示:

按小时/班次/天/周/等打印的作业数量 按小时/班次/天/等的墨水使用量 与特定时间跨度的数据的总和/平均/系列快照相关的各种其他数据。

在决定是否为此使用 Riak-TS 以及要考虑的潜在缺点时,我应该考虑哪些事情?

使用 Riak 进行此案例的基本概念证明设置需要什么级别的 Erlang。我对 Python 和 JavaScript 非常满意,看起来 Riak 可以使用这些语言,但我可能没有时间学习 Erlang 来设置这个项目。

在 Python、Node.js、HTTP 接口更易于使用、更快、更多功能等方面是否存在明显差异?我曾使用过一些云服务,其中一些界面缺少/错误/缓慢的功能,并希望计划使用最好的。如果那是 Java、C# 或 Go,我也会对这些信息感兴趣。

我应该探索 Riak-TS 之外的哪些其他开源实现?

4

1 回答 1

2

乍一看,这听起来像是 Riak TS 的一个很好的潜在用例。使用 TS 与其他东西相比有什么缺点吗?也许,我要注意的一件事是你没有说你将处理多少数据。Riak TS 从一开始就设计为集群,出于高可用性的原因,建议您从 5 节点集群开始。您可以从单个节点开始并根据需要进行横向扩展,但这样做会失去 TS 平台的一些优势。

我还要指出,TS 不久前刚刚开源,可能还没有其竞争对手的所有功能(但我为 Basho 工作的团队以及我为 Basho 工作的充分披露,正在致力于频繁发布以添加新功能)。

到 Erlang。您需要了解 0 Erlang 才能使用 TS。对于您需要做的事情,无需学习 Erlang。

Riak TS 的 Python 客户端非常棒。我已经广泛使用了它和 Java 客户端。我猜其他客户端也很好,因为它们是由同一组工程师编写和维护的,而客户端软件是他们的专长。

我建议在 HTTP API 上使用客户端(无论是 Python、Node、Java 等),因为它可能对您来说更容易并且性能会更好,因为客户端使用协议缓冲区和/或 TTB 与 HTTP。

您应该尝试其他数据库吗?您在此问题的标题中提到了 TSDB。我的经验是 TSDB 更难启动和运行。InfluxDB 可能是目前最流行的时间序列特定数据库。我没有个人经验,但我猜测它的受欢迎程度非常好。

您的用例听起来很有趣(我曾经在印刷行业工作)所以如果您有任何其他问题我可以提供帮助,请告诉我。

于 2016-07-21T11:54:46.443 回答