Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A háttérindexelés olyan technika, amellyel az adatbázisrendszer indexelési műveleteket hajthat végre egy gyűjteményen anélkül, hogy más lekérdezéseket vagy frissítéseket blokkolhat. Az Azure DocumentDB elfogadja a háttérindexelési kérést, és aszinkron módon végrehajtja a háttérben.
Amikor kisebb szinteket vagy magas I/O-val rendelkező munkaterheléseket használ, határozza meg előre az üres gyűjtemények indexeit, és kerülje a háttérindexelést.
Important
Hozzon létre egyedi indexeket egy üres gyűjteményen, mert az egyedi indexek az előtérben épülnek fel, és blokkolják az olvasásokat és írásokat. Definiáljon indexeket lekérdezési predikátumok alapján, mielőtt adatokat szúr be, miközben a gyűjtemény még üres. Ez csökkenti az erőforrás-versengést a nagy méretű, olvasási-írási forgalommal rendelkező gyűjteményekben.
Indexépítés figyelése
A parancs currentOp()használatával megismerhetjük az index buildelésének előrehaladását.
db.currentOp("db_name":"<db_name>", "collection_name":"<collection_name>")
-
db_namenem kötelező paraméter. -
collection_namenem kötelező paraméter.
// Output for reviewing build status
{
inprog: [
{
shard: 'defaultShard',
active: true,
type: 'op',
opid: '10000003049:1701252500485346',
op_prefix: Long("10000003049"),
currentOpTime: ISODate("2024-06-24T10:08:20.000Z"),
secs_running: Long("2"),
command: {createIndexes: '' },
op: 'command',
waitingForLock: true
},
{
shard: 'defaultShard',
active: true,
type: 'op',
opid: '10000003050:1701252500499914',
op_prefix: Long("10000003050"),
currentOpTime: ISODate("2024-06-24T10:08:20.000Z"),
secs_running: Long("2"),
command: {
createIndexes: 'BRInventory', },
indexes: [
{
v:2,
key: {vendorItemId: 1, vendorId: 1, itemType: 1},
name: 'compound_idx'
}
],
'$db': 'test'
op: 'command',
waitingForLock: false,
progress: {
blocks_done: Long("12616"),
blocks_done: Long("1276873"),
documents_d: Long("0"),
documents_to: Long("0")
},
msg: 'Building index.Progress 0.0098803875. Waiting on op_prefix: 10000000000.'
}
],
ok: 1
}
Limitations
- A háttérben nem hozhatók létre egyedi indexek. A legjobb, ha üres gyűjteményben hozza létre őket, majd betölti az adatokat.
- A háttérindexelés egymás után történik egyetlen gyűjteményen belül. A különböző gyűjteményekre épülő egyidejű indexek száma azonban konfigurálható (alapértelmezett: 2).