Skip to content
documentdb

documentdb

documentdb : API surface for DocumentDB for PostgreSQL

Overview

ID Extension Package Version Category License Language
9000
documentdb
documentdb
0.114
SIM
MIT
C
Attribute Has Binary Has Library Need Load Has DDL Relocatable Trusted
--sLd--
No
Yes
Yes
Yes
no
no
Relationships
Requires
documentdb_core
pg_cron
postgis
tsm_system_rows
vector
Need By
documentdb_distributed
documentdb_extended_rum
See Also
mongo_fdw
wal2mongo
pg_jsonschema
jsquery
Siblings
documentdb_core
documentdb_distributed
documentdb_extended_rum

Packages

Type Repo Version PG Major Compatibility Package Pattern Dependencies
EXT
PIGSTY
0.114
18
17
16
15
14
documentdb documentdb_core, pg_cron, postgis, tsm_system_rows, vector
RPM
PIGSTY
0.114
18
17
16
15
14
documentdb_$v postgresql$v-contrib, pg_cron_$v, pgvector_$v, rum_$v, postgis36_$v
DEB
PIGSTY
0.114
18
17
16
15
14
postgresql-$v-documentdb postgresql-$v-cron, postgresql-$v-pgvector, postgresql-$v-rum, postgresql-$v-postgis-3
Linux / PG PG18 PG17 PG16 PG15 PG14
el8.x86_64
PIGSTY 0.114
PIGSTY 0.114
PIGSTY 0.114
PIGSTY 0.114
N/A
el8.aarch64
PIGSTY 0.114
PIGSTY 0.114
PIGSTY 0.114
PIGSTY 0.114
N/A
el9.x86_64
PIGSTY 0.114
PIGSTY 0.114
PIGSTY 0.114
PIGSTY 0.114
N/A
el9.aarch64
PIGSTY 0.114
PIGSTY 0.114
PIGSTY 0.114
PIGSTY 0.114
N/A
el10.x86_64
PIGSTY 0.114
PIGSTY 0.114
PIGSTY 0.114
PIGSTY 0.114
N/A
el10.aarch64
PIGSTY 0.114
PIGSTY 0.114
PIGSTY 0.114
PIGSTY 0.114
N/A
d12.x86_64
PIGSTY 0.114
PIGSTY 0.114
PIGSTY 0.114
PIGSTY 0.114
N/A
d12.aarch64
PIGSTY 0.114
PIGSTY 0.114
PIGSTY 0.114
PIGSTY 0.114
N/A
d13.x86_64
PGDG 0.114
PGDG 0.114
PGDG 0.114
PGDG 0.114
N/A
d13.aarch64
PGDG 0.114
PGDG 0.114
PGDG 0.114
PGDG 0.114
N/A
u22.x86_64
PIGSTY 0.114
PIGSTY 0.114
PIGSTY 0.114
PIGSTY 0.114
N/A
u22.aarch64
PIGSTY 0.114
PIGSTY 0.114
PIGSTY 0.114
PIGSTY 0.114
N/A
u24.x86_64
PIGSTY 0.114
PIGSTY 0.114
PIGSTY 0.114
PIGSTY 0.114
N/A
u24.aarch64
PIGSTY 0.114
PIGSTY 0.114
PIGSTY 0.114
PIGSTY 0.114
N/A
u26.x86_64
PGDG 0.114
PGDG 0.114
PGDG 0.114
PGDG 0.114
N/A
u26.aarch64
PGDG 0.114
PGDG 0.114
PGDG 0.114
PGDG 0.114
N/A
Package Version OS ORG SIZE File URL
documentdb_18 0.114 el8.x86_64 pigsty 3.1 MiB documentdb_18-0.114-0PIGSTY.el8.x86_64.rpm
documentdb_18 0.114 el8.aarch64 pigsty 3.0 MiB documentdb_18-0.114-0PIGSTY.el8.aarch64.rpm
documentdb_18 0.114 el9.x86_64 pigsty 2.9 MiB documentdb_18-0.114-0PIGSTY.el9.x86_64.rpm
documentdb_18 0.114 el9.aarch64 pigsty 2.8 MiB documentdb_18-0.114-0PIGSTY.el9.aarch64.rpm
documentdb_18 0.114 el10.x86_64 pigsty 3.0 MiB documentdb_18-0.114-0PIGSTY.el10.x86_64.rpm
documentdb_18 0.114 el10.aarch64 pigsty 2.9 MiB documentdb_18-0.114-0PIGSTY.el10.aarch64.rpm
postgresql-18-documentdb 0.114 d12.x86_64 pigsty 5.4 MiB postgresql-18-documentdb_0.114-0PIGSTY~bookworm_amd64.deb
postgresql-18-documentdb 0.114 d12.aarch64 pigsty 5.2 MiB postgresql-18-documentdb_0.114-0PIGSTY~bookworm_arm64.deb
postgresql-18-documentdb 0.114 d13.x86_64 pgdg 5.1 MiB postgresql-18-documentdb_0.114-0-1.pgdg13+1_amd64.deb
postgresql-18-documentdb 0.114 d13.x86_64 pigsty 5.4 MiB postgresql-18-documentdb_0.114-0PIGSTY~trixie_amd64.deb
postgresql-18-documentdb 0.113 d13.x86_64 pgdg 5.0 MiB postgresql-18-documentdb_0.113-0-1.pgdg13+1_amd64.deb
postgresql-18-documentdb 0.112 d13.x86_64 pgdg 4.9 MiB postgresql-18-documentdb_0.112-0-1.pgdg13+1_amd64.deb
postgresql-18-documentdb 0.114 d13.aarch64 pgdg 5.0 MiB postgresql-18-documentdb_0.114-0-1.pgdg13+1_arm64.deb
postgresql-18-documentdb 0.114 d13.aarch64 pigsty 5.2 MiB postgresql-18-documentdb_0.114-0PIGSTY~trixie_arm64.deb
postgresql-18-documentdb 0.113 d13.aarch64 pgdg 4.8 MiB postgresql-18-documentdb_0.113-0-1.pgdg13+1_arm64.deb
postgresql-18-documentdb 0.112 d13.aarch64 pgdg 4.8 MiB postgresql-18-documentdb_0.112-0-1.pgdg13+1_arm64.deb
postgresql-18-documentdb 0.114 u22.x86_64 pigsty 5.7 MiB postgresql-18-documentdb_0.114-0PIGSTY~jammy_amd64.deb
postgresql-18-documentdb 0.114 u22.aarch64 pigsty 5.6 MiB postgresql-18-documentdb_0.114-0PIGSTY~jammy_arm64.deb
postgresql-18-documentdb 0.114 u24.x86_64 pigsty 5.6 MiB postgresql-18-documentdb_0.114-0PIGSTY~noble_amd64.deb
postgresql-18-documentdb 0.114 u24.aarch64 pigsty 5.5 MiB postgresql-18-documentdb_0.114-0PIGSTY~noble_arm64.deb
postgresql-18-documentdb 0.114 u26.x86_64 pgdg 5.0 MiB postgresql-18-documentdb_0.114-0-1.pgdg26.04+1_amd64.deb
postgresql-18-documentdb 0.114 u26.x86_64 pigsty 5.6 MiB postgresql-18-documentdb_0.114-0PIGSTY~resolute_amd64.deb
postgresql-18-documentdb 0.113 u26.x86_64 pgdg 4.9 MiB postgresql-18-documentdb_0.113-0-1.pgdg26.04+1_amd64.deb
postgresql-18-documentdb 0.112 u26.x86_64 pgdg 4.8 MiB postgresql-18-documentdb_0.112-0-1.pgdg26.04+1_amd64.deb
postgresql-18-documentdb 0.114 u26.aarch64 pgdg 4.9 MiB postgresql-18-documentdb_0.114-0-1.pgdg26.04+1_arm64.deb
postgresql-18-documentdb 0.114 u26.aarch64 pigsty 5.5 MiB postgresql-18-documentdb_0.114-0PIGSTY~resolute_arm64.deb
postgresql-18-documentdb 0.113 u26.aarch64 pgdg 4.7 MiB postgresql-18-documentdb_0.113-0-1.pgdg26.04+1_arm64.deb
postgresql-18-documentdb 0.112 u26.aarch64 pgdg 4.7 MiB postgresql-18-documentdb_0.112-0-1.pgdg26.04+1_arm64.deb

