我有一个运行在Python中的Web服务器。他正在从某些应用程序中获取一些数据,并且需要将这些数据存储在MongoDB中。我的MongoDB已分片。 现在,我希望我的Web服务器知道碎片MongoDB有多少。此刻,他从cfg文件中读取了此信息。MongoDb中有一个名为printshardingstatus的声明,您可以在其中查看所有分片。因此,我尝试从我的Pythonserver调用此语句。但是似乎不可能。我在Pymongo API中找不到这样的函数。

所以我的问题是,是否有机会在Python中运行MongoDB语句,以便在MongoDB中直接传递和执行它?

有帮助吗?

解决方案

没有用于printShardingStatus的服务器命令-它只是一个mongo(javascript)shell帮助器函数。助手是一些针对 配置数据库,然后进行一些分组和格式化以使事情看起来更好。

如果您想查看JavaScript外壳中的工作方式, 只需从函数中删除括号(“()”),它就会打印出 javascript代码。

这是javascript shell中的代码。 通用标签

其他提示

您是否尝试过 pymongo mongoengine ?然后也许给作者发信息...

您可以像普通集合一样简单地获取配置数据库并在碎片集合上执行find()。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top