Warum Postgres die richtige Wahl ist – und was du bei DSGVO beachten solltest
Supabase hat sich in den letzten Jahren als ernstzunehmende Backend-Lösung etabliert. Für viele Entwickler ist es die erste Wahl, wenn sie schnell ein Backend brauchen – ohne sich mit Infrastruktur herumzuschlagen.
Was Supabase besonders macht: Es ist kein proprietäres System, sondern baut auf bewährten Open-Source-Komponenten auf. Im Kern steht PostgreSQL – und das ist kein Zufall.
Wie Supabase technisch aufgestellt ist
Supabase ist kein monolithisches Produkt, sondern ein Zusammenschluss von spezialisierten Tools:
| Komponente | Technologie | Funktion |
|---|---|---|
| Datenbank | PostgreSQL | Relationale Datenbank mit JSON-Support |
| Auth | GoTrue | Authentifizierung (OAuth, Magic Links, SSO) |
| Storage | S3-kompatibel | Dateispeicherung mit Policies |
| Realtime | Elixir/Phoenix | WebSocket-basierte Live-Updates |
| Edge Functions | Deno | Serverless Functions am Edge |
| API | PostgREST | Automatische REST-API aus Schema |
Das Besondere: Jede Komponente ist Open Source und kann unabhängig betrieben werden. Du bist nicht an Supabase gebunden – du kannst jederzeit zu einer selbst gehosteten Lösung wechseln.
Warum Postgres die richtige Wahl ist
Die Entscheidung für PostgreSQL als Fundament ist strategisch klug. Postgres hat sich in den letzten Jahren zur vielseitigsten Datenbank entwickelt.
Postgres vs. MariaDB/MySQL
| Aspekt | PostgreSQL | MariaDB/MySQL |
|---|---|---|
| JSON-Support | Native JSONB mit Indizes | JSON vorhanden, weniger performant |
| Erweiterungen | Riesiges Ökosystem (PostGIS, pgvector, …) | Begrenzt |
| Standards-Konformität | Sehr hoch | Historische Abweichungen |
| Komplexe Queries | CTEs, Window Functions, Lateral Joins | Eingeschränkter |
| Lizenz | Permissive (PostgreSQL License) | GPL (MariaDB) / Proprietär (MySQL) |
Für neue Projekte gibt es kaum noch Gründe, MySQL/MariaDB zu wählen. Postgres kann alles, was MySQL kann – und mehr.
Postgres vs. MongoDB
Die Frage “Relational oder Dokument?” stellt sich bei Postgres anders als früher. Mit dem nativen JSONB-Datentyp kann Postgres beides: strukturierte Tabellen mit Relationen und flexible JSON-Dokumente in derselben Datenbank. Du kannst relationale Queries auf JSON-Felder ausführen, Indizes auf JSON-Pfade setzen und das Beste aus beiden Welten kombinieren.
Das Postgres-Ökosystem
Was Postgres besonders macht, sind die Erweiterungen:
- pgvector – Vektor-Suche für KI/Embeddings
- PostGIS – Geodaten und räumliche Abfragen
- pg_cron – Scheduled Jobs in der Datenbank
- pgaudit – Audit-Logging für Compliance
- TimescaleDB – Zeitreihen-Daten
Supabase aktiviert viele dieser Erweiterungen mit einem Klick. Du bekommst eine Postgres-Datenbank, die weit mehr kann als nur Tabellen speichern.
Warum Managed Services sinnvoll sind
Bevor wir über Supabase im Detail sprechen: Warum überhaupt ein Managed Service?
Wartungsaufwand bei Self-Hosting:
- Security-Patches zeitnah einspielen
- Backup-Strategie implementieren und testen
- Monitoring und Alerting aufsetzen
- Hochverfügbarkeit konfigurieren (Replicas, Failover)
- Skalierung bei Lastspitzen
Das bindet Ressourcen – Zeit und Know-how, das in die Produktentwicklung fließen könnte. Bei einem Managed Service übernimmt der Anbieter diese Aufgaben. Du zahlst für Infrastruktur, die jemand anderes betreibt.
Die Kostenrechnung: Ein Managed Service erscheint teurer als eine eigene VM. Aber: Rechne die Arbeitszeit für Administration, die Opportunitätskosten durch gebundene Entwicklerkapazität und das Risiko von Ausfällen oder Sicherheitslücken mit ein. Für kleine bis mittlere Teams ist Managed fast immer wirtschaftlicher.
Was Supabase richtig macht
Supabase verfolgt von Anfang an ein modernes Konzept, das ständig erweitert wird. Für mich als Entwickler ist es eine gute Basis – ein schneller Start, der ausreichend gut skaliert.
Developer Experience
Der TypeScript-Client generiert Typen direkt aus dem Datenbankschema. Queries sind typisiert, Fehler fallen zur Compile-Zeit auf. Die API ist konsistent, die Dokumentation exzellent. Das Dashboard ist übersichtlich und ermöglicht schnelle Iterationen.
Row Level Security (RLS)
Sicherheit auf Datenbankebene – nicht in der Anwendung. Statt Zugriffslogik in jeder API-Route zu implementieren, definierst du Policies direkt in Postgres. Selbst wenn jemand die API umgeht – die Datenbank schützt sich selbst.
Realtime out of the box
Live-Updates ohne zusätzliche Infrastruktur. Keine WebSocket-Server aufsetzen, keine Redis-Pub/Sub konfigurieren. Das ist besonders für Dashboards, Chats oder kollaborative Anwendungen wertvoll.
Migrations und Branching
Database Branching – ähnlich wie Git-Branches für Code. Für jede Preview-Umgebung eine eigene Datenbank-Kopie. Die CLI ermöglicht versionierte Migrations. Das macht Datenbankänderungen reproduzierbar und teamfähig.
Sicherheit: Was du konfigurieren musst
Supabase liefert eine gute Basis, aber Sicherheit ist kein Selbstläufer. Diese Punkte solltest du aktiv angehen:
Row Level Security aktivieren
RLS ist standardmäßig deaktiviert. Ohne RLS sind deine Tabellen über die API für jeden mit dem anon-Key lesbar. Das ist die häufigste Sicherheitslücke bei Supabase-Projekten.
API-Keys schützen
- Der
anon-Key gehört in den Client, ist aber öffentlich sichtbar - Der
service_role-Key gehört niemals in den Client – nur serverseitig verwenden - Keys regelmäßig rotieren, besonders nach Mitarbeiterwechseln
Policies sorgfältig testen
Eine falsch konfigurierte Policy kann entweder zu viel oder zu wenig freigeben. Teste mit verschiedenen Nutzerrollen, ob die Zugriffe wie erwartet funktionieren.
Authentifizierung absichern
- E-Mail-Bestätigung aktivieren (verhindert Spam-Registrierungen)
- Rate Limiting für Auth-Endpoints prüfen
- Bei OAuth: Redirect-URLs einschränken
Datenbank-Zugriff einschränken
- Direkter Postgres-Zugriff nur aus vertrauenswürdigen Netzwerken
- Nicht benötigte Erweiterungen deaktivieren
- Audit-Logging aktivieren (Pro-Plan)
Der DSGVO-Aspekt
Jetzt zum Thema, das für EU-Projekte relevant ist: Supabase Cloud läuft auf AWS. Du kannst eine EU-Region wählen (Frankfurt), aber der Anbieter sitzt in den USA.
Was das bedeutet
- CLOUD Act: US-Behörden können theoretisch Zugriff verlangen
- Drittlandtransfer: Trotz EU-Region ist es ein US-Dienst
- SCCs: Standard Contractual Clauses sind vorhanden
Mit AVV (Auftragsverarbeitungsvertrag) und den SCCs ist das juristisch “vertretbar” – aber nicht risikofrei.
Wenn DSGVO ein Showstopper ist
Für Projekte mit strengen Compliance-Anforderungen gibt es Alternativen:
Managed Postgres (EU):
- IONOS Managed PostgreSQL (deutsch)
- Aiven (finnisch, EU-Hosting)
- Hetzner Cloud + Managed Postgres
Self-Hosted Supabase:
- Alle Komponenten sind Open Source
- Du betreibst auf eigener Infrastruktur
- Mehr Aufwand, volle Kontrolle
Eigener Stack:
- Managed Postgres + Keycloak/Zitadel (Auth) + MinIO (Storage)
- Mehr Architektur-Aufwand, aber DSGVO-sauber
Einordnung: Supabase in der Evaluierung
Dies ist keine pauschale Empfehlung für Supabase. In einer sauberen Evaluierung sollte ein europäischer Dienst Vorrang haben – das reduziert rechtliche Komplexität und Drittland-Diskussionen.
Aber: Es ist nicht von der Hand zu weisen, dass Supabase von Anfang an ein durchdachtes, modernes Konzept verfolgt. Die Kombination aus Postgres, Auth, Storage und Realtime in einem integrierten Paket ist einzigartig. Die Developer Experience ist hervorragend, die Dokumentation vorbildlich.
Supabase ist ein guter Start, wenn:
- Du schnell ein funktionierendes Backend brauchst
- Das Projekt später skalieren soll, aber noch nicht muss
- Du die Sicherheitskonfiguration verstehst und umsetzt
- Die DSGVO-Situation für dein Projekt vertretbar ist
Europäische Alternativen prüfen, wenn:
- DSGVO-Compliance oberste Priorität hat
- Du für öffentliche Stellen oder im Gesundheitswesen arbeitest
- Kunden explizit EU-Only-Hosting fordern
- Du langfristige Planungssicherheit brauchst
Self-Hosting erwägen, wenn:
- Du bereits Kubernetes-Know-how im Team hast
- Volle Kontrolle über die Infrastruktur wichtig ist
- Das Budget für Managed Services nicht vorhanden ist
- Du nur Postgres ohne die anderen Features brauchst
Die gute Nachricht: Da Supabase auf Open-Source-Komponenten basiert, ist ein späterer Wechsel möglich. Du bist nicht eingesperrt.
Weiterführend
- Supabase Dokumentation
- Supabase DPA (für DSGVO-Dokumentation)
- PostgreSQL vs. MySQL – Offizielle Postgres-Seite
- pgvector für KI-Projekte