carloscastilla - Fotolia
MongoDB Inc. is releasing several technologies designed to make its namesake NoSQL database a viable option for more enterprise applications, led by a MongoDB 4.0 update with expanded support for the ACID transactions that are a hallmark of mainstream relational databases.
Beyond MongoDB 4.0, the company, at its MongoDB World user conference in New York, also launched a serverless platform called Stitch that's meant to streamline application development. It's initially being offered for use with the MongoDB Atlas hosted database service in the cloud.
In addition, MongoDB made a mobile version of its database available for beta testing and enabled Atlas users to distribute data to different geographic areas globally for faster performance and regulatory compliance purposes.
While MongoDB is one of the most widely used NoSQL technologies, the open source document database still has a tiny presence compared to relational behemoths like Oracle Database and Microsoft SQL Server. MongoDB Inc., which went public in October 2017, reported $154.5 million in revenue for its fiscal year that ended in January -- a small piece of the overall database market.
But MongoDB 4.0's support for ACID transactions across multiple JSON documents could make it a stronger alternative to relational databases, according to Stephen O'Grady, an analyst at technology research and consulting firm RedMonk in Portland, Maine.
The ACID properties -- atomicity, consistency, isolation and durability -- ensure that database transactions are processed accurately and reliably. Previously, MongoDB only offered a form of such guarantees at the individual document level. MongoDB 4.0, which has been in beta testing since February, supports multi-document ACID transactions -- a must-have requirement for many enterprise users with transactional workloads to run, O'Grady said.
"Particularly in financial shops, if you can't give me an ACID guarantee, that's just a non-starter," he said.
O'Grady said he doesn't expect companies to replace the back-end relational databases that run their ERP systems with MongoDB, but he added that the document database is now a more feasible option for users who are looking to take advantage of the increased data flexibility and lower costs offered by NoSQL software in other types of transactional applications.
Moving from Oracle to MongoDB
That's the case at Acxiom Corp., which collects and analyzes customer data to help companies target their online marketing efforts to web users.
Acxiom already converted two Oracle-based systems to MongoDB: a metadata repository three years ago, and a real-time operational data store (ODS) that was switched over in January. And the Conway, Ark., company wants to move more data processing work to MongoDB in the future, said Chris Lanaux, vice president of its product and engineering group. Oracle and other relational databases are much more expensive to run and aren't as cloud-friendly as MongoDB is, Lanaux said.
John Riewertssenior director of engineering, Acxiom Corp.
John Riewerts, senior director of engineering on Lanaux's team, added that Amazon Web Services and other cloud platform providers offer individual flavors of relational databases. With MongoDB, "it's just a flip of a switch for us to decide which cloud platform to put it on," he said.
The ACID transactions support in MongoDB 4.0 is a big step forward for the NoSQL database, Riewerts said. Acxiom writes transactions to multiple documents in both the metadata system and the ODS; currently, it does workarounds to make sure that all of the data gets updated properly, but that isn't an optimal process, according to Riewerts.
"When you're moving 90 miles per hour, it's helpful to have guaranteed consistency," he said. "Now we don't have to worry about that anymore."
Scott Jones, a principal architect at Acxiom, said the serverless technology enabled two developers in the product and engineering group to deploy the ODS on the MongoDB Atlas cloud service without having to wait for the company's IT department to set up the system. "We're not dealing with anything really but the business logic of what we're trying to build," he noted.
More still needed from MongoDB
Lanaux said MongoDB still has to deliver some additional functionality before Acxiom can move other applications to the NoSQL database. For example, improvements to a connector that links MongoDB to SQL-based BI and analytics tools could pave the way for some data analytics jobs to be shifted. "But we're betting on [MongoDB]," he said. "Thus far, they've checked every box that they've promised us."
Ovum analyst Tony Baer said MongoDB also needs to stay focused on competing against its primary document database rivals, including DataStax Enterprise and Amazon DynamoDB, as well as Microsoft's Azure Cosmos DB multimodel database.
Particularly in the cloud, DynamoDB and Azure Cosmos DB "are going to challenge them," Baer said, noting that Amazon and Microsoft can bill their products as the default NoSQL offerings for their cloud platforms. Stitch may help counter that, though, by keeping MongoDB "true to its roots as a developer-friendly database," he added.
MongoDB also has further development work to do to fill out Stitch and the ACID transactions functionality. Multi-document ACID compliance won't be supported on sharded clusters that partition and distribute data in multiple database instances until a MongoDB 4.2 release becomes available sometime next year, said Seong Park, vice president of strategy and product marketing at the vendor, which is based in New York.
Park said MongoDB plans to extend Stitch beyond MongoDB Atlas by adding "bring your own database" support for both on-premises and cloud deployments of MongoDB, as well as the ability for users to run the serverless platform on their own systems. He didn't disclose when that's likely to happen, saying only that it will be "in the fairly near term." Meanwhile, the new MongoDB Mobile database is initially being released in a private beta, with plans for general availability still to be determined, Park said.
MongoDB 4.0 lists for $14,990 per server. MongoDB Stitch users will be charged 50 cents for each GB of data transferred between Stitch and their front-end applications, as well as back-end services other than Atlas. They'll also pay for using compute resources at a rate of $0.000025 per GB-second, which is calculated by multiplying the execution time of each processing request by the amount of memory that's consumed.
Quiz yourself on the differences between SQL and NoSQL databases