MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Replizieren Sie nur Dokumente mit {'public':true} in MongoDB

MongoDB (Stand 2.0.6) unterstützt keine gefilterte Replikation.

Es ist jedoch möglich, dass Sie Ihr eigenes Schema implementieren, um Datensätze basierend auf einem anpassbarer Cursor von MongoDBs oplog . Die lokale oplog.rs Capped Collection ist derselbe Mechanismus, der verwendet wird, um Änderungen an Mitglieder eines Replikatsatzes weiterzuleiten, und enthält Details für Einfügungen, Löschungen und Aktualisierungen.

Ein Beispiel für diese Technik finden Sie in diesem Blogbeitrag: Trigger für MongoDB erstellen .

In Ihrem Fall wären die Aktionen etwa so:

  • Datensatz von Sammlung A nach B kopieren, wenn er eingefügt oder mit public:true aktualisiert wird
  • Datensatz aus Sammlung B entfernen, wenn er in Sammlung A mit public:false gelöscht oder aktualisiert wird