我使用MongoDB的.NET驱动程序。 我的问题是:
什么是优选的,为什么:
使用MongoDB服务器上的javascript处理数据
或
将数据加载到客户端并使用驱动程序方法完成所有工作?
答案 0 :(得分:5)
如果可能的话,您应该避免使用JavaScript在mongodb服务器上处理数据。原因是JavaScript引擎是单线程的。这意味着一次只能有一个线程运行JavaScript引擎。如您所想,如果您有多个客户端连接到mongodb,这将极大地影响性能 - 所有这些请求都将被序列化。
答案 1 :(得分:4)
你不应该陷入尝试使用“存储过程”的陷阱,就像许多使用JS函数的人认为的那样。我很好地解释了为什么你不应该在查询中使用JS:is procedure exist in mongodb。
真的在MongoDB中进行数据处理有三种选择:
所有这些方法都更优先,更好。至于哪一个更适合你的情况:这一切都取决于你想要完成的事情。
当然,从2.2(刚刚发布)开始,您获得了聚合框架,该框架绕过JS引擎并为您提供更大的灵活性。