@@ -14,7 +14,7 @@ page explains the four storage backends supported by
1414| ** direct** (filestorage) | Development, single-process | No (single process only) | Yes (built-in) | None |
1515| ** relstorage** (PostgreSQL, MySQL, Oracle, SQLite) | Production, horizontal scaling | Yes (multiple app processes) | Optional (history-preserving mode) | RDBMS server |
1616| ** zeo** | Production, moderate scaling | Yes (multiple app processes) | Yes (built-in) | ZEO server process |
17- | ** pgjsonb** | SQL-queryable ZODB, modern stacks | Yes (multiple app processes) | Optional (history-preserving mode) | PostgreSQL 14+ |
17+ | ** pgjsonb** | Cloud-native, SQL-queryable ZODB | Yes (multiple app processes) | Optional (history-preserving mode) | PostgreSQL 14+ |
1818
1919## Direct filestorage
2020
@@ -101,6 +101,8 @@ between Python pickle format and JSON.
101101
102102** When to use it:**
103103
104+ - Cloud-native deployments where a managed PostgreSQL service (RDS, Cloud SQL,
105+ AlloyDB, etc.) replaces local filestorage and blob directories
104106- When you want to query ZODB data directly with SQL/JSONB operators
105107- Modern PostgreSQL-centric architectures
106108- Integration with tools that consume JSON natively (analytics, reporting)
@@ -128,7 +130,7 @@ For most teams, the decision comes down to:
1281301 . ** Development or single-process?** Use ` direct ` .
1291312 . ** Need multi-process with an existing RDBMS?** Use ` relstorage ` .
1301323 . ** Need multi-process, prefer ZODB-native simplicity?** Use ` zeo ` .
131- 4 . ** Want SQL-queryable ZODB data on PostgreSQL?** Use ` pgjsonb ` .
133+ 4 . ** Cloud-native or want SQL-queryable ZODB data on PostgreSQL?** Use ` pgjsonb ` .
132134
133135All four backends support the same ZODB API, so switching between them is a
134136configuration change (plus data migration). Your application code does not
0 commit comments