010-68421378
sales@cogitosoft.com
Categories
AddFlow  AmCharts JavaScript Stock Chart AmCharts 4: Charts Aspose.Total for Java Altova SchemaAgent Altova DatabaseSpy Altova MobileTogether Altova UModel  Altova MapForce Altova MapForce Server Altova Authentic Aspose.Total for .NET Altova RaptorXML Server ComponentOne Ultimate Chart FX for SharePoint Chart FX CodeCharge Studio ComponentOne Enterprise combit Report Server Combit List & Label 22 Controls for Visual C++ MFC Chart Pro for Visual C ++ MFC DbVisualizer version 12.1 DemoCharge DXperience Subscription .NET DevExpress Universal Subscription Essential Studio for ASP.NET MVC FusionCharts Suite XT FusionCharts for Flex  FusionExport V2.0 GrapeCity TX Text Control .NET for WPF GrapeCity Spread Studio Highcharts Gantt Highcharts 10.0 版 HelpNDoc Infragistics Ultimate  ImageKit9 ActiveX ImageKit.NET JetBrains--Fleet JetBrains-DataSpell JetBrains--DataGrip jQuery EasyUI jChart FX Plus OPC DA .NET Server Toolkit  OSS ASN.1/C Oxygen XML Author  OSS 4G NAS/C, C++ Encoder Decoder Library OSS ASN.1 Tools for C with 4G S1/X2 OSS ASN.1/C# OSS ASN.1/JAVA OSS ASN.1/C++ OPC HDA .NET Server Toolkit OPC DA .Net Client Development Component PowerBuilder redgate NET Developer Bundle Report Control for Visual C++ MFC  Sencha Test SPC Control Chart Tools for .Net Stimulsoft Reports.PHP Stimulsoft Reports.JS Stimulsoft Reports.Java Stimulsoft Reports. Ultimate Stimulsoft Reports.Wpf Stimulsoft Reports.Silverlight SlickEdit Source Insight Software Verify .Net Coverage Validator Toolkit Pro for VisualC++MFC TeeChart .NET Telerik DevCraft Complete Altova XMLSpy Zend Server

NoSQLBooster for MongoDB

The Smartest IDE for MongoDB

MongoBooster is a shell-centric cross-platform GUI tool for MongoDB v2.4-3.4, which provides fluent query builder, SQL query, update-in-place, ES2017 syntax support and true intellisense experience.

Free edition is available now.

Embeded Shell

MongoBooster embeds V8 JavaScript engine. No external MongoDB command line tools dependenced.

MongoDB 2.4 to 3.4

MongoBooster can connect MongoDB server and fully support its mongo shell commands from v2.4 to v3.4.

Enterprise Edition

Support MongoDB Enterprise Edition by adding authentication mechanisms: Kerberos(GSSAPI) & LDAP(PLAIN).

Why Choose MongoBooster?

True IntelliSense

We offer true IntelliSense experience. The build-in language service knows all possible completions, methods, properties, variables, key words, even the MongoDB collection names, field names and operators. The IntelliSense suggestions will pop up as you type. You can always manually trigger it with Ctrl-Shift-Space. Out of the box, Ctrl-SpaceAlt-Space are acceptable triggers.

IntelliSense

  •  Press F1 will lead you to MongoDB online document as the cursor is over a valid MongoDB method.

Fluent Query builder

unique feature

MongoBooster supports mongoose-like fluent query builder API which enables you to build up a query using chaining syntax, rather than specifying a JSON object. The aggregation framework is now fluent as well. You can use it as currently documented or via the chainable methods.

// instead of writing:
db.user.find({age:{:18,:65}},{name:1,age:1,_id:-1}).sort({age:-1, name:1});

 
// we can write:
db.user.where('age').gte(18).lte(65).select('name age -_id').sort("-age name");    

 
// passing query conditions is permitted too
db.collection.find().where({ name: 'mongobooster' })

 
// chaining
db.collection
    .where('age').gte(18).lte(65)
    .where({ 'name': /^mongobooster/i })
    .where('friends').slice(10)

 
