Home / Companies / Supabase / Blog / Post Details
Content Deep Dive

Realtime or ETL? How to choose the right tool

Blog post from Supabase

Post Details
Company
Date Published
Author
-
Word Count
1,798
Language
English
Hacker News Points
-
Summary

Supabase offers two distinct tools, Realtime and ETL, each designed to handle different aspects of database change tracking and data movement. Realtime is geared towards delivering instantaneous updates to client applications, making it ideal for live user experiences such as chat applications and collaborative editing, by broadcasting changes over WebSocket connections. However, it does not guarantee the delivery of every change if a connection is lost. In contrast, Supabase ETL is a change-data-capture pipeline designed for reliable data movement to analytical systems like BigQuery, ensuring every database change is captured and delivered, even if there are interruptions. ETL uses a permanent replication slot to ensure at-least-once delivery, capturing and storing data changes for analytical purposes by batching data with configurable parallelism. Both tools leverage logical replication from Postgres but serve different end goals; Realtime focuses on immediate, live user updates while ETL emphasizes comprehensive and reliable data transfer for analytics, making them complementary rather than interchangeable depending on the application requirements.