sql >> Databáze >  >> NoSQL >> MongoDB

Jak naslouchat změnám v kolekci MongoDB?

To, na co myslíte, zní hodně jako spouštěče. MongoDB nemá žádnou podporu pro spouštěče, nicméně někteří lidé si pomocí některých triků „vyválcovali své vlastní“. Klíčem je zde oplog.

Když spustíte MongoDB v sadě replik, všechny akce MongoDB se zaprotokolují do provozního protokolu (známého jako oplog). Oplog je v podstatě jen průběžný seznam úprav provedených v datech. Repliky Nastaví funkci tak, že naslouchá změnám v tomto oplogu a poté je aplikuje lokálně.

Zní vám to povědomě?

Nemohu zde popsat celý proces, je to několik stránek dokumentace, ale nástroje, které potřebujete, jsou k dispozici.

Nejprve pár zápisů na oplog- Stručný popis- Rozložení local kolekce (která obsahuje oplog)

Budete také chtít využít přehledné kurzory. Ty vám poskytnou způsob, jak naslouchat změnám namísto dotazování na ně. Všimněte si, že replikace používá tabulkové kurzory, takže toto je podporovaná funkce.



  1. Rozsah založené stránkování mongodb

  2. Mongoose přepíše dokument spíše než pole `$set`

  3. Jak se dotazovat z Mongoose pre hook v aplikaci Node.js / Express?

  4. Mongodb dotaz konkrétní měsíc|rok ne datum