核心能力全景图:Supabase 的七大支柱 Supabase 之所以能充当「完整后端」,是因为它围绕 PostgreSQL 构建了一整套相互协作的服务。本节带你鸟瞰这七大核心能力,理解它们各自解决什么问题、彼此如何关联。每一项能力的深入内容都会在后续专章展开。 一、数据库与数据表(PostgreSQL) 这是 Supabase 的基石。每个 Supabase 项目本质上是一个托管的 PostgreSQL 数据库实例,你可以: 用标准 SQL 创建表、定义字段与数据类型 通过主键、外键、约束保证数据完整性 使用 JSONB、数组、UUID 等丰富类型 借助扩展获得向量、全文搜索、地理空间等能力
Supabase 之所以能充当「完整后端」,是因为它围绕 PostgreSQL 构建了一整套相互协作的服务。本节带你鸟瞰这七大核心能力,理解它们各自解决什么问题、彼此如何关联。每一项能力的深入内容都会在后续专章展开。
这是 Supabase 的基石。每个 Supabase 项目本质上是一个托管的 PostgreSQL 数据库实例,你可以:
数据库是所有其他能力的承载者——认证的用户信息存放在表里,实时订阅监听的是表的变更,行级安全策略作用在表上。深入内容见第 2 章与第 3 章。
Supabase Auth 负责管理「谁在使用应用」。它支持邮箱密码、第三方 OAuth(如 GitHub、Google)、Magic Link(魔法链接)、手机验证码与匿名登录等多种方式,并自动签发 JWT(JSON Web Token)令牌来维持登录态。
Auth 与数据库深度集成:认证系统的用户数据本身也存储在一张专用的用户表中,这意味着你既能用 SQL 管理用户,也能把用户身份与业务数据天然关联。深入内容见第 4 章。
有了身份,就要解决「谁能看到什么数据」。行级安全(Row Level Security,RLS)是 Supabase 数据安全的核心机制:它允许你为每张表编写 SQL 策略,精确控制每一行数据的读写权限。
例如「用户只能读写自己的订单」这类规则,可以用一条 RLS 策略表达,并由数据库强制执行,前端因此可以安全地直连数据库而无需经过自建中间层。深入内容见第 5 章。
传统应用里,前端要看到最新数据往往需要反复轮询接口。Supabase Realtime 基于 PostgreSQL 的逻辑复制(CDC,Change Data Capture)能力,当数据库中的数据发生变更时,主动把变更事件推送给已订阅的客户端。
这让构建协作编辑、实时聊天、在线看板、行情推送等实时应用变得简单。除了数据变更,Realtime 还提供消息广播(Broadcast)与在线状态(Presence)两种能力。深入内容见第 6 章。
应用除了结构化数据,还需要处理图片、音视频、文档等非结构化文件。Supabase Storage 提供 S3 兼容的对象存储,支持:
存储的访问控制同样可以与 RLS 策略结合,实现「只有文件所有者能下载」这类规则。深入内容见第 7 章。
并非所有逻辑都适合放进数据库。当需要编排复杂业务、调用第三方接口、处理 Webhook 或执行定时任务时,边缘函数(Edge Functions)登场。它基于 Deno 运行时,部署在全球边缘节点,靠近用户执行,延迟更低。
边缘函数可以用服务级密钥直接访问数据库、存储与 Auth,充当「可控的后端逻辑层」,是对数据库原生能力的有力补充。深入内容见第 8 章。
随着大模型的兴起,向量检索成为 AI 应用的关键能力。Supabase 通过 PostgreSQL 的 pgvector 扩展,让数据库本身能够存储向量、执行相似度检索。这意味着你可以用同一套数据库同时管理业务数据与向量嵌入,构建语义搜索、推荐系统,以及检索增强生成(RAG)等 AI 应用。深入内容见第 9 章。
这七大能力并非孤立,而是围绕「同一个数据库、同一套身份」协同工作。一个典型的应用请求链路可能是:
可以看到,Auth 提供身份、RLS 守护数据、Realtime 推送变更、Storage 管理文件、边缘函数编排逻辑、向量能力支撑 AI——它们共享同一个 PostgreSQL 内核,因此可以无缝组合,而不必像拼装多个独立服务那样处理复杂的集成。
掌握 Supabase 的关键,是理解它的「分层 + 协作」结构:底层是 PostgreSQL 数据库,上层是构建在其上的各项服务能力。本节建立的全景认知,将在后续每一章中得到细化。接下来,我们先从管理视角了解项目与控制台的基本概念。