Db2 Deployment Options

Dean Compher

29 May 2018

 

 

Whether you want to run Db2 as traditionally installed software or in some form of the cloud, there is a Db2 variant for you.  These products usually have Db2 in the name and examples include DB2 Warehouse, DB2 on Cloud, Db2 or even IIAS.  Further they all run the same SQL and we call this the Common Analytics Engine or Common SQL Engine because they all process the same SQL syntax allowing you to write an application against one and run it against any of them.  Further, some Db2 software editions have licensing terms that allow you to run your software on any cloud or virtualized environment and easily move between environments.  In this article I will discuss the various Db2’s to help you pick the one that is right for you.

 

First, I’ll summarize the variations currently available:

 

Name

Type

Description

Db2

Software

Traditional Db2 Software that you can install on your traditional servers, VMs, or cloud servers. 

Db2 Event Store

Software

A specialty database engine for the continuous, rapid ingestion of large amounts of data while querying up to the moment data.  Useful for Internet of Things and web click ingestion where you can query the data and get up to the moment results.  Part of the Common SQL engine when you add the Big SQL feature. 

Db2 Warehouse on Cloud

Public Cloud

Single Node or MPP data warehouse database service.  Go to the web, click the service and start using the database on IBM’s Cloud and other clouds like AWS.  Managed by IBM.

Db2 on Cloud

Public Cloud

Db2 database service for transactional (OLTP) workloads.  Go to the web, click the service and start using the database on IBM’s Cloud and other clouds like AWS.  Managed by IBM.

Db2 Hosted

Public

Cloud

Db2 database service that you can configure for any workload you like.  You can deploy it from the menu on the IBM cloud and run it on several cloud platforms like AWS, but once deployed you manage the operating system, Db2 Software and all configurations after deployment yourself. 

Db2 Warehouse

Private Cloud

Single Node or MPP data warehouse database service for your private cloud.   Delivered with DB2 installed in Docker containers ready to be put in your cloud infrastructure. 

IBM Integrated Analytics System

Private Cloud

MPP data warehouse database appliance.   Delivered with DB2 installed in Docker containers in a physical system ready to load tables and start querying them.  Can be easily expanded by adding hardware modules.

 

Before moving on to describing each of these flavors of Db2 in more detail, I want to define a few terms used in the table above:

 

Software:  Traditional software that you install and configure on a server or virtual machine (VM or LPAR).  It can be installed on a cloud server after that server is deployed, but you still have to copy the software there and install it. 

 

Public Cloud:  A service that you can deploy by clicking a link on a public web site to get a database that that is ready to have tables created, data loaded, and queries run.  Further, IBM manages at least some aspect of the service that includes hardware administration if not OS and database administration as well.  While you go to the IBM Cloud web site to deploy the Db2 Public Cloud services, you can choose to have them deployed on IBM’s cloud or Amazon Web Services (AWS) and sometimes other web platforms.

 

Private Cloud:  In this case I am talking about Db2 that is installed in a Docker Container that runs on servers that you purchase or rent.  Those servers can be on your premises or on servers deployed from a public cloud Infrastructure as a Service (IaaS) like IBM Softlayer or AWS.  Further, new databases can be easily deployed, or existing databases scaled up, but you must first purchase additional infrastructure to do so. 

 

Now I will provide some additional details about each offering to help show some of the major differences, but by no means is this meant to be a complete description of the offerings.  All cloud offerings except for Db2 Hosted provide a web console for administering, querying and monitoring usage of the service.  Only basic administration for such things as creating database users is allowed through the console.  The same DB2 clients and drivers are used no matter which cloud or software database you are querying or loading.  Applications using those drivers can be on-premises or cloud applications.  Further you can use IBM Data Server Manager to centrally manage all software and cloud databases.   

 

Db2

This is the traditional software flavor of Db2 for Linux, Unix and Windows that you know and love.  There are various editions and more recently there are licensing terms for those editions that make it easier to implement DB2 in a virtualized environment and/or cloud environment.  They are DB2 Direct Standard Edition and Db2 Direct Advanced Edition.  One of the most difficult parts of determining a quantity of DB2 to buy when putting DB2 on a Virtual Machine (VM) or a cloud infrastructure, is determining the number and type of physical processor cores.  The Direct editions are sold by the Virtual Processor Core metric.  With this metric you only need to know the number of virtual cores that your VM or cloud server knows about.  You just run the OS command to determine the number of virtual cores, and that is the number of VPC’s that you need.  Another nice thing about the VPC licensing is that you can move them from one VM to another or to a cloud server as you like as long as you don’t exceed the number of VPCs that you own. 

 

You can even get the Db2 Software pre-installed in a Docker container is the Db2 Developer Community Edition

 

Db2 Event Store

Unlike all of the other Db2’s in this article Db2 Event Store does not run the standard Db2 engine, but if you need to ingest large volumes of data into a database quickly while running well-performing analytic queries across all rows including ones that have just been inserted then the Db2 Event Store is for you.  Db2 Event Store can insert up to 1 million rows per second per node and you will be scale up by adding more nodes.  It is shipped in a set of Docker containers and is easy to install and use.  Further, since the data is stored in Apache Parquet files, you are not locked into our database.  You can run a different application on these files to retrieve your data if you like.  At any time you could get rid of DB2 and continue using the data in the Parquet files with some other application.  Also, if you need a traditional SQL interface to this data from your regular BI tools like Cognos, then you can add our BigSQL interface that uses BLU technology to query the data. 

 

