Eingebettete Dokumente in MongoDB filtern

Ich habe Probleme damit, eingebettete Dokumente in MongoDB zu filtern, und beginne zu überlegen, ob ich eine relationale Assoziation verwenden soll, aber das fühlt sich im Dokumentenspeicherkontext falsch an.

Ich halte mich an ein typisches Blog- / Kommentarsystem und habe eine Sammlung vonblogs, und jedeblog hat vielecomments. Die Kommentare werden als eingebettete Dokumente im Blog-Dokument gespeichert.

Es ist sehr einfach, meine zu filternblogs Sammlung, aber um meine zu filterncomments eingebettet in jedenblogIch muss sie alle in den Speicher laden (alle in ein Ruby-Array abrufen) und jeden Kommentar durchlaufen und diejenigen zurückgeben, die einem bestimmten Kriterium entsprechen.

Meine Bemühungen, eingebettete Dokumente mithilfe der Punktnotation zu filtern, schlagen fehl und alle Unterdokumente werden wiederhergestellt.

Gibt es eine bessere Möglichkeit, MongoDB dazu zu bringen, diese für mich zu filtern, oder sollte ich mich mit relationalen Assoziationen abfinden? (Das Zurückziehen aller eingebetteten Dokumente und das manuelle Filtern wird auf lange Sicht zu intensiv sein.)

Antworten auf die Frage(1)

Ihre Antwort auf die Frage