DbSchema for MongoDb Diagram Designer and Query Tool

  • DbSchema discovers the Mongodb structure and shows it as visual diagrams.
  • Features integrated visual query builder, query editor, relational data browse, random data generator, HTML5 documentation and more.
  • Schema and diagrams are saved as XML file and can be stored in GIT.
  • Visual interaction with MongoDb.

DbSchema can be evaluated 15 days for free.

Video Download & Evaluate Buy

DbSchema Database Tool

Key Features

Schema Reverse Engineer

DbSchema is reading random documents from database and builds out of it a virtual schema. The schema is represented as diagrams. The schema and the layouts are saved as project file, so you can connect to another database and compare the schemes.

Diagrams for MongoDb

The reversed engineer schema is displayed in DbSchema as here:

MongoDb Diagram

This collection was generated by executing from the DbSchema query editor the following:

                        "description":"Product identifier",
                        "description":"Name of the product",

Visual Query Builder

Visually compose MongoDb queries. The query can make use of sub-documents, as well as filters ( where clause ), group by, etc.

MongoDb Visual Query Builder

PDF/HTML5 Documentation

Generate HTML5 interactive documentation including the vector diagram image. Moving the mouse over collections or fields you can read the schema comments.

HTML5 Documentation

Write Map-Reduce Jobs

Here a sample map-reduce job:

                        local.words.insertOne({word: 'sample'});
                        local.words.insertOne({word: 'day'});
                        local.words.insertOne({word: 'plane'});

                        var m =function map() {
                         emit(this.word, {count: 5})
                        var r=function reduce(key, values) {
                                var count = 5
                                for (var i = 0; i < values.length; i++)
                                    count += values[i].count
                                return {count: count}
                        local.words.mapReduce(m, r );


                            "function map() { \r\n" +
                            " emit(this.word, {count: 1}) \r\n" +
                            " function reduce(key, values) { \r\n" +
                            "    var count = 0 \r\n" +
                            "    for (var i = 0; i < values.length; i++) \r\n" +
                            "        count += values[i].count \r\n" +
                            "    return {count: count} \r\n" +
                            // , "mrresult"

Open Source JDBC Driver

We open source our own MongoDb JDBC driver. The driver features:

  • Can execute native queries like db.sample.find()
  • The driver is build to support all queries as MongoDb Shell
  • The connection URL is the same as the MongoDb Java URI
  • Adding expand=true in the URL will create a column for each key in the result document key. By default will return only an document which can be read using resultSet.getObject(1)
Download Driver Binaries BitBucket Repository

Connect to Atlas Could

DbSchema can connect to the database using native Java URI. In the connection dialog 'Use JDBC URL' tab you can enter directly a custom URI. Native MongoDb URI Similar connect to MongoDb Atlas Cloud using the URI provided by the Cloud panel. We wrote our own implementation of the JDBC driver for this, on top of MongoDb Java driver.

Relational Data Browse

Use it to simultaneous explore data from multiple collections, based on virtual foreign keys. Virtual Foreign keys can be created in layout by drag and drop of one field ( referring ) over other field ( referred ). They are similar with foreign keys in relational databases, but will be created only in DbSchema. Like for example a field 'ClientObjectId' will refer to 'ObjectId' in 'Clients' collection.

Virtual Relations

Data can be filtered. Native MongoDb are generated automatically.

Browse Filter

If one collection contains ObjectId's referring other collections they are discovered and shown as virtual relations in the diagram. In Relational Data Browse you can cascade from one collection into the referred and view the related documents.

Data Explorer for MongoDb

Query Editor

Execute native MongoDb queries against the database.

MongoDb Query Editor

Collections from different databases can be queried by using db or directly the database name. Sample :

Few query samples:

                    use local

The Query Editor is using Java Script on top of the MongoDb Java Driver.

Compare and Deploy Schema on Multiple Databases

DbSchema reverse engineer the schema in its own internal image, independent from the database. This image will be saved to project file and can be open even without connecting to the database. This will contain also all schema comments, layouts, etc.

After staring one project, you may connect to another database and press 'Refresh Schema from Database'. This will show a dialog where you will see the database differences.

Random Data Generator

Configurable using predefined reverse regular expressions, integer and date generators, groovy generators for JSON objects. From any collection menu you will find the option to start the generator.

Data Loader

For loading data from files into the database.

One License for All Databases + MongoDB, All Operating Systems

DbSchema can connect via JDBC drivers to all SQL databases + MongoDB.

DbSchema can run on all operating systems: Windows, Linux, MAC.

DbSchema Database Tool

Free Trial

Download DbSchema and try it 15 days for free.

Technical Support

Registered and unregistered users may benefit from technical support.

1 Year Renewals Included

Purchase DbSchema and you will get 1 year free update with all new developed features and bug fixes.

Money Back Guarantee

Not happy with DbSchema ? 30 days after purchase you can claim your money back.