Skip to content

[SIP-195] Support SQL-based querying on MongoDB. #36844

Closed

Description

@passren

Please make sure you are familiar with the SIP process documented
here. The SIP will be numbered by a committer upon acceptance.

[SIP] Proposal for Supporting SQL-based querying on MongoDB.<title>

Motivation

Apache Superset provides a rich SQL-based analytical experience, but it currently lacks a connector for NoSQL databases such as MongoDB. Providing SQL-based querying support for MongoDB would significantly improve Superset’s usability, lower the learning curve for analysts, and enable more real-time analytics directly on MongoDB data.

Proposed Change

I have created a DB API 2.0–compliant project that allows users to query MongoDB using SQL. A SQLAlchemy dialect has already been implemented in the project. The remaining work is to add MongoDB as a new engine in db_engine_specs, and to complete the unit tests and documentation.

Project space: https://github.com/passren/PyMongoSQL

The proposed connection string would be:
mongodb://<user>:<password>@<host>:<port>/<database>?mode=superset
mongodb+srv://<user>:<password>@<host>:<port>/<database>?mode=superset

New or Changed Public Interfaces

No changes to Public Interfaces

New dependencies

PyMongoSQL is required as a dependency and is maintained by me. I am also the author of PyDynamoDB which is the connector to dynamodb for superset, which follows a similar design and maintenance model. The license is MIT.

pip install pymongosql

Migration Plan and Compatibility

No migration is required. PyMongoSQL supports both SQLAlchemy 1.x and 2.x.

Rejected Alternatives

No

Activity

  1. added
    sipSuperset Improvement Proposal
    on Dec 26, 2025
  2. passren commented on Jan 12, 2026

    @passren
    ContributorAuthor

    Can this be added into projects board and assign a SIP# so that I can work on it?

  3. changed the title [-][SIP] Support SQL-based querying on MongoDB.[/-] [+][SIP-195] Support SQL-based querying on MongoDB.[/+] on Jan 14, 2026
  4. rusackas commented on Jan 14, 2026

    @rusackas
    Member

    I'm inclined to think we don't need a SIP for this at all if it's just adding/supporting a new DB. It's just one more on the pile :)

    @betodealmeida may have advice here. I'd say feel free to open the PR in draft mode either way!

    As for the future of supporting NoSQL databases in general: there is SO MUCH foundational work to making this possible, and needs to be broken down significantly in more SIPs. But we want to do it eventually.

    For example

    • SQL Lab needs to become Query Lab (and
    • We need the NoSQL equivelent of SQLAlchemy
    • The Dataset concept (semantic layer) needs to evolve
    • Materialized and Virtual Datasets will operate entirely differently
  5. passren commented on Jan 21, 2026

    @passren
    ContributorAuthor

    @rusackas PR was created for this SIP. Would you take time to review it? Thank you.
    #37307

  6. betodealmeida commented on Jan 21, 2026

    @betodealmeida
    Member

    Yeah, no need to sipify this! 😊

  7. moved this from Pre-discussion to Denied / Closed / Discarded in SIPs (Superset Improvement Proposals)on Jan 21, 2026
  8. rusackas commented on Jun 19, 2026

    @rusackas
    Member

    #37307 is already merged, and this didn't really need a SIP. Better late than never closing this one :D

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    design:proposalDesign proposalsenhancement:dbSuggest new DB connectionssipSuperset Improvement Proposal

    Type

    No type

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions