在火山引擎 AI 原生数据库管理平台控制台开通 Supabase 服务后,根据业务场景通过公网或者私网连接 Supabase 服务并配置相关的 API Key 后,即可使用 AI 原生数据库管理平台在 Supabase 控制台提供的各种 BaaS 服务。
Supabase 控制台当前提供的核心功能模块如下:
PostgreSQL 是 Supabase 控制台的核心组件。每个 Supabase 项目默认自带一个完整的 PostgreSQL 实例,支持原生 PostgreSQL 能力和 50+ 扩展插件,并提供可视化管理工具(Table Editor 和 SQL Editor)。
在数据库使用层面,Supabase 支持通过 RESTful 接口和 GraphQL 接口操作数据库中的库、表、函数、存储过程等对象。相比传统在应用中单独开发 DAO 层的方式,通过 API 直接访问数据库,无需额外实现 DAO 层,只需编写对应业务逻辑即可。
- RESTful 接口:基于 PostgREST 框架实现,将 HTTP API 请求自动转换为 SQL,并在框架内置连接池。在承接高并发 HTTP 请求时,可以将 PostgREST 与数据库之间的连接数控制在较低水平,避免 PostgreSQL 数据库因连接过多导致内存占用过高。
- GraphQL 接口:基于 pg_graphql 插件实现,请求结果通常以 JSONB 等格式返回,便于前端直接消费。
Authentication(认证 & 用户管理)
Auth 模块提供基于 PostgreSQL 行级安全策略(RLS)的细粒度权限控制能力,并内置完整的用户身份体系,帮助开发者快速搭建安全可靠的用户系统。
- 细粒度权限控制:依托 PostgreSQL 行级安全策略,可基于用户、角色及数据条件进行精细化的访问控制。用户可以使用 SQL 定义访问规则,所有查询都会自动应用安全策略,从而确保数据安全与隐私。
- 安全通信与访问控制:基于 JWT 实现安全通信,并结合行级安全策略,可以精确控制用户对数据的访问权限。
- 用户管理能力:提供用户注册、登录、密码管理等完整用户管理功能,可通过 API 接口管理用户信息,方便开发者构建完善的用户身份管理体系。
- 认证方式:支持邮箱登录、OAuth 第三方认证(如 微信/Google/GitHub/Facebook/飞书 等)、短信验证和登录(包括火山短信服务)、CAS(Central Authentication Service)等多种方式。
Storage 提供一套可扩展的文件存储解决方案,支持图片、视频、文档等各类文件的存储与访问。结合 PostgreSQL 的 RLS 规则,可以对文件访问进行精细化权限控制,满足多场景安全需求。
Edge Function 基于火山引擎 veFaaS 函数服务构建,是一套 Serverless 函数能力。用户可以在其中编写、部署和运行 JavaScript(Deno)或 Python 的代码,将复杂业务逻辑放在 Edge Function 中执行,实现与前端和其他 BaaS 服务的安全隔离。
典型应用场景包括:
Edge Function 可以直接调用 Supabase 的其他服务,无需额外配置密钥。
Supabase 控制台通过 Realtime 组件提供实时消息通信和消息广播能力。客户端与 Realtime 之间通过 WebSocket 建立连接,结合 PostgreSQL 数据库自带的逻辑复制 Slot 和 Trigger 触发器,并监听 Realtime 的 messages 系统表变更,可以将数据库中的记录更新实时推送到多个客户端。
在 Realtime 中,不同地域的多个 Realtime 服务之间也可以进行消息传播,这一特性在需要高交互性的场景中尤为重要,例如实时聊天应用或协作工具。以聊天应用为例,当用户 A 发送消息后,所有连接至该频道的客户端(如用户 B 的设备)会立即收到更新,无需轮询服务器。
基于 Realtime,开发者可以快速构建协作类应用,典型场景包括:
- 数据同步:基于 PostgreSQL 的复制机制,在多个客户端之间实现数据同步。
- Broadcast(广播):实现聊天室等场景下的即时消息推送。
具备 Supabase 函数开发、PostgreSQL 管理、服务集成与调试监控全栈能力。
- Advisors:自动化“建议”与静态分析,帮助找出数据库性能、安全与配置问题,并给出可操作的修复建议(例如缺失或重复索引、过期扩展、未启用 RLS、函数 search_path 等)。
- Reports(报表 / Observability):可视化监控面板,展示数据库、Auth、Storage、Realtime、Edge Functions、API 等的关键指标(CPU、内存、IOPS、连接数、请求量、错误率、延迟、缓存命中等),支持不同时间范围、分源切换和自定义报告(自定义报表/仪表板)。
- Logs(日志 / Logs Explorer):结构化日志与可查询的日志探索器,包含不同来源的日志表(edge_logs、postgres_logs、auth_logs、storage_logs、function_logs、realtime_logs 等),支持 SQL 查询、unnest 嵌套字段、筛选/导出、模板和下载,用于事件追踪、错误定位与审计。
说明
Supabase 控制台的 Logs 模块支持查询最近 30 天内的日志记录。