Taobh amuigh de innéacsanna simplí ar réimse amháin, soláthraíonn MongoDB straitéisí innéacsúcháin chasta — compound index ordering (ESR rule), covered queries, partial/sparse indexes, TTL indexes, agus níos mó — a théann i bhfeidhm go mór ar fheidhmíochta an iarratas. Is ríthábhachtach a bheith ina máistir orthu chun MongoDB a bharrfheidhmiú ar scála.
An riail ESR do innéacsanna cumaisc
For a compound index supporting a query with Equality, Sort, and Range conditions,
order the fields: EQUALITY → SORT → RANGE (the ESR rule).
// query: status = "active" (equality), sort by date (sort), age > 21 (range)
db.users.createIndex({ status: 1, date: 1, age: 1 }); // E, S, R order
db.users.find({ status: "active", age: { $gt: 21 } }).sort({ date: 1 });
// → the index serves equality match, sorted output, and range scan efficiently
Tógann an ESR rule (Equality, Sort, Range field order) innéacsanna cumaisc a fhóireann do scagaire, sort, agus codanna raon an iarratas go feidhmiúil — teicníc bharrfheidhmithe ríthábhachtach.
Covered queries — a fhóireann go hiomlán ó an innéacs
// if a query's filter AND returned fields are ALL in the index, no document fetch needed
db.users.createIndex({ email: 1, name: 1 });
db.users.find({ email: "[email protected]" }, { name: 1, _id: 0 }); // COVERED
// → answered entirely from the index (very fast — never touches the documents)
Freagair covered query (gach scagaire agus réimeann réimse san innéacs) ó an innéacs amháin — an-tapa, ní léann sé doiciméid riamh.
Cineálacha innéacs speisialta
PARTIAL → index only documents matching a filter (smaller, targeted)
createIndex({ email: 1 }, { partialFilterExpression: { active: true } })
SPARSE → index only documents that HAVE the field (skip missing)
TTL → auto-delete documents after a time (sessions, logs, temp data)
createIndex({ createdAt: 1 }, { expireAfterSeconds: 3600 })
UNIQUE → enforce uniqueness (can combine with partial)
MULTIKEY → automatic for array fields (indexes each element)
WILDCARD → index unknown/arbitrary field names ({ "$**": 1 })
HASHED → for hashed sharding / even distribution
Innéacsanna a anailísiú agus a chothabháil
✓ explain("executionStats") → verify index use (IXSCAN), check docs examined vs returned
✓ $indexStats → find UNUSED indexes (remove them — they slow writes for no benefit)
✓ Atlas Performance Advisor → suggests indexes based on actual query patterns
✓ Balance: enough indexes for reads, not so many that writes suffer
Cén fáth a bhíonn sé tábhachtach
Is eolas luachmhar ag leibhéal sinsear iad straitéisí innéacsúcháin chasta le haghaidh feidhmíochta MongoDB a bharrfheidhmiú ar scála, ag feidhmiú ar innéacsanna bunúsacha.
Cé go gcabhraíonn innéacsanna bunúsacha, is é a bhíonn i gcian ó dheas ar mongó ar chéim an chéird an tsainmhíniúchán ar straitéisí chasta ann.
Is teicníc ríthábhachtach í an ESR rule (réimsí innéacs cumaisc a ordú mar Equality, Sort, Range) chun innéacsanna cumaisc a thógáil a fhóireann do scagaire an iarratas, sort, agus coinníollacha raoin go feidhmiúil — barrachan feidhmithe ó thúr nuair nach bhfuil a fhios ag an tógálaí an riail — covered queries (áit a bhfuil gach scagaire agus réimsí a thugtar ar ais san innéacs, ionas go ndéantar an t-iarratas ó an innéacs amháin gan a bheith ag léamh doiciméad) a bhíonn luath ar chéachta ar chéachta trom-léite — teicníc chumasach.
A bheith eolach ar na cineálacha innéacs speisialta — partial (innéacsanna ach doiciméid a oireann, níos beag agus dírithe), sparse (ach doiciméid leis an réimse), TTL (sonraí féin-imeall, idéalach do sheisiúin/loganna/sonraí sealadacha), wildcard (i gcomhair ainmneacha réimse anaithnide), multikey (uathoibríoch do dhraithí), agus unique — a ligeann duit an t-innéacs ceart a roghnú do gach cás, ag barrachan stórála agus costas scríobh agus ag fóireann ar iarratas.
Is ríthábhachtach an disciplín anailíse agus chothabháil (ag baint úsáide as explain() chun úsáid innéacs agus éifeachtúlacht a dheimhniú, $indexStats chun innéacsanna neamhúsáidte a aimsiú agus a bhaint) chun innéacsúchán a choinneáil éifeachtach thar an am.
Ó tharla gur é innéacsúchán an t-ábhar feidhmíochta MongoDB is tábhachtaí, agus ó tharla go straitéisí chasta (ESR cumaisc ordú, covered queries, cineálacha innéacs speisialta, agus cothabháil) atá ag barrachan sé ar scála, is eolas luachmhar ag leibhéal sinsear a bhíonn i gceist do MongoDB ard-fheidhmíochta a thuiscint straitéisí innéacsúcháin chasta, ábhar a thaispeáint saineolas domhain faobarrachan, agus ceann áit a bhíonn teicnící ar nós an riail ESR agus covered queries a chur gnótha ar bhuannachtaí suntasach.
