9 Punkte von GN⁺ 2023-09-21 | 2 Kommentare | Auf WhatsApp teilen
  • Eine Plattform zur Entwicklung von reaktiven (Reactive), Echtzeit- (Realtime) und Local-First-Apps auf Basis von Postgres in der Cloud und lokalem SQLite
  • Local-First
    • Der App-Code kommuniziert direkt mit einer eingebetteten SQLite-Datenbank, während die Daten im Hintergrund per Active-Active-Replikation dynamisch mit dem Cloud-Postgres synchronisiert werden
    • Dadurch werden Multi-User-Zusammenarbeit und Conflict-Free-Verhalten ermöglicht
  • Mit ElectricSQL kann lokales Postgres unverändert weiterverwendet werden
  • Entwickelt mit dem Ziel, Apps durch lokalen Datenzugriff sofort reaktionsfähig und konsistent schnell zu machen
  • Bietet betriebliche Einfachheit und reduziert durch die Standardisierung auf ein einfaches, skalierbares Replikationsprotokoll die Vielfalt und den Arbeitsaufwand von Backend-Services
  • Kompatibel mit bestehenden Postgres-basierten Systemen und arbeitet mit vorhandenen Datenmodellen zusammen

2 Kommentare

 
sixmen 2023-09-21

Ich habe einmal einen Client-zentrierten Ansatz für eine App gewählt, weil ich bevorzuge, dass sie auch ohne Server funktioniert. Später wurde dann doch eine Server-Anbindung nötig, sodass ich auf Active-Active-Synchronisierung umgestellt habe.

Beim ersten Service habe ich das Konzept von OT eingeführt und es manuell implementiert. Beim zweiten habe ich nach einer externen Lösung gesucht und mich schließlich für Couchbase entschieden (damals habe ich auch PouchDB und Realm geprüft) ...

Mein Fazit: Wenn es sich irgendwie vermeiden lässt, sollte man es lieber nicht machen. Das Datenmanagement gerät außer Kontrolle (auch wenn das teilweise daran liegt, dass Couchbase DB etwas speziell ist).

 
GN⁺ 2023-09-21
Hacker-News-Kommentare
  • ElectricSQL ist eine neue Technologie, die Active-Active-Synchronisierung zwischen Postgres und SQLite für Local-First-Web- und App-Anwendungen ermöglicht.
  • Die Technologie wurde für ihren einzigartigen Ansatz gelobt, die Verbindung zwischen clientseitigem SQLite, einer Open-Source-CRDT-/Synchronisierungsschicht und Postgres zu verwalten.
  • ElectricSQL ermöglicht es, dass eine Postgres-Datenbank als zentrale Single Source of Truth für alle Daten und Benutzerkonten fungiert, während die privaten Inhalte jedes Nutzers in seiner eigenen SQLite-Datenbank isoliert synchronisiert werden können.
  • ElectricSQL könnte in CI-Workflows eingesetzt werden, in denen schnelle Integrationstests mit einem Teil realer oder kuratierter Daten geschrieben werden.
  • ElectricSQL wird als wichtiger Schritt in Richtung einer Renaissance von Local-First-Apps angesehen, auch wenn in diesem Bereich noch viele Herausforderungen zu bewältigen sind.
  • Es wurde die Frage aufgeworfen, ob sich End-to-End-Verschlüsselung für Teile des Zustands von Anwendungen einsetzen lässt, die ElectricSQL verwenden.
  • Einige Nutzer äußerten Bedenken hinsichtlich der Komplexität, zu verstehen, was mit dem Zustand in Verbindung mit CRDTs geschieht, und wie dies für Nutzer problematisch werden könnte.
  • Es gibt Fragen zum kommerziellen Modell von ElectricSQL, insbesondere ob es ein vollständiger Cloud-Service werden soll oder ob nur die Elixir-Komponente gehostet wird.
  • Nutzer fragen sich, wie Validierung oder Authentifizierung für Änderungen funktioniert, die zurück in die Root-Datenbank gemergt werden, und wie ElectricSQL damit umgeht, dass ein bösartiger Client beliebige Datenströme zur Synchronisierung mit der Root-Datenbank senden könnte.
  • ElectricSQL wurde mit anderen Lösungen wie PouchDB und CouchDB verglichen, und Nutzer äußerten Interesse daran, die neue Technologie auszuprobieren.
  • Die Veröffentlichung von ElectricSQL wurde insgesamt positiv aufgenommen, und viele Nutzer zeigten sich begeistert vom Potenzial dieser Technologie für Local-First-Software.