PG 模式概述
PG 模式 是云开发环境的一种新模式,采用 Postgres-Native 架构。创建云开发环境时选择 PostgreSQL 数据库,环境即自动以 PG 模式运行——以 PostgreSQL 作为基础设施层的统一底座,主要表现为:
- 身份认证:用户数据存储在 PostgreSQL 的
authschema 中,可在 SQL 中读取当前用户身份 - 云存储:文件元数据保存在 PostgreSQL 的
storageschema,访问权限由 RLS 策略驱动 - PostgreSQL 数据库:提供开箱即用的 PostgreSQL 实例,支持完整 SQL 能力, 并基于 PostgREST 自动暴露 RESTful API
- 权限体系:采用 表级权限(GRANT)+ 行级权限(RLS Policy) 的双层权限模型,统一使用
anon/authenticated/service_role三种数据库角色进行鉴权,详见 架构与权限模型、数据权限管理 与 RLS 权限模式库 - 业务数据:可继续使用文档型数据库,也可使用 PostgreSQL 实例存储关系型数据,并通过 RLS 策略进行权限管控;如需快速上手,可阅读 快速体验 与 实战教程
与传统模式相比,最大的差异不是"数据库变了",而是基础设施层从分散的子系统变为以 PostgreSQL 为底座的统一运行时;因此它更适合需要强结构化建模、关联查询、事务一致性以及精细化行级权限的场景。
体验通知
CloudBase PG 模 式环境已开放体验,欢迎试用。如需创建体验环境,请联系云开发团队。功能正在持续迭代完善,正式发布时间请关注官方公告。
仅新环境支持
PG 模式仅新建环境支持,存量传统模式环境不支持升级。如需使用相关能力,请新建环境并选择 PostgreSQL 数据库。
为什么称为 PG 模式?
PG 模式不是简单地"在原有环境里多加一个 PostgreSQL 实例"。如上所述,它会同时改变数据库访问、权限模型、身份认证、云存储和访问角色等基础能力:PostgreSQL 不只是 SQL 数据库,而是身份、存储、权限和业务数据访问的统一运行时底座。
正是因为这些"环境基础能力"都因 PostgreSQL 的引入而被重构,我们将其命名为 PG 模式(采用 Postgres-Native 架构),以便于与云开发的传统运行模式进行区分,并突出 PostgreSQL 作为整个环境运行时第一公民的地位。