Supabase: Open-source Firebase Alternative với PostgreSQL

Supabase là gì: Firebase Alternative mã nguồn mở dựa trên PostgreSQL

Supabase là nền tảng phát triển ứng dụng mã nguồn mở (Apache 2.0, hơn 108K ⭐ trên GitHub) dựa trên PostgreSQL, cung cấp backend-as-a-service thay thế cho Firebase nhưng với kiến trúc khác biệt. Thay vì Firestore NoSQL, Supabase sử dụng PostgreSQL — database quan hệ mạnh mẽ, hỗ trợ SQL, JSONB, và mở rộng với pgvector cho AI/embeddings.

Giao diện psql CLI của PostgreSQL cơ sở dữ liệu cốt lõi của Supabase
Giao diện psql CLI của PostgreSQL cơ sở dữ liệu cốt lõi của Supabase

Sản phẩm bao gồm các thành phần mã nguồn mở: GoTrue (xác thực), PostgREST (API tự động từ PostgreSQL), Realtime (WebSocket), Storage (lưu trữ file), và Edge Functions (chạy code Deno). Bạn có thể tự host toàn bộ stack bằng Docker/K8s hoặc dùng managed cloud.

Supabase vs Firebase: So sánh kiến trúc

  • Database: Supabase dùng PostgreSQL (SQL, ACID, transaction); Firebase dùng Firestore (NoSQL, document-based).
  • Mã nguồn mở: Toàn bộ stack Supabase là mã nguồn mở, audit/fork/self-host tự do; Firebase là dịch vụ độc quyền của Google.
  • Security: Row Level Security (RLS) của PostgreSQL tích hợp sẵn; Firebase có Security Rules riêng.
  • Self-hosting: Supabase hỗ trợ triển khai hoàn toàn trên hạ tầng riêng; Firebase không.
  • Query: PostgreSQL hỗ trợ window functions, CTEs, full-text search; Firestore bị giới hạn aggregation.
Kiến trúc tổng thể Supabase: PostgreSQL core với GoTrue Auth PostgREST Realtime Storage
Kiến trúc tổng thể Supabase: PostgreSQL core với GoTrue Auth PostgREST Realtime Storage

Tích hợp AI và Vector Search với pgvector

Với tiện ích mở rộng pgvector, bạn có thể lưu trữ embeddings, chạy truy vấn tương đồng ngữ nghĩa (semantic search), và kết hợp keyword search + vector search (hybrid search) trong cùng PostgreSQL.

  • Vector store: Lưu embeddings từ OpenAI, Hugging Face, hoặc mô hình riêng trong PostgreSQL.
  • Python client (vecs): Tạo, truy vấn, quản lý vector collection từ code Python.
  • Hybrid search: Kết hợp keyword + semantic search trong một query duy nhất.
  • Framework integrations: LangChain, LlamaIndex, Amazon Bedrock.
Sơ đồ cấu trúc cơ sở dữ liệu PostgreSQL trong hệ thống Supabase
Sơ đồ cấu trúc cơ sở dữ liệu PostgreSQL trong hệ thống Supabase

Mô hình giá cả

  • Free: $0 — Database 500 MB, 50K MAU, Egress 5 GB, Storage 1 GB. Tự động tạm ngưng sau 7 ngày không hoạt động.
  • Pro: $25/tháng — Database 8 GB, 100K MAU, Egress 250 GB, Storage 100 GB.
  • Team: $599/tháng — Hỗ trợ kỹ thuật ưu tiên, tài nguyên mở rộng.
  • Compute add-ons: $10–$3,730/tháng — Tùy chọn nâng cấp từ Micro (1GB) đến 16XL (256GB).

Bắt đầu trong 5 phút

  1. Truy cập supabase.com và tạo tài khoản miễn phí.
  2. Tạo dự án mới — hệ thống cung cấp project URL, anon key, service_role key.
  3. Chọn framework trong quickstart guide (Next.js, React, Vue, Flutter, Swift, Kotlin, Rails…).
  4. CLI local dev: supabase init và supabase start (Docker stack).

Trong Dashboard, mở Table Editor để quản lý bảng, xem dữ liệu trực tiếp, và bật pgvector hoặc Auth với vài cú click.

Tài liệu tham khảo

Tôi là một lập trình viên IOS. Code chính là IOS nhưng thỉnnh thoảng vẫn đá sang Android hoặc web. Mặc dù không quá thông thạo nhưng tôi sẽ chia sẻ những kiến thức mà mình đã tìm hiểu, áp dụng qua.

Bài viết liên quan

Debugging là gì: quy trình, kỹ thuật và công cụ tìm lỗi

Debugging là gì: quy trình, kỹ thuật và công cụ tìm lỗi phần mềm Debugging là quá trình phát hiện, cô lập và khắc phục lỗi trong phần mềm. Từ…

Xem thêm

Terraform là gì: công cụ Infrastructure as Code của HashiCorp

Terraform là gì: công cụ Infrastructure as Code của HashiCorp Terraform là một công cụ Infrastructure as Code (IaC) do HashiCorp phát triển, cho phép người dùng khai báo và…

Xem thêm

Fortran là gì: ngôn ngữ lập trình cho tính toán khoa học

Fortran là gì: ngôn ngữ lập trình cho tính toán khoa học Fortran là gì? Đây là ngôn ngữ lập trình cao cấp được thiết kế riêng cho các bài…

Xem thêm
0 0 đánh giá
Article Rating
Theo dõi
Thông báo của
guest
0 Comments
Cũ nhất
Mới nhất Được bỏ phiếu nhiều nhất