Db2 Warehouse on Cloud

This is a fully managed data warehouse service.  There are different plans that allow you to purchase the capacity you need and includes single node (SMP) or multi-node (MPP) clusters with varying numbers of nodes.  Nodes can be VMs or physical servers shared with no one else.  It is easy to add capacity to the MPP nodes by just deploying additional nodes.  Some plans allow you to scale compute and storage separately. 

 

No matter which plan you choose, you are ready to start creating tables in the database as soon as the service is deployed.  All Db2 Warehouse on Cloud plans are configured to run BLU Acceleration and as such, tables are created as column organized by default, but you can specify row organized tables if needed. 

 

Db2 on Cloud

This is a fully managed database service for OLTP processing.  There are different plans that allow you to purchase the capacity you need including smaller VMs and larger physical servers that are shared with no one else.  No matter which plan you choose, you are ready to start creating tables in the database as soon as the service is deployed. You can buy the Db2oC service in a high availability configuration where you get two Db2oC systems with the secondary system kept in sync using the Db2 High Availability Disaster Recovery (HADR) feature. 

 

Db2 Hosted

Like the other Db2 Public Cloud offerings, you deploy a server with DB2 on it that is ready for you to start creating tables with a few clicks.  But unlike the other cloud services you get sudo root access to the server and you can make any changes to the OS and Db2 software and configurations that you like.  Where IBM manages the VM or physical server for you, you are responsible for the Linux Operating System and patching it as needed.  Further you are also responsible for Db2 fixpacks and configuration changes.  Because you have full control you can configure the database for OLTP or warehouse processing and you can install any software you like on the server. 

 

In addition to using your service as a database server, an interesting use case is using the Db2 Hosted database as a DR site for your on-premises database.  This can be done if your on-premises database is running on a Linux (on Intel or Power LE) server or VM.  The easiest way to configure this scenario is to use DB2 HADR with your on-premises database being the primary server.  Since the DB2 Hosted database is fully licensed you can enable the HADR Reads on Standby feature and use the Db2 Hosted database as a reporting server.  The RoS feature works better for some configurations than others, so make sure to test it before buying.

 

Db2 Warehouse

Db2 Warehouse delivers a Db2 DPF (Database Partitioning Facility/MPP) system in a Docker Container.  You can run Db2 Warehouse on a single server or on a cluster of servers.  To allow easy scaling you should start with at least three nodes.  For MPP databases, you will need to follow the Db2 Warehouse Prerequisites that primarily include having Docker installed, and a POSIX-compliant cluster file systems like GPFS.  One Db2 Container is run on each server and when the cluster is started, Db2 automatically determines how to spread the database partitions across the containers. 

 

Db2 Warehouse is great if you want to be able to elastically scale up and down and keep the data on your own premises.  It includes a console for managing the entire Db2 cluster and doing upgrades.  Upgrades are accomplished by replacing the Db2 containers on the cluster.  Each server in the cluster will get one container.  Scale-up is accomplished by adding a node to the Db2 Cluster, adding the container to it and then stopping and starting the cluster.  Db2 will automatically redistribute the database partitions across the partitions.  HA and scaling down is accomplished in a similar manner.  If a server is removed from the cluster, Db2 automatically redistributes the database partitions to the remaining nodes. 

 

Db2 Warehouse also has Spark and R capabilities built in so you can move your processing to your data.  Administration of the cluster is done through a web console built into the container.

 

IBM Integrated Analytics System

IIAS is Db2 MPP data warehouse appliance with all hardware and software you need.  Like public cloud offerings, once the IIAS system is installed you are ready create tables and load them with data.  At the time that I am writing this article, you can buy it in various sizes from 1/3 of a rack up to 4 racks.  Like Db2 Warehouse, IIAS comes with Db2 installed in containers that run on the servers in the system.  Scaling and HA are provided the same way also, by DB2 automatically redistributing partitions when a node fails, or nodes are added.    

 

Like Db2 Warehouse IIAS has Spark and R capabilities built in to you can move your processing to your data.  It has Data Science Experience too along with a console to administer the system and database.  Everything, especially DB2, comes preconfigured to get the best performance possible on the hardware configuration of the system, and that hardware is quite advanced.  This system is great if you want a high-performance data warehouse for analytics on your premises, that is nearly as easy to manage as the fully managed Db2 Warehouse on Cloud data warehouse. 

 

Common Container Base

It should be noted that Db2 Warehouse, Db2 Warehouse on Cloud and IIAS all use the same base Docker container images that are configured for the particular implementation.  Therefore, they are all going to behave consistently.   The containers have the same components including Db2, Spark, the web server that serves the console, etc., and use the same logic for moving partitions for HA or scaling the cluster.  The console is also the same, except that you will not see menu options on a particular implementation that are not applicable to it.  They all also have the same REST interface for administration if you prefer to use the command line.  The main difference that you may notice is that the container images for each platform are released on different schedules, so new features will appear in some implementations earlier than others.  This makes it convenient to do things like testing on Db2WoC and using IIAS for production. 

 

***

 

I hope that you found this summary of the various implementations useful.  As you can see, we are making it easy for you to make use of cloud technologies at a pace that right for your organization.  If you have further thoughts on this please post them on my Facebook Page or my db2Dean and Friends Community along with any other comments you may have.  

 

HOME | Search