// aggregation
db.companies.aggregate(qb.where('founded_year').gte(2000).lte(2010)) //qb:querybuilder
  .group({_id:"$category_code",count:{$sum:1}})
  .sort('-count')
  .limit(100)

Query MongoDB with SQL

With MongoBooster, you can run SQL SELECT Query against MongoDB. SQL support includes functions, expressions, aggregation for collections with nested objects and arrays. 

Let's look at how to use the GROUP BY clause with the SUM function in SQL.

Instead of writing the MongoDB query which is represented as a JSON-like structure

db.employees.aggregate([
    {
        $group: {
            _id: "$department",
            total: { $sum: "$salary" }
        },
    }
])

You can query MongoDB by using old SQL which you probably already know

  SELECT department, SUM(salary) AS total FROM employees GROUP BY department

Visual Query builder

MongoBooster comes with visual query builder. The two-way query builder could help you construct and display complex MongoDB find statements even without the knowledge of the MongoDB shell commands syntax.

Query Builder


Schema Analyzer

Schema Analyzer is a very useful build-in tool. Due to schema-less feature, collections in MongoDB do not have a schema document to describe field's datatype, collection structure and validations. With our brand new Schema Analyzer Tool, you will get a document to describe the schema of certain collection from sampled(random, first, last) N or all records.

The document shows the probability of sampled objects , different types percentage, you could get a brief of certain collection's schema. If you want more accurate result, you could sample more records or analyze whole collection, but it may took a long time to finish if the collection has millions records or thousands fields.

It also shows document validation of the collection, which is a new feature in MongoDB 3.2. There will be a validator window showing below the document. If you click the link, field will be highlighted in the window.

You could export this document to most popular document file types, like MS Word, PDF, HTML, along with JSON, TXT and CSV. Mongoose.js schema file supported as well. Click here to view sample schema file


Test Data Generator

Create a large collection with random but "real data" is available in Mongobooster 3.0. We now provide more than 100 templates to create random faked "real" data, and you can use this tool to create test data with incredible large size. You could also define how much data is blank too, and how many docs to create. All settings will generate a script in the shell, and you could customize it with more complex business logic.

test data generator


GUI for MongoTop

For MongoDB, mongotop do pretty much the same job as the Unix command top, it is used to monitor the Mongo instance.The output of mongotop indicates the amount of time the mongod process spend reading and writing to a specific collection during the update interval. mongotop provides statistics on a per-collection level.

MongoBooster offers a build-in GUI tool for MongoTop. No external MongoTop command line tools dependence.

MongoTop


GUI for MongoStat

The MongoStat utility provides a quick overview of the status of a currently running mongod or mongos instance. mongostat is functionally similar to the UNIX/Linux file system utility vmstat, but provides data regarding mongod and mongos instances.

MongoBooster offers a build-in GUI tool for MongoStat too. No external MongoStat command line tools dependence.

MongoStat


MongoDB Enterprise Edition

MongoBooster now officially supports MongoDB Enterprise Edition by adding two new authentication mechanisms Kerberos(GSSAPI) & LDAP(PLAIN), in addition to already supported regular username/password(SCRAM-SHA-1(added in MongoDB 3.0)/MONGODB-CR) & X.509. This feature is available in all licensed edition. No extra charge.

MongoDB Enterprise


Embeded MongoShell

MongoBooster embeds V8 JavaScript engine based mongo shell. No external MongoDB command line tools dependence. It can Work for MongoDB: 2.4-3.4


Update-in-place

MongoBooster support in-place editing in result tree view. Double-click on any value or array element to edit. Full MongoDB data type support in the in-place editor, enabling lossless editing and saving.

In-place editor


Support GridFS