Source

pig build pkg documentdb;		# build rpm/deb

Install

Make sure PGDG and PIGSTY repo available:

pig repo add pgsql -u   # add both repo and update cache

Install this extension with pig:

pig install documentdb;		# install via package name, for the active PG version

pig install documentdb -v 18;   # install for PG 18
pig install documentdb -v 17;   # install for PG 17
pig install documentdb -v 16;   # install for PG 16
pig install documentdb -v 15;   # install for PG 15

Config this extension to shared_preload_libraries:

shared_preload_libraries = 'pg_documentdb, pg_documentdb_core, pg_cron';

Create this extension with:

CREATE EXTENSION documentdb CASCADE; -- requires documentdb_core, pg_cron, postgis, tsm_system_rows, vector

Usage

Sources:

documentdb is the public PostgreSQL API extension for DocumentDB, an open-source MongoDB-compatible document database built on PostgreSQL. It stores BSON documents and implements CRUD, aggregation, full-text, geospatial, and vector workflows. MongoDB drivers require the separate DocumentDB gateway; installing this extension alone exposes the PostgreSQL API, not a wire-protocol listener.

Configure and Install

The official deployment helper preloads the core and API libraries with pg_cron. Restart PostgreSQL after changing this setting:

shared_preload_libraries = 'pg_cron, pg_documentdb_core, pg_documentdb'

