我想看看我的分片键有多好,并且我想监控对于我执行的每100个并行BatchInsert,MongoS对每个分片进行了多少调用。我可能可以在应用层做到这一点,但是有没有一种方法可以在monogS级别记录呢?
我正在使用monogoStat,但我想知道monogS的详细信息。此外,mongoS日志并没有从我收集到的信息中反映出太多信息
发布于 2012-03-15 13:48:21
你有趋势图或其他形式的监控软件吗? 10gen实际上提供了一个名为MMS的免费软件。
如果您正在监视分片上的活动,则应该与从mongos发出的调用相关联。这里唯一需要注意的是,活动不是按集合或按数据库划分的。因此,如果您在同一实例上对多个DB进行分片,这可能无法工作。
否则,只需查看分片上的活动,就可以清楚地告诉您发生了什么。
发布于 2012-03-15 19:57:08
如果您使用mongostat --discover,您可以看到每个分片的流量以及通过mongostat正在使用的mongos的总流量。这应该会让你实时全面了解你的负载分布。
请注意,您的分片键总是“有效的”,因为MongoDB在您的分片键中间值上进行了拆分,而不是简单地将数据一分为二,因此,如果您的分片键具有足够高的基数,您的数据将始终是完美平衡的(假设平衡器有时间适当地平衡这些块)。
发布于 2012-03-15 22:56:23
除了彩信和mongostat之外,您还可以通过outlined here的printShardingStatus()函数查看分片集群的整体状态和健康状况
https://stackoverflow.com/questions/9711196
复制相似问题