MongoDB TCO Comparison MongoDB Oracle
MongoDB TCO Comparison MongoDB Oracle
Cost Categories 1
Conclusion 9
We Can Help 9
Executive Summary
MongoDB is an open-source, document database This white paper seeks to illustrate the business rationale
designed with both scalability and developer agility in mind. for deploying MongoDB over Oracle. We compare the total
MongoDB bridges the gap between key-value stores, cost of ownership (TCO) of MongoDB and Oracle,
which are fast and scalable, and relational databases, accounting for upfront and ongoing costs, including
which have rich functionality. Instead of storing data in rows software, hardware and personnel. We provide two
and columns as one would with a relational database, example scenarios – one smaller and one larger enterprise
MongoDB stores JSON documents with dynamic schemas. project – and a model for evaluating database TCO.
Customers can use this framework to assess the cost of
Customers should consider three primary factors when
undertaking projects of various sizes using MongoDB,
evaluating databases: technological Pt, cost, and topline
Oracle or any other database. In our example scenarios,
implications. MongoDB's Qexible and scalable data model,
MongoDB Enterprise Advanced is at least ~70% less
robust feature set, and high-performance, high-availability
expensive to build and run than Oracle Database
architecture make it suitable for a wide range of database
(Enterprise Edition deployed with Oracle Real Application
use cases. Given that in many cases relational databases
Clusters). Finally, we discuss how technological Pt and cost
may also be a technological Pt, it is helpful to consider the
can have topline implications as well.
relative costs of each solution when evaluating which
database to adopt.
1
Cost Categories Description
Upfr
Upfront
ont Costs
Software Licenses All software related to the data store itself, as well as management tasks such as clustering,
replication, and caching
Ongoing Costs
Ongoing Personnel
Administrative Effort Administrative effort required to keep data store healthy and running (e.g., planning and
responding to downtime, upgrading software and hardware)
Hardware Maintenance: Upgrades and bug Pxes to Prmware and any software that may come with
Maintenance and hardware
Support Support: On-call assistance for troubleshooting technical problems with hardware
building and running a database. It includes personnel there are a number of potential deployment topologies,
costs (e.g., developer salaries) in addition to the cost of which will vary from application to application, the
hardware, software and support. Table 1 describes the cost deployments described in this paper paint the picture of
categories we consider in this analysis. how the economics of these two databases typically stack
up relative to one another.
The following TCO analysis shows the expected costs of
building and deploying one smaller and one larger The TCO analysis illustrates how MongoDB's ease of
enterprise application using MongoDB Enterprise deployment and administration, simpler hardware
Advanced and Oracle Database (Enterprise Edition requirements, and open-source licensing can make it
deployed with Oracle Real Application Clusters). Although signiPcantly more cost-effective than Oracle. On the whole,
2
MongoDB can be at least ~70% less expensive to build interfaces: the application, the database itself, and the
and run than Oracle. Moreover, customers pursuing more ORM layer.
projects and/or higher complexity applications may Pnd
• Dat
Dataa Flexibility – Unlike Oracle, MongoDB allows
that the cost savings of deploying MongoDB vs. Oracle are
developers to easily store polymorphic data, as well as
even greater than those depicted here.
structured, semi-structured and unstructured data all in
a single data store.
TCO for Example Projects • J SON Support – Storing JSON – the basis of many
modern applications – is seamless and requires no
Upfront Costs translation in MongoDB. With Oracle, developers need
to Qatten out and transform JSON in order to store it in
relational tables, only to have to unQatten and rehydrate
Initial Developer Effort it when retrieving it from the database.
Initial developer effort refers to the cost of developer time • Cloud ArArcchitectur
hitecturee – MongoDB is well suited to
required to get an application and data store to work elastic cloud deployments given its scale-out design,
together. whereas deploying Oracle in the cloud can be
For relational databases, initial developer effort includes challenging given the infrastructure requirements of
tasks such as dePning the data model, creating an relational databases.
object-relational mapping (ORM) layer, and writing the • Ease of Licensing – MongoDB licensing is simple;
business logic for the application. subscriptions are priced on a per server, per year basis.
MongoDB is designed to be easy to use for modern With Oracle, licensing is so complex that it often
developers. As a result, it is much more cost-effective to necessitates that developers wait for administrators to
develop with MongoDB than to develop with relational obtain and conPgure development environments, which
databases. MongoDB derives this major productivity can take weeks or even months.
advantage from its document-oriented design and dynamic
schemas. The way it stores application data matches both
current development technology and current development Given the above, the TCO model assumes that Oracle
practices – both of which have advanced signiPcantly since requires 2x the initial developer effort of MongoDB.
the beginning of the relational database industry 30 years Thus, for the smaller project we assume baseline
ago.
developer effort of 24 man-months for Oracle and 12
The reasons behind MongoDB's productivity advantages man-months for MongoDB (a 50% reduction); for the
can be summed up as follows:
larger project we assume 72 man-months for Oracle
• Ease of Use – MongoDB supports modern and 36 man-months for MongoDB (a 50% reduction).
development methodologies, such as the Agile Method,
Across both scenarios, we assume a fully-loaded
making it easy for developers to iterate quickly and
continually over the data model. By contrast, Oracle
developer salary of $120,000 per year.
imposes a strict set of constraints on data model
development.
• Dat
Dataa Model – With MongoDB, the developer only
Initial Administrator Effort
needs to create the data model in one place: the Installing and conPguring MongoDB is inexpensive and
application. With Oracle, developers need to create and simple. To conPgure a well-performing MongoDB
maintain the data model in three places using different deployment, an administrator typically needs to consider
just one variable: the number of nodes in the cluster. there
3
are only a handful of conPguration settings to get up and Oracle licenses are priced on a per-core basis. Because
running. By contrast, Oracle is harder to install and nearly all servers produced in the last Pve years have
conPgure. Initial administrator effort can be an intense, between 4 and 24 cores apiece, even a low-end
multi-week process for Oracle, as an administrator must development or test conPguration for Oracle can be
consider tuning hundreds of variables to get good expensive. Moreover, Oracle Database Standard Edition
performance out of the cluster. Most organizations require does not include a number of central capabilities required
an Oracle-certiPed DBA to do this task, or they retain for modern applications, such as automated failover,
expensive outside consultants to do so. memory caching, auto-sharding and clustering. In order to
get these features, customers must buy Oracle Database
MongoDB administrators do not need to integrate caching
Enterprise Edition (which is more expensive than the
layers or create custom sharding logic to direct queries to
Standard Edition) plus Oracle Real Application Clusters
the right server node. Rather, both caching and sharding
(RAC), an add-on application that enables horizontal
are core capabilities of MongoDB. MongoDB's native
scaling over multiple servers.
support for replica sets makes site-to-site replication
simple out of the box. In contrast, enabling and scaling
caching, sharding, and site-to-site replication often requires
To make the Oracle con?gurations as analogous as
substantial effort and custom code with Oracle.
possible to the MongoDB con?gurations, we use
Oracle Database Enterprise Edition ($47,500 per core)
Based on the same logic applied to initial developer plus Oracle RAC pricing ($23,000 per core), for a
effort, the TCO model assumes that MongoDB total of $70,500 per core.1 Discounts on Oracle
requires half the initial administrator effort required pricing can range from 0% for small deployments to
for Oracle. We assume that Oracle requires 2 80% for large deployments. We assume a
man-months of administrator time for the smaller conservative 50% discount on the list price for the
project and 6 man-months for the larger project, smaller and larger projects. Additionally, we apply a
whereas MongoDB requires 1 man-month for the further 50% discount on top of that to account for
smaller project and 3 man-months for the larger Oracle's core processor licensing factor.2 This
project (a 50% reduction). We assume a fully-loaded amounts to $17,625 per core for both projects.
DBA salary of $120,000 per year across both
scenarios.
Server Hardware
Typically, MongoDB's server costs are signiPcantly lower
Software Licenses than Oracle's for similar workloads. MongoDB is designed
MongoDB Enterprise Advanced is priced on an ongoing to use commodity hardware in scale-out architectures.
basis (i.e., per server, per year) as opposed to a one-time MongoDB deployments typically use inexpensive,
basis. As such, we capture this cost under Software commodity Linux servers that cost as little as $3,000; even
Support & Maintenance later in this paper. a high-performance, low-power system may cost just
$4,000 (excluding storage).
1. While one can reduce software costs by using only Oracle Database Enterprise Edition and forgoing Oracle RAC, this entails adopting a scale-up (vs.
scale-out) architecture, requiring the customer to purchase a more powerful and expensive server. For the sake of keeping the hardware architectures as
comparable as possible across the conPgurations, we use Oracle RAC in this example. See Server Hardware and the associated footnote for more detail.
2. To account for differences in CPU core architecture, Oracle multiplies the number of cores by a core processor licensing factor. This ranges from 0.25
for older Sun SPARC processors, to 0.5 for most AMD and Intel processors, to 1.0 for IBM Power and others.
4
By contrast, an Oracle deployment typically uses a large,
single server to optimize performance based on its
$240,000 in the larger project. For Oracle, we
relational architecture.3 As an alternative to using
proprietary scale-up hardware, Oracle does offer a
assume a 3 TB SAN ($125,000 for 3 TB usable) for
clustering add-on, Oracle Real Application Clusters (RAC), the smaller project and a 30 TB SAN for the larger
which enables customers to deploy Oracle Database in a project ($500,000 for 30 TB usable).
scale-out fashion. As previously mentioned, in this paper
we model the Oracle deployment based on a RAC
conPguration to make the Oracle server conPguration as
analogous as possible to the MongoDB server Ongoing Costs
conPgurations.
The TCO model assumes the same server hardware The dynamics of ongoing developer effort are similar to
for MongoDB and Oracle. For the smaller project, we those of initial developer effort. With Oracle, the cost of
making schema changes is even higher for an
assume 3 servers, each with 8 cores and 32 GB RAM, in-production database than for a database that has not yet
at $4,000 per server. For the larger project, we been released. As a result, many companies strictly prohibit
assume 30 servers, each with 8 cores and 32 GB changes to databases or limit them to once or twice a year.
RAM, at $4,000 per server. With MongoDB, however, it is easy for developers to add
database Pelds and change schemas, resulting in
signiPcantly lower costs and allowing developers to adapt
applications as business demands evolve.
Storage Hardware
MongoDB's horizontal scale-out architecture can
signiPcantly reduce storage costs. MongoDB can use the In the smaller scenario, we assume that MongoDB
inexpensive local storage used in off-the-shelf database requires 50% less ongoing developer effort (6
servers, and can make efPcient use of solid-state drives
(SSDs).
man-months) than Oracle (12 man-months). In the
larger scenario, we apply the same logic, assuming
Although Oracle can reduce its storage footprint using
compression, Oracle deployments typically require much
18 man-months of ongoing developer effort for
more expensive storage, as the relational architecture MongoDB and 36 man-months for Oracle. We
generally requires a single storage model, like a Storage assume a fully-loaded developer salary of $120,000
Area Network (SAN), to ensure base levels of availability per year.
and performance. SANs range from $25,000 to over
$500,000, depending on their capabilities, and thus can
signiPcantly increase conPguration costs.
Ongoing Administrator Effort
Ongoing administrator effort includes activities that keep
For MongoDB, the TCO model accounts for two 1 TB the system healthy and running (e.g., upgrading software
SSDs (1 TB mirrored) per server ($8,000), which and hardware, taking backups, and recovering from
translates to $24,000 in the smaller project and unexpected downtime).
3. These servers, generally manufactured by Sun/Oracle, IBM, HP, or Fujitsu, scale by adding more processors to a single box, can contain dozens of
CPUs or cores apiece, and range from $25,000 to over $200,000 each.
5
It takes signiPcantly less time and effort to administer For Oracle, annual software maintenance and support
MongoDB than it takes to administer Oracle. Administering includes customer support as well as upgrades to the
a MongoDB deployment mainly involves managing Linux software. It is typically 22% of the software license cost
settings and the hardware itself; there are only a couple and thus is driven by the number of cores, not the number
dozen MongoDB settings to understand and manage. of CPUs or servers. As a result, even for small
MongoDB's native replica set capability makes it easy to conPgurations, the cost of Oracle support dwarfs the costs
perform common administrative tasks like switching out of MongoDB support, often by orders of magnitude.
failed hardware and upgrading a server's OS. MongoDB
Hardware support costs are typically 10%-12% of the
customers report that their Linux system administrator
hardware purchase price. Given that Oracle typically
groups have no trouble picking up the task of managing
requires more expensive hardware (e.g., SANs),
MongoDB, because no special skills are required.
maintenance and support for Oracle deployments is higher
The complexity involved in developing for Oracle databases than it is for MongoDB.
extends to the administrative arena and translates to
increased overhead. As data schemas and custom code
evolve, the conPguration of the database must evolve, too. For MongoDB, the TCO model assumes software
Moreover, Oracle has thousands of settings, and maintenance and support costs of $11,990 per
administering Oracle requires deep technical skills and
training. Customers moving from Oracle to MongoDB
server, per year for the smaller project, and $10,800
report that they can slash their administrator costs per server, per year for the larger project (a 10%
signiPcantly. One company had a full-time internal Oracle discount). The TCO model assumes 22% of license
DBA and retained an outside consulting Prm. Once they
costs for Oracle. The model also assumes hardware
moved to MongoDB, one of the developers easily took on
half-time administration of the MongoDB cluster, and the
maintenance and support costs of 10% of the
outside consulting Prm was no longer needed. hardware purchase price for both MongoDB and
Oracle.
For the smaller project, we assume that Oracle
demands 50% of one DBA's time and MongoDB
requires 25% of one DBA's time (a 50% reduction).
Similarly, for the larger project, we assume that
Oracle demands 1.5 full-time DBAs, while MongoDB
requires half that (3/4 of a DBA's time). We assume a
fully-loaded DBA salary of $120,000 per year.
6
7
8
Summary Conclusion
Given the assumptions used in this TCO analysis,
MongoDB Enterprise Advanced is at least ~70% less The TCO analysis presented in this paper attempts to
expensive to build and run than Oracle (Enterprise Edition outline the Pnancial benePts that businesses can realize by
deployed with Oracle RAC). adopting MongoDB. Although cost disparities could be
smaller or greater depending on several factors, such as
As previously mentioned, although we believe this analysis
the number and complexity of applications being deployed,
is representative of the economics of MongoDB vs. Oracle,
MongoDB is at least ~70% less expensive to build and run
applications, topologies and costs will vary from use case
than Oracle for the example projects shown here. The cost
to use case. The TCO analysis presented here represents
disparity is driven by MongoDB's increased ease of use
two example projects. Customers deploying more
and developer Qexibility, which decreases personnel costs;
applications and/or more complex applications could see
by MongoDB's use of commodity hardware (storage, in
even greater cost savings than those shown in this paper;
these examples); and by Oracle's substantially higher fees
in some cases, the cost disparities may be smaller. We
for licensing and support. Furthermore, MongoDB's
encourage those evaluating different database solutions to
technical and cost-related benePts translate to topline
use our framework as a starting point for conducting this
advantages as well, such as faster time-to-market.
analysis for themselves.
We hope that customers Pnd this framework helpful in
evaluating TCO for whatever projects and databases they
Topline Implications of Using may be considering.
MongoDB
We Can Help
Beyond tangible cost savings, MongoDB's
document-oriented model and Qexible schema also afford
businesses increased agility and Qexibility-providing topline We are the MongoDB experts. Over 2,000 organizations
benePt. A business that spins its wheels trying to modify a rely on our commercial products, including startups and
rigid relational schema to change its application not only more than half of the Fortune 100. We offer software and
wastes money on extra development time, but also suffers services to make your life easier:
the opportunity cost of a slower time-to-market.
MongoDB Enterprise Advanced is the best way to run
Many of the technical and cost-related benePts discussed MongoDB in your data center. It’s a Pnely-tuned package
previously translate to increased time-to-value and of advanced software, support, certiPcations, and other
time-to-market-topline benePts. For instance, schema services designed for the way you do business.
Qexibility and alignment with the Agile development
MongoDB Cloud Manager is the easiest way to run
method enable businesses to adapt their products quickly
MongoDB in the cloud. It makes MongoDB the system you
if customers demand change. The ability to deploy in
worry about the least and like managing the most.
elastic cloud environments means that businesses can
scale technology in line with revenue and customers. MongoDB Atlas is a database as a service for MongoDB,
letting you focus on apps instead of ops. With MongoDB
While these benePts can be substantial and far-reaching,
Atlas, you only pay for what you use with a convenient
they are far more subjective and situation-dependent than
hourly billing model. With the click of a button, you can
any of the costs discussed in this paper. As such, we do not
scale up and down when you need to, with no downtime,
provide even sample quantiPcations of those benePts here,
full security, and high performance.
but we encourage customers to think about what their
businesses could achieve if database development and MongoDB Cloud Manager is a cloud-based tool that helps
deployment were simpler and more Qexible. you manage MongoDB on your own infrastructure. With
9
automated provisioning, Pne-grained monitoring, and
continuous backups, you get a full management suite that
reduces operational overhead, while maintaining full control
over your databases.
Resources
New York • Palo Alto • Washington, D.C. • London • Dublin • Barcelona • Sydney • Tel Aviv
US 866-237-8815 • INTL +1-650-440-4474 • [email protected]
© 2016 MongoDB, Inc. All rights reserved.
10