我们如何在 MongoDB 中最好在 MongoDB-4.0 中执行下面给定的 MySQL 查询:
SELECT *,ABS(TIME_TO_SEC(TIMEDIFF(now(), datefield))/3600) as hours,
(field1*field2*field2+field3*(1/(ABS(TIME_TO_SEC(TIMEDIFF(now(), datefield))/3600))))
as time FROM temp_table
我们如何在 MongoDB 中最好在 MongoDB-4.0 中执行下面给定的 MySQL 查询:
SELECT *,ABS(TIME_TO_SEC(TIMEDIFF(now(), datefield))/3600) as hours,
(field1*field2*field2+field3*(1/(ABS(TIME_TO_SEC(TIMEDIFF(now(), datefield))/3600))))
as time FROM temp_table
我退出主节点,删除其数据并从新的主节点执行初始重新同步。但是当我在初始重新同步完成后检查数据大小时,我发现该节点中的数据大小为409G,而该节点同步其数据的其他节点中的数据大小为326G。因此,在重新同步后大小增加了 83G。
早些时候我也做过这样的初始重新同步,每次我发现重新同步后数据的大小都会减少。但在这种情况下恰恰相反。
最近我把cluster的版本从2.4.9升级到了2.6.7。这是我在版本升级后的第一次初始重新同步。大小的增加也是因为新的 MongoDB 版本。相同的数据在 2.6 版本中是否比在 2.4 版本中占用更多的存储空间?
我正在使用 MMS 来监视一个 13 节点的 MongoDB 集群(3 个配置服务器、4 个 MongoS、2 个副本集,每个副本集有 2 个成员 + 1 个仲裁器)。MMS 自安装以来工作正常,但现在它无法正确监控分片和副本集。
它仅监控 6 个节点中的 4 个节点(1 个主要节点、1 个辅助节点和 2 个仲裁节点),并在我每次手动添加它们时自动删除其他副本集(主要 + 辅助节点)。同样对于它正在监视的副本集,它将主要的辅助节点和仲裁器作为独立节点(即使它在监视窗口中为它们显示了正确的类型)。
当我检查主机映射时,我惊讶地发现它为两个主节点显示了相同的别名,并且为两个辅助节点显示了相同的别名。我想这就是它没有在监控窗口中显示这两个节点的原因。
我从主机映射窗口中手动删除了那些具有相同别名的条目,但它会在几分钟后自动更新。
为什么将两个不同的节点视为相同的节点并为它们取相同的别名?这是一个错误吗?
MMS 适用于配置服务器和 MongoS 节点。
我的彩信群是“MMS@Ork”
我的数据节点如下:
Server1 -> Replica-set1 的主节点 + Replica-set2 的从节点(2 个节点) Server2 -> Replica-set2 的主节点 + Replica-set1 的从节点(2 个节点) 两个副本集的仲裁器都在不同的机器上。我保留了一个主设备共用的端口号和两个辅助设备共用的其他端口号。
集群所有节点版本为2.4.9,MMS monitoring-agent版本为2.3.1