This iteration we were mostly wrapping up the QA of Ops Manager 1.6 - Ops Manager 1.6 will include automation, a Windows build (backup and monitoring only), as well as an Automation API and will be releasing alongside MongoDB 3.0.
Customers will be happy to know that 2 Factor Authentication is now optional for users - you can try out the MongoDB Management Service for free without sharing your phone number with us.
Also added in this release were tons of new automation features:
- AWS cross-account access during server provisioning instead of using API Keys
- Provisioning of EBS Encrypted Volumes and EPS optimized instances
- We also now support the c4 instance types, allow provisioning across 24 SSDs available in the HS1 instance type, and we will validate the security group rules when publishing the deployment. Lastly, when the Automation Agent gzips log files we will now preserve the original timestamp.
There were also updates to the monitoring and backup agents:
- Monitoring agent (version 22.214.171.124) will stagger the timing of DNS look-ups, to avoid triggering a rare issue in glibc 2.19 on Ubuntu 14.04.
- Backup agent (version 126.96.36.199) has logging improvements for Windows
Thanks for reading!
Introducing the Legacy C++ Driver 1.0
The C/C++ Driver team at MongoDB is pleased to announce the 1.0 release of the legacy C++ driver. The legacy C++ driver provides a (mostly) compatible interface to previous releases of the C++ driver with many bugfixes, additional features, and a simplified implementation. In this post we will explain the reasons for creating the legacy C++ driver, the major improvements it offers, and our roadmap for the project going forward. The Road to the Legacy Driver For much of MongoDB’s history, the C++ driver was developed within the server repository . The server contains an internal client library used by the mongo shell and the mongos query router. The C++ driver was initially a separate build target that exposed this internal library to developers of standalone C++ applications that connected to MongoDB. However, using the server codebase as the basis of the driver had several consequences that negatively affected developer experience. For one, building and installing the C++ driver required the full server source code, making it unnecessarily difficult for C++ developers to get up and running. Much of the driver was shaped by implementation details of mongod and mongos, making it bloated and difficult to learn. Additionally, the driver lacked important features such as support for bulk writes. Overall, the usability, design and feature set of the C++ driver significantly lagged the drivers for other popular languages like Python, Java, and Ruby. Maintaining the driver as a component of the server codebase also put the needs of the server in conflict with that of the driver. Sometimes the server required changes to the codebase that were undesirable for users of the driver, and at other times there were changes desired by driver users that were unsuitable for the server. In other words, it was the was the worst of both worlds. As numerous StackOverflow and mongodb-user posts from unhappy developers indicated, connecting an application to MongoDB with the C++ driver was not a positive experience. By the MongoDB 2.6 release, it was finally decided that this state of affairs was untenable. The Fork In April 2014, with a mixture of SCons, git, and shell incantations, the minimal set of source files needed to build the driver was forked from the 2.6 codebase into a separate project . As detailed in an earlier post , we decided to maintain three branches of the C++ driver from that point forward: 26compat - a largely unchanged version of the driver with some changes backported from the server legacy - a mostly backwards compatible version of the driver to be actively developed and improved master - An entirely new and modern MongoDB driver written in C++11 Since the initial fork, there has been a frenzy of activity on the legacy branch of the C++ driver. To give a high-level overview: 320 JIRA issues resolved as “Fixed” 474 commits 402 files changed, 29,635 insertions, 19,003 deletions 14 contributors, 6 with more than 5 commits What are the major improvements? The surface area of the driver has been greatly reduced, with fewer client headers and functions published as part of the API, and a great deal of unnecessary functionality has been removed. The build system has been reworked as well, with idiosyncratic targets like ‘smokeCppUnitTests’ replaced with more obvious ones like ‘unit’. We’ve also added support for MongoDB 3.0 features. While there were breaking changes to the API, we believe that consumers of the 2.6 driver should have a fairly easy time migrating to the legacy 1.0 driver. Here is a list of some of the major improvements made to the legacy driver: Acknowledged writes are now the default Support for all write concern types Full support for write commands and bulk writes New helpers for using the MongoDB Aggregation Pipeline Support for SCRAM-SHA-1, the new default authentication mechanism in MongoDB 3.0 Support for big endian architectures (tested on SPARC) The driver’s test-suite now uses mongo-orchestration to run tests against multiple versions of MongoDB standalones, replica sets, and sharded clusters New helpers for writing Geospatial queries Greatly simplified build process Improved support for building the driver as a shared library What’s next for the legacy driver? Now that the legacy driver has stabilized, we will limit future changes to bug fixes and backports of relevant server commits. In addition, the driver will be updated as needed to support communication with MongoDB 3.2. What about the C++11 driver? Future development efforts will be focused on the master branch of the driver, which will feature a completely new API based on C++11 and other modern C++ design principles. A forthcoming blog post will provide an in-depth description of the new driver’s design and features. We want your feedback! We also would like to hear feedback from the community on the legacy driver - please reach out to the developers on the mongodb-user list with any questions, or file tickets for any bugs on the JIRA tracker in the CXX project . We also welcome pull requests submitted on the driver’s GitHub page . If you’re interested in learning more about the architecture of MongoDB, download our guide: Download the Architecture Guide About Adam Midvidy Adam Midvidy is an engineer on the MongoDB Platforms Team and a contributor to the Legacy C++ Driver.
MongoDB at AWS re:Invent 2020
While 2020 has been a challenging year, it has also given rise to new levels of innovative collaboration and agile thinking. Where better to experience both than at AWS re:Invent 2020? At MongoDB, we’re excited to partner with AWS on this free, 3-week virtual event, providing unlimited access to hundreds of sessions led by Cloud experts. Although we’ll miss the grand, buzzing halls of the Venetian Hotel and the celebratory sounds of slot machines this year, it’s still important to approach AWS re:Invent with a focused plan. Think of this year’s event as an opportunity to curate your own perfectly tailored experience. Check out this page for details of our fresh new lineup of deep-dives, targeted jam sessions and — of course — the annual MongoDB late-night party. Here are some of the highlights. AWS Jam — "Excel isn't a database!" Imagine this: It's your first week in a new job, and the VP of sales has already given you an important data task. The good news? From the start of the year, all your current sales data has been stored in MongoDB Atlas — allowing operational and analytical workloads to run on the live data set. The not-so-good news? That wasn't always the case. For years before they switched, their database (well, ”database”) of choice was… Excel. Fortunately someone took the initiative to export that data in CSV format and store it in S3, but now the sales team needs your help to analyze that data — and they need it fast. In our “Excel isn’t a database!” Jam Session, you’ll test and upgrade your skills by connecting MongoDB Atlas Data Lake to CSV data that’s been languishing in an S3 bucket. Then you’ll run an aggregation to complete the challenge and claim points. Game on! This jam session will be available on-demand for the duration of AWS re:Invent Databases & S3: Auto-archiving Breakout Session Databases are built for fast access, but this can also make them resource-intensive. As data grows, you may want to optimize performance (or cost) by migrating old or infrequently used data into cheap object storage. But this presents its own problems: automating the archival process, ensuring data consistency during failures, and either querying two data stores separately or building a query federation system. In this talk, you’ll learn about how we approached these problems while building Online Archive and Federated Query features into MongoDB Atlas, lessons learned from the experience, and how you can do the same. MongoDB Late Nite That’s right: it’s a party! In the spirit of Vegas, MongoDB will be hosting an interactive late-night bash complete with throw-back entertainment at our virtual after-hours event. Like Vegas, there’s something for everyone. Unlike Vegas, the odds are actually on your side. Get your adrenaline going and dial in for exclusive swag at our Home Shopping Network. Just sign on and dial into our custom QVC-reboot every hour for a chance to snag some really cool limited-release items. Stay tuned to the event website to find out what you can win, and when! Are you a Jeopardy lover? MongoDB Late Nite is your time to shine. Exercise your mental reflexes and get those synapses firing with hundreds of other party people inside episodes of dev-focused live trivia. And what kind of revelry is complete without a resident psychic on board? Join us at the Future of Coding for an interactive reading by a VERY accurate psychic. So kick back, grab a beverage and join us at the party from home. Let’s get in the spirit together! Sponsor Page/Online Booth Pop into our virtual sponsor booth at your convenience. Our product experts will be there to answer your questions one-on-one. Alternatively, if casually exploring resources is more your style, check out our self-serve content playlists. View these to dig deeper into MongoDB education, glean customer success stories and get up to speed on the latest product features.