Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wPg0I-000wb3-1O for pgsql-admin@arkaria.postgresql.org; Wed, 20 May 2026 12:26:26 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wPg0G-007brL-1K for pgsql-admin@arkaria.postgresql.org; Wed, 20 May 2026 12:26:25 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wPg0G-007brB-0J for pgsql-admin@lists.postgresql.org; Wed, 20 May 2026 12:26:25 +0000 Received: from mail-pl1-x62c.google.com ([2607:f8b0:4864:20::62c]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1wPg0F-00000000Y4V-0mKY for pgsql-admin@lists.postgresql.org; Wed, 20 May 2026 12:26:24 +0000 Received: by mail-pl1-x62c.google.com with SMTP id d9443c01a7336-2bc763e2ba8so22151685ad.3 for ; Wed, 20 May 2026 05:26:22 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1779279980; cv=none; d=google.com; s=arc-20240605; b=hyM7UwOEsLf1ubaOR3X501W7MqJsbdazyamma1hlledrbtFhL4Rw3MDfW0KGkU2Kp/ E4Z0XEfbGknxP1GUeBcjzh5Zw1nSHwEOUIhFmEV0D9UySbfXl3Kr7OF/hCeWJMuKvweH FbC0v7ahQd+WYAx3GZlEHSwzVQt6rfSREgvXhpHFyxPa/wfqbB2dSed3SGZjPwss/2Td 7INyrsWIMAcxwxB6/Di0G37oOSjmAlHXkJW5YHqzbYiKKOJ6HoV0/UhW7osbFb1Toj+8 9LouVTXFm6EByjlCWay7tzdB+BNyrMQteGoIMku6z8VTqTukk2s2ABltur8PjXjUcdJw dg9Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=to:subject:message-id:date:from:mime-version:dkim-signature; bh=CkXp41jrRUi7JRS4BJe4CGCy7w0By+1CnF3tBuiUwDI=; fh=2TYDFu6n7J5QCgQuKC9CHnL0/OX+GX+HLe30lvVBdcM=; b=iDzwJzo9coJtcr9qLhk/KAj5ReP7mLBs1tFVXO+4fJYRwJ6sQnL/oRwEtbwvomZAOF R816R+1yobmLXX+WmqsLOJRXrt568gjR/tRKV4F/WfXPXSwwSTlrEvKMa2J2C9WDxn1u yce2rcqzBpL5XUr1aDuWmn/OwuzAuB5413DWYcL+W+YoUVK25ZEN5MjRwJznu2tmW5/r y4+k+v+Flnq1e9n30IRpzx47PfZvML22abGb0FiQD/JMEi9GiUENGdTNhq7p17LkzoEP LCst1BA6c60600pt0ZiZOOlGk5eWrH1RoKnS4BSjzRN6Vz8jyAVPJVrwNWaoJZRQLJGk GA3g==; darn=lists.postgresql.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1779279980; x=1779884780; darn=lists.postgresql.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=CkXp41jrRUi7JRS4BJe4CGCy7w0By+1CnF3tBuiUwDI=; b=nvDnParyZvnVuoMIaNicvqyx+iNtw2qwV1YzjSbIxzzP25d0qzGBKH2LLdluDC0q7/ ih39JTcL9qrvnkY9m9twAPTDu1iqdMY7ZrWBPyxh83yavRFC0E8b99KHhGCd/l8CT4dI oCvt9B9INbZHl2qQLHnkvFT8rs8FJWSWZz5PyhKzcVDMI+vA5do0YWqqBn9A2BqSjH7l npNKpVTgSbyQTWQlJFG3ACQiTCybCg2fL93iCuFRUSd2xY1sV7s+L9qCl7brKIx+Ndtr vTqpKgjeCJxLs4wCunsudG5xL594hub6ZxTGXH8xzxm41w0jOSkdZ3OnvT03up3ZnAlP k+ZA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779279980; x=1779884780; h=to:subject:message-id:date:from:mime-version:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=CkXp41jrRUi7JRS4BJe4CGCy7w0By+1CnF3tBuiUwDI=; b=lp52kUvrVF4tMYvrPhBnqTs8nRkGw6jP+tPMcPJD7ZrUftOX4gPnFyPxBpRtB2girY 9wUq5hQBddUVhR+FaU77DKYimXsilO81VeUjMN4SZqz6WJ2m/W5MN7U3QN1JHvTWeGQm uuxGE6DByrWw07WU5xF95gzxYufxp3ByNUNwHq4Iq5yJCJd9xUlFfc6H6XnYSZxLaHUR 9a5lsaQrjnsoJb9pvya5GSSwLw0UBFJbhUqvUJT5a0Z9HCI7NsL/EF1NFpQa0sI2PphD BTjS1JjNCPeYYayrchDA1C0gcDuV4bSLLxPiSLM4ogccE7XYjOiqayxNQiz0muHymj1b zpZg== X-Gm-Message-State: AOJu0Yz6zmd3D6LOIRlsXuPp2B4B48PkG4UiA8+nTCI5JKOndUWr965D 3G26tU87I7VAB5zZK2WDMniVPJR6n8UcUC9hoALS/UQFtXpF/ueTG3C7Ry90DfGpVNLgEphOfKD eO/r/crO3BI5yfdgTuiyPlT8I93MFH6UTu8Ed X-Gm-Gg: Acq92OHUirmvw95/2yMBJ+LPWcZOJIpqX2Z9Blb+V/xc3TNK5fucwhRHU4Jn7Mugy3e i4tdyGeXyLXFKurtBx+SPIkRN3Jr0Tnc2tOzSYy2wY7LhHBgGKmS+P1oyZ0hY/5qWAmdRXMIwgi 294Fs9wEOIf32qFgTNG1JZYmP1oL/J4SnsCXZKKoLVU9FZy/ymh3jiyGJlgsvKDpaKbFZQvZpdF WQkGkOEXnDINqjDDx2RUoZPaEyWlD9xZ2h2e1lmxxte5pSWT8CLdQ4xz1gg0kr8KWAI5CRAC9F+ LaBismv/viu+QTkR5Q== X-Received: by 2002:a17:903:3201:b0:2b2:58c7:2ce1 with SMTP id d9443c01a7336-2bd7e9e9426mr267283165ad.36.1779279980249; Wed, 20 May 2026 05:26:20 -0700 (PDT) MIME-Version: 1.0 From: Pratik Pandit Date: Wed, 20 May 2026 17:56:08 +0530 X-Gm-Features: AVHnY4K_Z-Didhfhxn7mwVrZ9OCSQ20fqss-vmpvi6c1uhvA64-I9SC9t1DjWs0 Message-ID: Subject: Looking for a native MongoDB document extension for PostgreSQL (similar to pgvector like extension) To: pgsql-admin@lists.postgresql.org Content-Type: multipart/alternative; boundary="0000000000002dc4ba06523ee79f" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --0000000000002dc4ba06523ee79f Content-Type: text/plain; charset="UTF-8" Hi everyone, I am looking to handle document-store workloads directly inside PostgreSQL, but using MongoDB-style query patterns or optimized storage structures. To give an analogy: I highly appreciate how pgvector brings native vector data types and specialized indexing (like HNSW) directly into Postgres, keeping everything inside the same database engine. I know Postgres has incredible jsonb capabilities natively, but I am looking for a PostgreSQL extension that bridges the gap closer to MongoDB. Specifically, I'm hoping to find something that provides: 1. A Native BSON Data Type: Storing binary JSON natively inside Postgres for faster processing. 2. MongoDB API/Query Compatibility: The ability to run Mongo-like queries directly on top of Postgres tables. I am already aware of Foreign Data Wrappers like mongo_fdw, but that is for querying a separate, external MongoDB instance. I want to keep the data *natively resident* inside Postgres. Are there any active open-source extensions or projects that the community recommends for this? (I have heard brief mentions of things like pg_documentdb / FerretDB, but I'd like to get the community's perspective on what is production-ready extension for it). Best regards, Pratik Pandit --0000000000002dc4ba06523ee79f Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable

Hi everyone,

I am looking to handle document-stor= e workloads directly inside PostgreSQL, but using MongoDB-style query patte= rns or optimized storage structures.

To give an analogy: I=C2=A0=C2= =A0highly appreciate how pgvector brings native vector data ty= pes and specialized indexing (like HNSW) directly into Postgres, keeping ev= erything inside the same database engine.

I know Postgres has incre= dible jsonb capabilities natively, but I am looking for a Post= greSQL extension that bridges the gap closer to MongoDB. Specifically, I= 9;m hoping to find something that provides:=C2=A0
1.=C2=A0A Nativ= e BSON Data Type: S= toring binary JSON natively inside Postgres for faster processing.
2.=C2=A0MongoDB API/Que= ry Compatibility: The ability to run Mongo-like queries directly on top of = Postgres tables.

I am already aware of Foreign Data Wrappers like m= ongo_fdw, but that is for querying a separate, external MongoDB inst= ance. I want to keep the data natively resident inside Postgres.

=

Are there any active open-source extensions or projects that the communi= ty recommends for this? (I have heard brief mentions of things like p= g_documentdb / FerretDB, but I'd like to get the community's= perspective on what is production-ready extension for it).

Best reg= ards,

Pratik Pandit


--0000000000002dc4ba06523ee79f--