-
Notifications
You must be signed in to change notification settings - Fork 0
Externer Webservice
Google Firebase ist ein Webservice, der auf die Speicherung von diversen Daten und Umsetzung von verteilten Systemen ausgelegt ist.
Firebase hat eine Vielzahl von Sub-Systemen. Firestore ist zb. besonders auf REST-Konforme Speicherung von JSON ähnlichen Objekten ausgelegt, was sich Perfekt für unser System anbietet.
Allgemein ist Firebase sehr gut für die Einbindung in node.js ausgelegt und bietet standardmäßig viele Funktionen.
Wir nutzen die Database von Firestore. Mit dieser wollen wir unsere Events, User, Wishes und Shoppinglists speichern und für alle User verfügbar machen. Wichtig bei der Strukturierung der Daten ist, dass wir uns dabei an die Vorgaben von REST halten.
Da Firestore noch in der Beta Phase ist, wurden Data-Querys noch nicht vollkommen implementiert. Es gibt nicht die Möglichkeit eine "Gib mir alle Documents, wo ein spezifisches Objekt in einer Sub-Collection ist"-Suche auszuführen.
bsp Domain: events/(id)/users/(id) "Gib mir alle Events wo "Sebastian" ein User ist."
Um dies zu umgehen mussten wir auf der Dokument Ebene "events/(id)" zusätzlich noch alle Users des Events speichern. Also wird nun bei jedem POST auf "events/(id)/users/" zusätzlich "events/(id)" verändert. Dies ist leider nicht REST Konform, aber die einzige Möglichkeit eine Query auf die User des Events zu implementieren.