MongoBooster fully supports MongoDB’s GridFS. With our GridFS Viewer, you can read and write to GridFS collections. Files can be added easily with drag and drop.

GridFS support


Read-only Status Lock

You do have full access to a production database, but usually you don't want to change anything by mistaken, you could use the read-only status lock. There are two ways to use it:

  • Set an entire connection read-only, edit the config make it read-only
  • Set any tab read-only temporarily, use the lock button on the tab toolbar

You could unlock temporarily of a locked config by using the unlock button too. The temporary lock/unlock only affects current tab.


Mark Connection with Color

When working on dev/prod databases at the same time you may unintentionally delete or update something on prod instead of dev. Now you could mark prod ones in red and dev in green. It would help you prevent this kind of mistake.

Mark With Color


Auto Refresh on result dataview

Under the dataview setting menu, a dataview auto refresh setting list is added. Whichever view you use, the dataview will refresh automatically in certain seconds.(Note: if you want to change your shell code, you need to pause the auto refresh which is besides the countdown)


Tons of Snippets

We offer tons of build-in snippets to help you writing MongoDB shell script effectively. MongoBooster also supports user-defined snippets.

  • Handy date range snippets, e.g. TodayDateRange, LastNWeeksDateRange, LastNMonthsDateRange ...
  • Simplify complex MongoDB shell command, e.g. aggregate,createUser, mapReduce ...
  • If you come from a SQL background, these handy SQL to MongoDB conversion snippets may give your some help, e.g. SqlToAggregationCount, SqlToAggregationSum ...
  • Create user-defined snippets by hitting F8

Snippets


On-the-fly Error Detection

The rich language services constantly analyze your code in the background. All errors are reported right in the editor as you type, any line of code with a possible issue is marked in the editor gutter, so you can easily spot it.

Error Detections


Parameter Hints

In the script editor, parameter hints will pop up as you're typing a method invocation. You can navigate between different overloads with  and  and the best overload will be presented based on the arguments you pass in.

Parameter Hints

  •  Manually trigger it with Ctrl-Shift-SpaceCtrl-Space or Alt-Space.

Mouse Hover

The mouse hover will show many useful information, such as types of symbols, function definition, type information and document.

Hover


Bracket matching

Matching brackets will be highlighted as soon as the cursor is near one of them.

  • Highlights and jumps between [], (), and {}.
  • Auto-completes [], (), and {}, "" and ''.

Bracket Matching

  •  Go to matching bracket with Ctrl-P
  •  Select to matching bracket with Ctrl-Alt-P

Notable Editor Features

  • Syntax highlighting
  • Automatic indent and outdent
  • Search and replace with regular expressions
  • Highlight matching parentheses
  • Toggle between soft tabs and real tabs
  • Display hidden characters
  • Drag and drop text by using the mouse
  • Line wrapping
  • Code folding

Embrace ES2017

MongoBooster inlcudes a few useful MongoDB shell extensions to make the life inside of the MongoDB shell a little bit easier.

ES2017 (formally ES7) is a fantastic step forward for the JavaScript language. It lets us write dramatically more consise and readable MongoDB shell script, thanks to built-in support for block variable scoping, arrow functions, template strings, and numerous other improvements to the language.

ES2015


Async Coding with Await

