Supabase bietet zwei Funktionen zur Verarbeitung von Datenbankänderungen an: Realtime für Live-Updates in Apps und ETL für die Datenanalyse. Obwohl beide auf PostgreSQL-Replikation basieren, lösen sie völlig unterschiedliche Probleme. Ein Ratgeber für die richtige Wahl.
Supabase hat ein häufiges Problem adressiert: Entwickler verwechseln oft Realtime und ETL, obwohl diese Tools für gegensätzliche Aufgaben gedacht sind. Realtime sendet Datenbankänderungen sofort an Nutzer-Browser und Apps – perfekt für Live-Chats, kollaborative Dokumente oder Dashboards, die sich in Echtzeit aktualisieren. Die Technologie nutzt WebSocket-Verbindungen und prüft dabei Zugriffsbeschränkungen (Row Level Security) für jeden User einzeln.
ETL dagegen ist für zuverlässige Datenbewegung in Analytics-Plattformen wie BigQuery konzipiert. Während Realtime Live-Erlebnisse schafft und keine Garantien für vollständige Zustellung bietet – ein Nutzer, der 30 Sekunden offline ist, verpasst Änderungen – garantiert ETL die lückenlose Übertragung von Produktionsdaten ins Data Warehouse.
Die kritische Erkenntnis: Realtime ist nicht nur ein Datenbank-Change-Listener, sondern eine Echtzeit-Kommunikationsschicht für Anwendungen. Sie umfasst auch Broadcast (Nachrichten zwischen Clients) und Presence-Features (Anzeige von Online-Status). Die falsche Wahl führt zu Performance-Problemen und technischen Frustrationen.