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

Was ist der Unterschied zwischen COUNT_SCAN und IXSCAN?

Die Kurzform:COUNT_SCAN ist die effizienteste Methode, um eine Zählung zu erhalten, indem der Wert aus einem Index gelesen wird, kann jedoch nur in bestimmten Situationen durchgeführt werden. Andernfalls IXSCAN wird nach einer gewissen Filterung von Dokumenten und einer Zählung im Speicher durchgeführt.

Beim Lesen von Secondary betrifft das Lesen available wird genutzt. Diese Besorgnisstufe berücksichtigt keine verwaisten Dokumente in Sharding-Clustern, also kein SHARDING_FILTER Bühne durchgeführt wird. Dann sehen Sie COUNT_SCAN .

Wenn wir jedoch lesen verwenden, betrifft es local , müssen wir die Dokumente abrufen, um die Filterstufe SHARDING_FILTER auszuführen. In diesem Fall gibt es mehrere Stufen, um die Abfrage zu erfüllen:IXSCAN , dann FETCH dann SHARDING_FILTER .