Entwerfen eines Firebase-basierten skalierbaren Feed-Modells

Frage:

Wie erstelle ich ein soziales Netzwerk "feed" mit Firebase als Backend, das skaliert?

Mögliche Antworten

"MVP" -Lösung ist das Entwerfen einesfeeds root child, eins für jeden Benutzer, und füge jeden neuen Beitrag des verfolgten Benutzers in die Feeds aller Follower ein.

users
  user1
    name: bob
  user2
    name: alice
    follows: 
      user1: true

posts
  post1
     author: user1
     text: 'Hi there'

feeds
  user2
    post1: true

Dies funktioniert gut und wird imFirefeed project. Aber es lässt sich nicht gut skalieren: Wenn Katy Perry etwas posten will, muss ihr Handy an Millionen von Feeds schreiben.

Hence die Lösung berichtet indiese SO Frage, um diesen Vorgang an einen serverbasierten Prozess zu delegieren.

Mein Problem ist, dass Firebase eine "No-Backend" -Lösung ist, und dies ist der Hauptgrund, warum ich sie verwende. Daher möchte ich sicherstellen, dass es absolut keine Chance gibt, diese Funktion ohne einen Server zu implementieren.

Was ist, wenn dasfeeds child ist im obigen Schema entfernt?

Dann mach das:

baseRef.child('posts')
       .orderBy('author')
       .whereIn(baseRef.child('users/user2/follows').keys())

Unglücklicherweise,whereIn existiert weder in der Firebase-API noch in Unterabfragen:

Ist eine andere Modellstruktur ohne Server möglich?

Vielen Dan