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.
Vonatkozik a következőkre:
MongoDB virtuális mag
Az $changeStream
aggregációs szakasz megnyitja a változásstream-kurzort, amely valós időben követi nyomon az adatváltozásokat. Ez a szakasz lehetővé teszi az alkalmazások számára, hogy reagáljanak a gyűjteményben előforduló beszúrási, frissítési, törlési és egyéb műveletekre.
Szemantika
A szakasz szintaxisa a $changeStream
következő:
{
$changeStream: {
allChangesForCluster: <boolean>,
fullDocument: <string>,
fullDocumentBeforeChange: <string>,
resumeAfter: <ResumeToken>,
startAfter: <ResumeToken>,
startAtOperationTime: <Timestamp>,
showExpandedEvents: <boolean>
}
}
Paraméterek
Leírás | |
---|---|
allChangesForCluster |
Opcionális. Logikai. Ha igaz, a teljes fürt módosításait adja vissza. Az alapértelmezett érték false. |
fullDocument |
Opcionális. Szöveg. Meghatározza, hogy mit kell visszatérni a frissítési műveletekhez. Beállítások: 'default', 'updateLookup', 'whenAvailable', 'kötelező'. |
fullDocumentBeforeChange |
Opcionális. Szöveg. A dokumentum előtagját adja vissza. Beállítások: "off", "whenAvailable", "required". |
resumeAfter |
Opcionális. A jogkivonat folytatása a stream egy adott esemény utáni módosításának folytatásához. |
startAfter |
Opcionális. A jogkivonat folytatása a stream egy adott esemény utáni módosításához. |
startAtOperationTime |
Opcionális. időbélyeg egy adott időpontról történő változásfolyam indításához. |
showExpandedEvents |
Opcionális. Logikai. Adjon meg egy másik változásstream-eseményt is. Az alapértelmezett érték false. |
példa
Nézzük meg az adatkészlet valós idejű változások figyelésére való használatát stores
.
1. példa: Az áruházak gyűjteményének összes módosításának figyelése
A példa bemutatja, hogyan állíthat be változásstreamet az áruházgyűjtemény összes változásának figyeléséhez.
db.stores.aggregate([
{
$changeStream: {
fullDocument: "updateLookup"
}
}
])
Egy tárdokumentum frissítésekor a változásfolyam a teljes dokumentummal visszaadja a változáseseményt.
{
"_id": { "_data": "AeARBpQ/AAAA" },
"operationType": "update",
"fullDocument": {
"_id": "905d1939-e03a-413e-a9c4-221f74055aac",
"name": "Trey Research | Home Office Depot - Lake Freeda",
"sales": {
"revenue": 42500
},
"company": "Trey Research",
"lastUpdated": ISODate("2024-06-16T10:30:00.000Z")
},
"ns": {
"db": "StoreData",
"coll": "stores"
},
"documentKey": {
"_id": "905d1939-e03a-413e-a9c4-221f74055aac"
}
}
Kapcsolódó tartalom
- A MongoDB-ről az Azure Cosmos DB for MongoDB-re (vCore) való migrálás lehetőségeinek áttekintése
- További információ a MongoDB-vel való funkciókompatibilitásról