MongoBooster has a build-in function await method(It's a common js method, not a keyword). It can await a promise or a promise array. Note this await function is different from es7 await, this await function may be used in functions without the async keyword marked.

Please try the following code:

function sendSmsAsync(phone, message){ //promisify sendSms
    return new Promise((resolve, reject)=> {
            sendSms(phone, message, (status)=>{
                resolve(status)
            })
    });
}

 
db.users.find({}).forEach((user) => {
   let status=await(sendSmsAsync(user.phone, "A short message")); //await a promise
   db.smsDeliveries.insert({status});
});

Lodash, ShellJs, Mathjs and Moment

MongoBooster integrates lodash, shelljs, mathjs and momentjs utility library. You can directly use lodash(_), shelljs(shelljs), mathjs(math) and momentjs (moment) in your shell script.

  • Lodash is a toolkit of Javascript functions that provides clean, performant methods for manipulating objects and collections.
  • ShellJs ShellJS is a portable (Windows/Linux/OS X) implementation of Unix shell commands on top of the Node.js API.
  • Moment.js is a full featured date library for parsing, validating, manipulating, and formatting dates.
  • Mathjs is an extensive math library for JavaScript and Node.js.

Lodash And MomentJS


Using Node Modules

You can assemble npm packages like building blocks in your MongoDB shell script. The npm registry hosts almost half a million packages of free, reusable code — the largest software registry in the world.

Launch MongoBooster. - Execute Main Menu -> Help -> Open User Data Directory - New Terminal at this folder

npm i node-fetch  # run it in MongoBooster user data directory

After successfully installing this package in the MongoBooster User Data Directory, you can require and access it in the MongoBooster script.

const fetch=require('node-fetch');
let res=await(fetch('https://api.github.com/users/github')); //await promise 
res.json()

Command Palette

Everything MongoBooster can do is in the Command Palette. See it by using shortcuts: Ctrl-Shift-P. Instead of clicking around all the application menus to look for something, you can just hit Ctrl-Shift-P and search for the command.

Command Palette


GUI for Dump and Restore

MongoBooster includes GUI tools for mongodump and mongorestore command-line program.

  • Mongodump is a utility for creating a binary export of the contents of a database. mongodump can export data from either mongod or mongos instances.
  • The mongorestore program writes data from a binary database dump created by mongodump to a MongoDB instance.

MongoDump

MongoRestore


Easy Data Transfer / Sync Between Databases

MongoBooster makes it easy to transfer and sync data between databases in just a few quick steps. You can easily clone databases, add missing records from one database to another, or overwrite collections in the destination database. You can even sync records from any two databases (based on a matching "_id" field). AND all of the functions of this data transfer/sync can work between ANY connections, so it's trivial to mirror a remote database locally (can be useful for debugging purposes) or just to periodically maintain synchronicity between multiple databases deployed across the web.

Import

Simply Import and Export

Simply import and export collections from/to JSON/CSV file, Like test data generator, we put all the export/import/copy logic in the shell, you could review the code to make your changes. The progression is shown in the console.log/print tab.

Import

Export


Import Tables from RDBMS

In case you want to transform a project's database from MySql to MongoDB, or need to import data from 3rd party database. now you could do it through our RDBMS data import tool. We now support MySql, PostgreSql and MSSQL. Like test data generator, you could just config it on UI or write more complex business logic in the shell.

Import Data


Export to SQL file

We added import RDBMS to MongoDB, on the other hand, we also provide export MongoDB database/collection to .sql file. Supported dialect includes MySql, MSSQL, PostgreSql and Oracle.

Shell Log Window

Learn MongoDB shell commands as you use different views in MongoBooster GUI

Log Window


Even more features!

  • Auto-updates, so your copy will always be up-to-date. (Auto-updates are not supported for Linux.)
  • SSH tunneling for MongoDB connections, support SSH key format: ECDH and ECDSA
  • Simple management of shards and replica sets
  • Connection with SSL support
  • Auto-restore user workspace.
  • Show the total number of rows
  • Light and dark themes
  • Multiple shell, multiple result
  • Multiple windows manager, Tile Horizontally and Tile Vertically
  • Drog and Drop Tabs Re-ordering
  • UI: Create and modify MongoDB indexes
  • UI: Add and remove databases and collections.
  • UI: Add and remove array elements of any type.
  • UI: Add and remove collections
  • Transpile script to ES5

Trusted by hundreds of company worldwide

Quick Navigation;

© Copyright 2000-2023  COGITO SOFTWARE CO.,LTD. All rights reserved