Install the public extension and its declared dependencies:

CREATE EXTENSION documentdb CASCADE;

CASCADE can install documentdb_core, pg_cron, tsm_system_rows, vector, and postgis when their files are present. Installation is superuser-only and non-relocatable.

Native SQL Workflow

The SQL surface uses a database name, collection name, and BSON command document:

SELECT documentdb_api.create_collection('appdb', 'people');

SELECT documentdb_api.insert_one(
  'appdb',
  'people',
  '{"_id": 1, "name": "Ada", "team": "storage"}',
  NULL
);

SELECT document
FROM documentdb_api_catalog.bson_aggregation_find(
  'appdb',
  '{"find":"people","filter":{"team":"storage"}}'
);

For application compatibility, run the gateway and use a supported MongoDB driver against its configured TLS endpoint. The gateway translates wire-protocol commands into this PostgreSQL API.

Important Objects

  • documentdb_api contains collection-management and command functions such as create_collection and insert_one.
  • documentdb_api_catalog.bson_aggregation_find executes a MongoDB-style find specification and returns BSON documents.
  • documentdb_core.bson is the storage and interchange type supplied by documentdb_core.
  • DocumentDB roles and internal schemas separate public read/write operations from administrative and implementation objects.
  • documentdb.enableNonBlockingUniqueIndexBuild controls the v0.114 path for background unique ordered-index builds and is enabled by default in that release.

Version and Operational Notes

The v0.114-0 tagged changelog enables schema validation by default, fixes validator propagation and caching, and enables non-blocking unique ordered-index builds. It also records gateway configuration, connectivity-check, TLS, and credential-handling improvements. Two RUM optimizations in that changelog remain feature-flagged and disabled by default; do not describe them as active behavior.

MongoDB compatibility is not identical to every MongoDB server version. Test operators, index behavior, transactions, schema validation, authentication, and driver behavior used by the application. Match documentdb, documentdb_core, gateway, and optional distributed/index components to the same release line.

Last updated on