sql >> Databasteknik >  >> NoSQL >> MongoDB

Vad är skillnaden mellan COUNT_SCAN och IXSCAN?

Den korta:COUNT_SCAN är det mest effektiva sättet att få en räkning genom att läsa värdet från ett index, men kan bara utföras i vissa situationer. Annars IXSCAN utförs efter viss filtrering av dokument och en räkning i minnet.

Vid läsning från sekundärt läsproblem available är använd. Den här angelägenhetsnivån tar inte hänsyn till föräldralösa dokument i delade kluster, och därför ingen SHARDING_FILTER scen kommer att framföras. Det är då du ser COUNT_SCAN .

Men om vi använder read concern local måste vi hämta dokumenten för att kunna utföra filtersteget SHARDING_FILTER. I det här fallet finns det flera steg för att uppfylla frågan:IXSCAN , sedan FETCH sedan SHARDING_FILTER .




  1. Mongo-fråga som använder mongoid i rails-appen som orsakar markör-timeout-fel

  2. Återinförs ur funktion, eller sorterar du konstigt?

  3. Tillkännager ClusterControl 1.7.1:Stöd för PostgreSQL 11 och MongoDB 4.0, förbättrad övervakning

  4. Filtrera arrayelement med $regex