我有两个控制器访问分布式数据库。我正在从一个设备接收一些数据到控制器,并将它们存储在cassandra数据库中。我用docker安装cassandra节点1在控制器1上,节点2在控制器2上。我想知道,当我在节点1接收到数据时,是否有可能测量更新节点2所需的时间。我想用它画一个图表。有人能告诉我怎么测量吗。谢谢
kcugc4gi1#
cassandra通过nodetool gossipinfo命令和cqlsh跟踪提供了所有这些内部信息的工具和见解。在您提议的场景中,我推断您使用的是2的复制因子,并且您对在所有节点中写入信息所需的确切时间感兴趣,您可以测量将一致性级别设置为all时进行写入所需的时间,并将其与使用1的一致性级别的类似写入进行比较。时间的差异将是从一个节点到另一个节点的传播。最后,如果您对cassandra中查询的性能感兴趣,那么有几个工具可以增强跟踪功能,在我们的团队中,我们使用zipkin取得了很好的效果。
1条答案
按热度按时间kcugc4gi1#
cassandra通过nodetool gossipinfo命令和cqlsh跟踪提供了所有这些内部信息的工具和见解。
在您提议的场景中,我推断您使用的是2的复制因子,并且您对在所有节点中写入信息所需的确切时间感兴趣,您可以测量将一致性级别设置为all时进行写入所需的时间,并将其与使用1的一致性级别的类似写入进行比较。时间的差异将是从一个节点到另一个节点的传播。
最后,如果您对cassandra中查询的性能感兴趣,那么有几个工具可以增强跟踪功能,在我们的团队中,我们使用zipkin取得了很好的效果。