2 Punkte von GN⁺ 2023-12-17 | 1 Kommentare | Auf WhatsApp teilen

Einführung von Fly Postgres von Supabase und Fly.io

  • Supabase und Fly.io haben gemeinsam Fly Postgres vorgestellt, einen verwalteten Postgres-Service.
  • Die Datenbank kann auf der Edge-Computing-Plattform von Fly.io an jedem von mehr als 37 Standorten gestartet werden.
  • Er bietet alle Funktionen, die man von einer verwalteten Supabase-Datenbank erwartet: eine voll ausgestattete Postgres-Datenbank mit mehr als 40 Erweiterungen, Unterstützung für pgvector für Vektor-/KI-Workloads, Supavisor (Postgres Connection Pooler), tägliche Backups und Point-in-Time-Recovery, Branching, Observability, Migrationen, ein Dashboard zur Datenbankverwaltung sowie automatisch generierte Daten-APIs (REST und GraphQL).

Erwartungsmanagement

  • Der Service wird schrittweise eingeführt.
  • Der Aufbau einer Integration zwischen den Unternehmen erfordert viel Arbeit, etwa bei Abrechnung, Support-Übergaben und der Schulung von Supabase-Mitarbeitern.
  • Das Team arbeitet bereits mit ersten Testern und muss noch einige Bugs beheben.
  • Wer beim Testen helfen möchte, kann sich auf die Warteliste setzen lassen; im nächsten Monat sollen weitere Tester aufgenommen werden.

Supabase + Fly = SupaFly?

  • Das Team freut sich darauf, was diese Partnerschaft 2024 für die weltweite Bereitstellung von Postgres bedeutet.
  • Firecracker-VMs eröffnen einige spannende Ideen für Postgres.
  • Die Integration mit Fly stellt Compute-Ressourcen bereit, die sich direkt neben der Datenbank einfach aufbauen lassen.

Verwaltetes vs. nicht verwaltetes Postgres

  • Das aktuelle Postgres-Angebot von Fly ist nicht verwaltet.
  • Bei nicht verwalteten Angeboten müssen Nutzer Dinge wie Skalierung, Point-in-Time-Recovery, Replikation und große Versions-Upgrades selbst übernehmen.
  • Verwaltetes Postgres nimmt ihnen diese Aufgaben ab, sodass sie sich auf das Bauen konzentrieren können.
  • Der verwaltete Service wird mit der Fly Extensions API aufgebaut; Tester können mit dem Befehl fly extensions eine Postgres-Datenbank starten.

Interne Struktur

Arbeiten mit Fly Machines

  • Fly Postgres wird auf Fly Machines aufgebaut.
  • Machines sind leichtgewichtige Firecracker-VMs.
  • Die Machines API bietet erhebliche Kontrolle über den Lebenszyklus einer Anwendung.
  • fly-admin ist ein Typescript-Wrapper, der die Interaktion mit der Fly API vereinfacht.
  • Supabase bündelt einige zusätzliche Services mit Postgres, sodass ein einzelnes Docker-Image an die Fly Machines API übergeben werden kann.

Wechsel zu Multi-Cloud

  • Mit diesem Launch wird Supabase offiziell zu einer Multi-Cloud-Plattform.
  • Um den Wechsel zu Multi-Cloud zu vereinfachen, vermeidet Supabase die Nutzung verwalteter AWS-Services.
  • Fly Machines bieten zum Beispiel eine einfache Möglichkeit, VMs zu pausieren, wenn sie nicht genutzt werden.
  • Andererseits müssen einige AWS-native Funktionen umgangen werden, die Fly nicht bereitstellt.

Aufbau einer Fly Extension

  • Fly verfolgt einen hervorragenden Ansatz, um die Plattform zu erweitern.
  • Dafür wurden der API einige zusätzliche Routen hinzugefügt, um Nutzer und Projekte zu provisionieren.

Herausforderungen

  • Gemeinsam mit dem Fly-Team arbeitet man an einigen Herausforderungen.

Unterstützung für Netzwerkeinschränkungen

  • Die Funktion für Netzwerkeinschränkungen hängt davon ab, dass Container die korrekte IP-Adresse des Clients erhalten.
  • In der aktuellen Konfiguration sehen Container die Proxy-IP von Fly.

Backups innerhalb von Fly

  • Fly-Projekte sichern derzeit nach AWS S3, da Fly bislang keinen von Fly verwalteten Blob-Speicher anbietet.

Erste Schritte

  • Man kann sich für die Preview registrieren, warten, bis die Organisation auf die Allowlist gesetzt wird, und dann mit dem Quickstart in der Dokumentation loslegen.
  • Fly-Organisationen erhalten ein kostenloses Projekt.
  • Details zur Abrechnung werden noch ausgearbeitet, aber die Preise sollen sich voraussichtlich nicht stark von den aktuellen unterscheiden.

