目前正在使用PHP和MongoDB开发一些工程软件来存储数据。
我计划进行一些计算,我在一个集合上执行许多计算。基本上,它包含数据,我想对数据执行计算,更新字段,计算下一个字段等。
但是,我的开发人员遇到了麻烦。
他正在做我认为简单的操作。
> Upload a CSV into a collection.
> Create secondary collection by transforming all of the values
> of the first collection according to user input of a value into a formula.
与Excel的“复制值”类似,然后选择“粘贴特殊乘法”。 基本上创建一个新的集合作为第一个产品 集合。
开发商报告称,这使他的PC速度降低了 这让我感到担心的是,如果mongo执行这个简单的(对我而言)任务很慢,那么我的高级应用程序就无法启动。
是否有正确的方法可以在nosql集合上执行数千次计算?数据库不是意味着这种工作量吗?那么我是否必须将数据拉入数组,执行计算然后在模拟完成后插入新值? 我已经读过java比PHP有更好的性能,我应该将代码引向java用于工程应用程序吗?
答案 0 :(得分:0)
在得出任何结论之前,有几个问题需要检查
1)什么是操作系统? for Windows在运行查询时检查任务管理器是否有mongod进程详细信息;对于linux,使用top命令检查进程详细信息
2)数据量是多少;我的意思是以兆字节/字节为单位的大小
3)如果你有2 GB RAM,那么你应该考虑将数据量分成小于1 GB并开始处理
4)如果数据量适合RAM大小,那么必须有磁盘速度/ RPM
5)如果数据处理仅适用于localhost,那么您可以使用其他具有更高配置的笔记本电脑处理数据以查看结果
6)您使用的MongoDB版本是什么?尝试升级到最新的
7)如果数据量不是很大,你可以考虑免费的MongoDB集群Atlas(https://cloud.mongodb.com/user#/atlas/login)
8)可以在AWS免费套餐中创建一个集群几个小时,以便了解结果
我希望你回避尝试。最后但并非最不重要的是你的要求。