As you may know, an index is a database object with its own storage that provides a fast access path into a collection. Indexes exist primarily to enhance performance, so using indexes effectively is paramount when optimizing MongoDB performance.
Posted January 11, 2024
I can't remember the first time a database or storage vendor told me, "Disk is cheap," but it was probably in the 1990s. Vendors like to say disk is cheap because it helps them sell more of it and to encourage bigger deployments. The fact is that data storage is getting cheaper all the time. When I entered the business, one GB of storage cost about $1000. Today, it's more like 10 cents—10,000 times less!
Posted November 09, 2023
The dramatic advances in generational AI—chatGPT in particular—have motivated almost all technology companies to find an AI story that can break through the heavily AI-oriented technology news feeds. It can be hard for database companies to tell an AI story. While most AI is data-driven and therefore dependent on database technology, advances in database technology have not in themselves driven advances in AI, and AI has generally not yet revolutionized database technology.
Posted September 14, 2023
Traditionally, MongoDB has held its signature event—MongoDB World—in June in New York City. MongoDB usually announces significant releases of their flagship database product at this event. However, this year, the company has transitioned to a global tour of "local" events that start in New York and then proceed to a few dozen regional events across five continents.
Posted July 13, 2023
Mongo Atlas—MongoDB's Database as a Service offering—has become increasingly central to MongoDBs commercial strategy. Since its launch in 2016, MongoDB has onboarded tens of thousands of customers to Atlas, and Atlas now represents almost two-thirds of MongoDB's revenue.
Posted May 11, 2023
A long, long time ago—in the early 90s—I first worked as a DBA with responsibility for enterprise databases. I will never forget how surprised and disappointed I was to discover that the data in the database files were completely unencrypted. A system administrator with access to the database files could read the data in those files, even if they didn't have a database username and password.
Posted March 09, 2023
MongoDB is often found within a complete application stack that combines multiple technologies to deliver functionality to users both within and outside of the organization. Very often, organizations want to create automated workflows that propagate information automatically between disparate technologies.
Posted January 12, 2023
In the last Mongo Matters column, we looked at MongoDB's new SQL interface for querying data in MongoDB Atlas. Almost all of the "NoSQL" databases today support some form of SQL interface in order to leverage the multitude of SQL-based BI tools and the wealth of SQL expertise in the data analytics market. This "SQL for NoSQL" usually bemuses SQL aficionados and is often seen as some sort of repudiation of the document database concept.
Posted November 10, 2022
In previous columns, we've noted that the SQL language is in the ascendant. New SQL native databases such as CockroachDB and Yugabyte are showing robust adoption, while non-relational (NoSQL) databases increasingly provide SQL interfaces to their data. In light of this increasing trend, it's no surprise to see the introduction of a new SQL capability within the latest release of MongoDB—the Atlas SQL framework.
Posted September 08, 2022
MongoDB initially gained traction as a backend for web applications, in which it was mostly concerned with so-called "CRUD" operations—creating, reading, updating, and deleting documents. Since then, MongoDB has broadened its capabilities remarkably, but it is still typically deployed as an operational database rather than as an analytic DB or data warehouse.
Posted March 11, 2022
The design of a schema in MongoDB is just as important as it is in RDBMS. Indeed, schema design can be even more complicated in MongoDB. At least in SQL databases, we have the "first normal form" representing the starting point for a well-designed first cut data model. In MongoDB, we have more choices, but as a consequence, we have more potential pitfalls.
Posted January 03, 2022
One of the big-ticket items at the recent MongoDB 5.0 launch was the introduction of specialized "time-series" collections. The key concept in a time-series database is that, for a lot of data, the timestamp of the data is a critical element, both in terms of operational cost and analytic value. Time-series collections represent another attempt by the MongoDB company to extend the use of MongoDB to a wider set of applications and scenarios. They are a welcome addition.
Posted November 01, 2021
It's been 3 years since MongoDB 4.0 was announced at the 2018 MongoDB World conference—and that is a long time in the software industry.
Posted September 16, 2021
MongoDB has had quite a wild ride over the past 10 years and has succeeded beyond expectations. However, what got them here won't get them where they want to be in the next 10 years. I can't wait to see the next phase of MongoDB's technology evolution.
Posted July 15, 2021
Setting up a distributed MongoDB cluster by hand is a complex and error-prone process. However, MongoDB provides a Kubernetes operator, which allows such a deployment to be established within a Kubernetes cluster amazingly easily. The "operator" is a controller program that runs within the Kubernetes cluster and contains the MongoDB-specific logic for establishing MongoDB cluster topologies. One need only supply the operator with a configuration file, and the operator will do the rest—creating and configuring MongoDB nodes, setting up best-practice security, and handling the connectivity between nodes.
Posted April 29, 2021
It's hard to overstate the impact WiredTiger technology has had on MongoDB. When MongoDB announced its storage engine API in 2014, the WiredTiger team immediately saw the opportunity and raced to provide the best solution. The rest, as they say, is history.
Posted March 01, 2021
From the beginning, MongoDB has had a laser focus on making life easier for developers. MongoDB has continued to produce new developer tooling as well. In June, MongoDB introduced a new shell—the mongosh. The traditional Mongo shell is a command-line utility that provides an easy way to execute commands against the database. The existing shell included a JavaScript engine, so it was capable of running scripts that performed administrative functions or simplified complex commands. The new shell includes most of the features of the traditional shell, but adds modern experience such as syntax highlighting, error handling and autocomplete.
Posted January 07, 2021
Since the very inception of MongoDB, Eliot Horowitz, MongoDB's CTO and co-founder, has been a consistent and articulate owner of the MongoDB technical vision and the apparent creative force behind MongoDB's architecture and feature set. In appointing replacement CTO Mark Porter, MongoDB has chosen someone with a high degree of "geek cred" that will hopefully satisfy developers who want to hear from someone who can speak their language. However, he also brings experience from the enterprise database and cloud world that will undoubtedly be useful.
Posted November 04, 2020
MongoDB has worked hard over the past few years to improve the security of its flagship MongoDB database server. It desperately needed to do this because MongoDB has been subjected to more high-profile attacks than any other database platform.
Posted September 09, 2020
This year, an in-person MongoDB World conference in New York City was inconceivable. With NYC and the world still in various levels of COVID-19 lockdown, MongoDB World was held in the cloud as a virtual event—MongoDB.Live—in the first week of June. Holding the annual conference in the cloud is quite apt in many ways.
Posted July 01, 2020
To predict how MongoDB may navigate COVID-19 and post COVID-19 environment would require an ability to predict how our industry as a whole will fare—which is a big ask. Nevertheless, let's give it a shot.
Posted May 13, 2020
Applications written in NodeJS are particularly synergistic with MongoDB since JavaScript objects (JSON) are native to MongoDB and to Node. So, it might seem strange at first that an ORM-like layer—Mongoose—has emerged. Why would we want a mapping layer between JSON objects and a JSON database?
Posted March 05, 2020
When I was a young man—a long, long time ago now—I worked as an Oracle DBA (Oracle version 6, if you must know). I remember my astonishment at finding out that information in the database was stored in plain text within the database files. That meant if I could gain read access just to those files, I could read all the information in the database. It didn't matter what security controls I, as the DBA implemented at the database level—an attacker who could gain read access to the files on disk could read everything.
Posted January 02, 2020
Despite the failed promises of the data lake, the concept retains some resonance in larger enterprises, and so MongoDB has chosen to leverage the term for one of its latest offerings. MongoDB's Atlas Data Lake bears only superficial similarity to Hadoop-powered data lakes. Nevertheless, it's a useful feature that stands to see significant uptake.
Posted October 31, 2019
MongoDB 4.2 may seem like a grab bag of features, but all of the features represent useful additions to your MongoDB toolkit. Some features—the Atlas Data Lake, for instance—need significant enhancements to cover all conceivable use cases. Nevertheless, MongoDB 4.2 will be a useful upgrade and I'd expect it to be widely deployed.
Posted September 03, 2019
MongoDB gained popularity with developers very early on, but serious database engineers were often skeptical about MongoDB architecture and implementation. One area that came under some criticism was cluster consistency.
Posted July 18, 2019
If you have been wondering whether the tipping point for database-as-a-service (DBaaS) has arrived, it's instructive to look at the success of MongoDB Atlas.
Posted May 01, 2019
MongoDB's recent and well-publicized new license—the Server Side Public License (SSPL)—was explicitly designed to prevent cloud vendors such as Amazon from deploying a MongoDB cloud service without paying MongoDB license fees. In early January, Amazon announced DocumentDB, a MongoDB-compatible cloud database service.
Posted March 04, 2019
For some time now, the majority of open source investment has come from venture capital and mega-corporations. There is good reason to think that this level of patronage will not persist indefinitely. Should VC-funded open source companies fail to return on investment, then VC investment will dry up. The high-profile companies bolstering open source do so primarily for selfish motives and can't necessarily be relied on to do so forever. So it's essential that companies that develop and market open source products be able to generate some return on their investment.
Posted January 02, 2019
It's been a while since MongoDB has felt threatened by another document database vendor. Historically, the closest contender for document database dominance was Couchbase, the offspring of the original CouchDB database, which arguably ignited the document database segment.
Posted November 01, 2018
The MongoDB 4.0 release introduced multi-document transactions to the popular open source NoSQL DB. The lack of a transactional capability has been a key limiting factor in MongoDB uptake, so it's not surprising that the company, it's users and the technology press have been enthusiastic about this latest release. However, it's worth remembering that the transactional capabilities of MongoDB have been commonplace for many decades.
Posted September 04, 2018
The introduction of transactions in MongoDB 4.0 represents possibly the most significant change in MongoDB's architecture since its original release. The lack of a transactional capability previously defined the capabilities of the database: Without transactions, MongoDB was blocked from consideration for a wide range of application scenarios. With the implementation of transactions, MongoDB can for the first time truly claim to be a general purpose DBMS.
Posted July 02, 2018
It's understandable that those new to MongoDB - a so-called "schema free" database - might assume that they no longer need to be concerned with the art-science of data modeling. However, in reality data modeling is just as important in MongoDB as in other databases. Indeed, because of some of the modeling principles for MongoDB are less well understood, arguably, more attention needs to be given to the data modeling process.
Posted March 07, 2018
MongoDB 3.6 was announced publically in November and should be in production by the time this article is posted. There are no shock features in this version, but it is an attractive release that should see rapid uptake.
Posted January 02, 2018
MongoDB Files for IPO and Reveals Its Official Strategy for Success
Posted November 01, 2017
MongoDB recently announced some interesting, though incremental, enhancements. These included improved "joins" in the aggregation framework, better document validation using JSON schema, and more reliable behavior in the event of network failures. These features attempt to close the gap between the functionality of MongoDB and traditional relational databases - joins, schemas, and commits. On top of these incremental updates, MongoDB announced a couple of features that intrude on functionality usually provided by application servers or desktop programs.
Posted September 07, 2017
MongoDB has become a favorite among developers in no small part because of its alignment with modern software development practices. Its flexible schemas are compatible with agile software development and the JSON-based document structure is well-matched with modern JavaScript-centric web architectures. However, databases don't exist solely for the convenience of software developers: Data in a database is a critical business asset.
Posted July 05, 2017
MongoDB faced its worst-ever public relations challenge earlier this year when a spate of ransomware attacks plagued tens of thousands of Mongo instances. It's important to realize that we are not talking about some sort of obscure vulnerability here - these MongoDB databases were configured with NO passwords at all, and were easily found listening on the default port (27017) on publicly-accessible servers.
Posted May 05, 2017
Welcome to the inaugural MongoDB Matters column, which will appear six times a year in Database Trends and Applications. Over the past 8 years, we've seen a truly once-in-a-generation explosion of new database technologies which have challenged—if not overthrown—the dominance of the venerable relational database. Of all these upstart databases, MongoDB seemed to us to most deserve dedicated coverage because of its strong momentum and adoption.
Posted March 02, 2017