Riak-TS 用例与其他 tsdb

Riak-TS UseCase vs other tsdb

这是一个概念验证,我很好奇使用 Riak-TS 对其进行评估的经验。

我正在开发一个移动应用程序,其中部分用途是显示 graphs/charts 各种数据。数据与商业打印机、传递给它们的作业和预处理信息有关,并具有各种指标的快照,但目前仅实时可用,因此我正在查看用于分析历史数据的 tsdb 实现。

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

hour/shift/day/week/etc打印的作业数量 hour/shift/day/etc 的墨水用量 与特定时间跨度内的 sum/average/series 数据快照相关的各种其他数据。

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

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

在 Python、Node.js、HTTP 接口更易于使用、速度更快、功能更多等方面是否存在显着差异?我曾使用过一些云服务,其中一些接口具有 missing/buggy/slow 功能,并且想计划使用最好的一个。如果那是 Java、C# 或 Go,我也会对这些信息感兴趣。

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

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

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

关于 Erlang。你需要知道 0 Erlang 才能使用 TS。能做的事,不用学Erlang。

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

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

您应该尝试其他数据库?你在这个问题的标题中提到了 TSDB。我的经验是TSDB更难起床运行。 InfluxDB 可能是目前最流行的时间序列数据库。我没有亲身体验,但我猜它的受欢迎程度相当不错。

你的用例听起来很有趣(我以前在印刷行业工作)所以如果你有任何其他问题我可以帮助你让我知道。