Meinung von GN⁺

  • Das Wichtigste an diesem Artikel ist, dass die Zusammenarbeit von Supabase und Fly.io einen weltweit verteilten verwalteten Postgres-Service ermöglicht. Das dürfte Entwicklern helfen, weniger Zeit für Datenbankbetrieb aufzuwenden und sich stärker auf die Entwicklung von Anwendungen zu konzentrieren.
  • Der Artikel ist interessant, weil er aktuelle Trends im Cloud Computing und Datenbankmanagement widerspiegelt und mit der Kombination aus Multi-Cloud-Strategie und Edge Computing einen neuen technischen Ansatz vorstellt.
  • Besonders für Entwickler, die datenintensive Anwendungen auf der Fly-Plattform bereitstellen, dürfte der Service geringere Latenzen und bessere Performance bringen.

1 Kommentare

 
GN⁺ 2023-12-17
Hacker-News-Kommentare
  • Ankündigung des Supabase-CEO:

    • Derzeit ist der Postgres-Dienst von Fly nicht verwaltet, und Supabase arbeitet mit Fly zusammen, um einen Managed Service bereitzustellen.
    • Supabase arbeitet daran, die High-Availability-(HA)-Funktionen gemeinsam mit Testern zu veröffentlichen, aber es gibt noch keinen festen Zeitplan.
    • Der CEO ist bereit, Fragen oder Kommentare zu beantworten.
  • Verwirrung über Supabase:

    • Ein Nutzer hat sich Supabase angesehen, war aber verwirrt darüber, wie man eine grundlegende REST API implementiert.
    • Supabase generiert automatisch APIs für die Interaktion mit erstellten Tabellen, aber es ist nicht klar, wo die Business-Logik liegt.
    • Der Nutzer hat sich Edge Functions angesehen, hatte aber Schwierigkeiten zu verstehen, ob sie für Business-Logik gedacht sind, da die Beispiele das nicht klar erklären.
  • Erfahrungen mit Fly.io:

    • Ein anderer Nutzer baut Booklet auf Fly.io auf und möchte die App mit Fly Postgres verteilen.
    • Es gibt Probleme mit dem Fly-Postgres-Setup, insbesondere damit, dass Verbindungen wegen eines 30-minütigen Connection-Timeouts von HAProxy getrennt werden.
    • Es wird gefragt, ob dieselbe HAProxy-Konfiguration auch für den neuen Postgres-Dienst gelten wird.
  • Entdeckung in der Fly.io-Dokumentation:

    • Ein weiterer Nutzer hat in der Fly.io-Dokumentation entdeckt, dass „Postgres von Fly“ und „Postgres von Supabase“ nebeneinander stehen, und ist überrascht, das zuvor nicht auf Hacker News gesehen zu haben.
    • Es fehlt ein Vergleich dazu, welche Option man nutzen sollte, wenn man auf Fly eine App deployen und Postgres verwenden möchte, was verwirrend ist.
    • Der Nutzer meint, dass er auf Fly LiteFS Distributed SQLite verwenden würde, wenn er ein DBMS auf Fly nutzen wollte, und dass der Unterschied zwischen Fly und Supabase bei Postgres wohl der zwischen einem Managed Service und einem nicht verwalteten Dienst ist.
  • Netzwerkbeschränkungen bei Supabase:

    • Ein Nutzer mag die Einstellungen für Netzwerkbeschränkungen bei Supabase nicht und hatte Schwierigkeiten, die IP einer Fly-App gegenüber Supabase offenzulegen und dann einzuschränken.
    • Er hält es für eine gute Änderung, dass Supabase tatsächlich innerhalb des Fly-Netzwerks existiert.
  • Skalierungsprobleme von Supabase:

    • Es gibt Gerüchte, dass Supabase Probleme bei der Skalierung über Prototyp-Projekte hinaus hat, und ein Kommentar fragt nach Meinungen von Nutzern mit echter Produktionserfahrung.
  • Unterschied zwischen Fly Volumes und netzwerkgebundenem Storage:

    • Fly Machines haben keinen netzwerkgebundenen Storage, und die Daten in Fly Volumes werden als vergänglich betrachtet.
    • Ein Nutzer, der nicht mit AWS oder netzwerkgebundenem Storage vertraut ist, bittet um eine Erklärung der Unterschiede zwischen Fly Volumes und netzwerkgebundenem Storage anderer Anbieter.
    • Wenn man ein Fly Volume erstellt, kann es auf einen anderen Server in derselben Region verschoben werden, weshalb der Nutzer es technisch gesehen für netzwerkgebundenen Storage hält.
  • Erwartungen an die Zusammenarbeit von Supabase und Fly.io:

    • Ein Nutzer betreibt derzeit eine große Datenbank auf Fly und sucht nach Managed Postgres.
    • Er betreibt einen reinen Elixir-Shop und findet, dass diese Zusammenarbeit genau zum richtigen Zeitpunkt kommt.
  • Reaktion des Fly.io-Teams:

    • Joshua vom Fly.io-Team sagt, dass er bereit ist, Fragen zu dieser Integration zu beantworten.
  • Kommentar zur „SupaFly“-Anspielung:

    • Es gibt einen Kommentar, der für Menschen, die die „SupaFly“-Anspielung nicht verstehen, einen lustigen Video-Link teilt.