MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Sperrt MongoDB MapReduce die Datenbank?

Einfache Antwort? Manchmal ...

Es hängt stark davon ab, wie Sie Map/Reduce verwenden ... aber meiner Erfahrung nach war es nie ein Problem.

Es gibt nicht viele Informationen dazu, aber es wird deutlich im docs das tut manchmal sperren, aber es "ermöglicht einen erheblichen gleichzeitigen Betrieb."

Es gibt ein paar Fragen in der Mongodb-Benutzergruppe fragen dazu ... die beste Antwort, die ich gesehen habe offiziell ist das ... "in 1.4 gibt es nach, ist aber nicht so schön, wie es sein sollte, in 1.5 ist es viel freundlicher zu anderen Anfragen."

Das bedeutet nicht, dass es überhaupt nicht blockiert , aber im Vergleich zu db.eval(), das den ganzer Mongod-Prozess ... es ist Ihre beste Wahl.

Allerdings gibt es in 1.7.2 und höher jetzt ein nolock Option für db.eval() ...