March 1, 2016 | Written by: Kamille Nixon
Categorized: Community | Data Analytics
Share this post:
There are a large and growing number of open source databases available to support today’s Web, mobile and Internet of Things (IoT) applications. From JSON document stores like MongoDB, to key/value stores like Redis, to object-relational databases like PostgreSQL, you have a wide array of “tools” at your disposal when building apps that require scale, flexibility and high availability – on premises, in the cloud or in a hybrid environment.
To build at Web scale, you may require multiple databases to support the different components of your app. For example, a JSON document store like MongoDB or CouchDB may serve as your app’s primary data store, with Elasticsearch serving as an engine for full text search, and PostgreSQL providing an ACID-compliant transactional database.
However, a coherent multi-database solution for your app could require managing multiple, different database systems and running them at scale without losing app performance. And tailor-made database ecosystems can be expensive, time-consuming and a drain on your team’s productivity.
IBM Compose Enterprise
A fully managed cloud data platform like IBM Compose Enterprise – available this week from IBM – can help you address these challenges, and deploy any combination of supported databases in a single, integrated environment. With Compose Enterprise, you can run leading open source databases, including MongoDB, Redis, Elasticsearch, PostgreSQL, RethinkDB, RabbitMQ and etcd, in dedicated data clusters, on the cloud of your choice (IBM SoftLayer or Amazon Web Services). This gives you the freedom to build production-ready apps quickly, at low financial risk, without the pains of database administration.
One-Click, Production-Ready Databases
When multiple open source databases are deployed together as a service, data can be centralized through a single database and then distributed in real-time, saving engineering teams from the usual effort involved in deploying and managing multiple databases and running them at scale. In fact, with Compose Enterprise, you have one-click deployment of the most active open source databases in the industry, with highly available clustering and failover, auto-scaling, 24/7 DBA support, automated backups and a single Web interface.
Compose helps your team build “polyglot persistent” data layers, so each component of your app is matched with the best data storage technology to support it. You can choose which of the supported Compose database services you wish to deploy in a cluster. You also get to choose the deployment model: you can have a managed platform with data isolation in a dedicated, single tenant data cluster; you can self-host your Compose offerings on your own Infrastructure-as-a-Service; or you can self-host on an IBM-managed cluster. SoftLayer and AWS are both available as self-host IaaS options.
The Right Database for the Job
Below is a quick breakdown of the database options available on the Compose Enterprise platform, and where they might fit into your app strategy. For more information, you can head over to Compose.io.
- PostgreSQL on Compose Enterprise: You’re running an ACID-compliant transactional application on PostgreSQL, a powerful, customizable, open source object-relational database. You want JSON support, but you also need the monitoring and services you can get with RDBMSs.
- MongoDB on Compose Enterprise:
You developed a successful app quickly using MongoDB as the primary data store, but now you’re running into scale issues. You also need to enable enterprise deployment requirements that weren’t considered during the development phase.
- RethinkDB on Compose Enterprise: You need a JSON document-based, distributed database with integrated administration and exploration, plus rich query language supporting distributed joins and sub-queries. But you also need automatic scaling, hot backups, 24/7 monitoring, and all of the other services required for production deployment.
- Elasticsearch on Compose Enterprise: Today, full-text search in the user interface is in high demand for every application in the enterprise. You need to bring it into your application while enabling all of the other functionality, and without adding any operational complexity.
- Redis on Compose Enterprise: You need the speed of read and writes from a blazingly fast open-source key/value store, but you also need high availability and auto-failover in a production environment.
- etcd on Compose Enterprise: You require “Source of Truth” data consistency with a fully distributed key/value data store, but you also require rock-solid management, tuning, failover and scale.
- RabbitMQ on Compose Enterprise: You need to communicate with other applications or databases, like MongoDB or PostgreSQL, for robust, real-world application development.
All of the Databases, None of the Hassles
With Compose Enterprise, you don’t have to give common multi-database challenges another thought. Compose Enterprise features an easy-to-use administrative interface for management services including deployment monitoring, automatic scaling, high availability, hot backups and user setup and logfile access. The combination of production-ready, hand-picked open source databases tailored for modern applications, plus IBM management services, makes the total solution not only successful and robust, but also much easier to deploy and use over time.
To get started, sign up for a free trial today, or contact your IBM rep for more information.