IBM Db2 on Cloud (which begins at $189 per month) is a well-designed, fully managed SQL Database-as-a-Service (DBaaS) solution with Db2 and Oracle PL/SQL compatibility. Data migration processes and the user interface (UI) are clean, intuitive, and easy to operate for users of a variety of skill levels. The product is perfect for developers who want to create a database without the assistance of a database administrator (DBA). It’s also great for business analysts who want to custom build a database in no time flat.
IBM Db2 on Cloud is a solid offering that gets a 4.0 rating in this review for its sheer ease of use. However, some developers chafe at the limitations in design control, especially when compared with the extreme flexibility of Editor’s Choice MongoDB Atlas in providing tons of controls for developers. IBM Db2 on Cloud also falls short of Editors’ Choice Microsoft Azure SQL Database, which seriously outpaces IBM Db2 on Cloud in the number of regions—a big deal in some cases when it comes to application performance and compliance with the European Union (EU)’s General Data Protection Regulation (GDPR). However, IBM Db2 on Cloud offers more regions than either Amazon Relational Database Service or Google BigQuery.
Users are funneled into the free Lite tier as a starting point. The database then recommends either IBM Db2 on Cloud (SQL) or Cloudant (NoSQL) based on the data. It’s obvious that the IBM Db2 on Cloud designers learned a lot from the Bluemix team because IBM Db2 on Cloud outpaces Rackspace’s ObjectRocket (NoSQL) and Amazon Relational Database Service (Amazon RDS) in ease of use, particularly in data migration. Both ObjectRocket and AWS RDS are best used with the aid of a DBA, at least during setup. By contrast, most users will be able to spin up a database in IBM Db2 on Cloud with little fuss, unless, of course, the fuss comes from a DBA. Let’s face it. DBaaS often amounts to legitimized shadow IT and not everyone in IT is a fan. It’s best to check your company’s policy on using a DBaaS and follow the prescribed protocols.
The good news is that there is a free Lite plan limited to 100 megabytes (MB), five connections, and one schema. You can create multiple Lite plans if you want. No credit card is required whether you use one or multiple Lite plans. The Lite plan is a cool way to check out the service, learn more about working with databases, or do smaller jobs for free. There’s also a free developer community edition with enterprise features. Db2 Express-C is free for commercial use but is hobbled a bit by the lack of some advanced enterprise features.
The paid Flex plan for IBM Db2 on Cloud starts at $189 per month for 1 core, 4 gigabytes (GB) of random access memory (RAM) and 2 GB of disk storage. Additional cores are $52 per core per month. Or $13 per GB of RAM, since each core has 4 GB of RAM. Additional disk storage is $1 per GB per month. For high availability, you need to double the base plan, cores, and storage cost. And the last line item on the bill is a charge of $0.20 per 1 million input/output (I/O) operations performed.
If you have IBM Db2 on-premises, then you get a large discount using IBM’s “Bring Your Own License” program. Contact your IBM rep for details. You can also get a discount on an IBM Cloud subscription.
Step by Step
After setting up an account on IBM Cloud, go to the Menu icon at the upper left-hand side of the screen to move to the dashboard and click on “Create Resource.” From there, you work through a series of options for setup. My setup was US South region, Db2 on Cloud, and then Flex Plan. It takes 30 seconds to a minute to create a new instance.
IBM Db2 on Cloud has one of the easiest data-loading processes in our DBaaS solutions review roundup. I loaded the data with one click on the console page, followed by a drag and drop of my CSV test data. One more click is needed if you opt to use Aspera for a high-speed load. Next is a choice of two schemas or the option to create your own. A schema is a collection of tables to organize the data. IBM Db2 allows multiple schemas for each database. For this test, I chose the IBMADT schema option. The system then offers the option to select or create a table. Next is the Define Table stage. Note in the screenshot below that formats have pull-down menus and handy guidance and tips under the “?” icon by each format type. When those tasks are completed, the data begins uploading.
Once the data is uploaded, click the Run SQL tab, and you’re off and running. You can either enter SQL statements in the SQL editor or load a SQL script from the toolbar. I had no problems with the setup and was up and running with minimal effort. To scale up, I needed only to return to the console and click on the Scale Instance button. There I can use a slidebar to scale up or down. The console immediately displays compute and storage scaling details as well as an estimated new cost.
In IBM Db2 on Cloud, you won’t find desktop tools to install or complex cloud configurations to worry your way through. Make one click on options like “high availability” or “Oracle compatibility mode” and you’re good to go. Use the Load wizard in the web console to import a spreadsheet, and IBM Db2 on Cloud will make suggestions for each column you can activate or adjust. Remember this is a relational database so you can only use structured data like you’ll find in a spreadsheet. But that doesn’t mean the data size has to be small. In fact, it can be quite huge. If you have a lot of data to migrate, then you have options to speed the transfer. IBM Aspera both compresses your data and uses the user datagram protocol (UDP) to optimize your internet line. UDP makes low-latency, loss-tolerating connections and thus is much faster than the alternative transmission control protocol (TCP). You’ll find it as a browser plug-in on the web console. This will render two to five times the normal speed of your internet connection. For large, complex databases, use the free IBM Lift tool.
In case you were wondering, IBM joins IBM Db2 on Cloud data with that of IBM Watson Analytics in the same way as any other data source. IBM has a separate NoSQL cloud-based database called Cloudant (which I briefly mentioned earlier). If you’re using IBM Cloud, then you also have the option of using IBM Compose, where you can choose among 10 open-source databases: Elasticsearch, JanusGraph, MongoDB, MySQL, PostgreSQL (aka Postgres), RabbitMQ, Redis, ScyllaDB (Apache Cassandra), etcd, and RethinkDB.
Keep in mind that you use IBM Db2 on Cloud by importing spreadsheets via a web console and then run SQL from there. That’s the point of DBaaS: no configurations needed. But, basically, any third-party tools you might be using now with IBM Db2 on Cloud on-premises (such as FalconSQL, SQuirreLSQL, or Toad for IBM Db2) work with IBM Db2 on Cloud. Power users have two extra options, IBM Data Server Manager and IBM Data Studio. IBM Data Server Manager monitors and analyzes multiple IBM Db2 on Cloud instances, on the ground or in the cloud. It also supports open-source databases. IBM Data Studio is DBA desktop software for advanced users, meaning mostly DBAs.
Being able to choose the regional location for your database is important for two reasons. First, because of regulations such as the GDPR, you have to be certain of where your data resides (even in the cloud), where it moves to, and how it is used. Being able to select the right location for your database is imperative to keeping compliant. Secondly, the closer your data and app are to one another, the better the performance (the shorter the lag and other issues). You’ll want to look for options to deploy your app in the same data center as your database, or colocate your database next to your app.
IBM Db2 gave me 22 region options, including Amsterdam, Chennai, Dallas, Frankfurt, Hong Kong, London, Melbourne, Milan, Montreal, Norway, Paris, Querétaro (Mexico), San Jose, Sao Paulo, Seoul, Singapore, Sydney, Tokyo, Toronto, and Washington, D.C.
However, the free Lite version runs only from IBM’s Dallas data center, but the seven-day free trial version works in any of those 22 locations. High availability plans come with a a 99.99 percent uptime service-level agreement (SLA) whereas single-server plans offer a smaller 99.95-percent uptime SLA. IBM Db2 provides 14 days of daily backups.
While no system is perfect or suited for every purpose, IBM Db2 on Cloud will likely be strongly favored by those who want more convenience and ease of use than is generally found in database products or services. Although some developers may find IBM Db2 on Cloud design controls limiting, they will appeal to admins for the stability and consistency they bring to the database overall.