Skip to main content

Day 4 - 30 Days on the Oracle Cloud

· 6 min read
Adrian Png

Photo by Oliver Menyhart

After running my Oracle Application Express (APEX) instance (see the previous article on what it takes) for more than a day, I think I have enough to take a first measure of costs and fact check the prices listed by Oracle!

Current Configuration (Recap)

At the moment, I have created the following resources in my Oracle Cloud Infrastructure (OCI) trial account:

  • A Virtual Cloud Network (VCN) containing one of each:
    • Public Subnet
    • Route Table
    • Internet Gateway
    • Security List
    • DHCP configuration
  • A Compute Instance with shape VM.Standard.E2.1, with the following resources:
    • 1 OCPU
    • 8 GB Memory
    • 46.6 GB Block Storage for Boot Volume
    • And of course we have an APEX stack housed comfortably on this server!

NOTE: OCI's OCPU is equivalent to 2 vCPUs, a unit often used by other cloud hosting providers.

Billing and Cost Analysis

To view the current billing information through the OCI console, click Billing Cost Analysis.

Cost Analysis for March 01, 2019

Based on these estimates, I can expect to pay CA$1.06 x 365 days / 12 = CA$32.24/mth. Using the pricing calculator, the estimate is pretty accurate at CA$33/mth or US$24/mth. Let's compare this with similar offerings by other hosting companies.


DigitalOcean's pricing information can be found here. The product that has specifications closest to OCI's VM.Standard.E2.1 is their new General Purpose Droplets. The lowest priced system comes with the following specifications:

  • 2 vCPUs
  • 8 GB memory
  • 25 GB storage
  • 4 TB network transfer

Monthly Fee: US$60


Linode's pricing information can be found here. Their most similar offering has the following specifications:

  • 2 vCPUs
  • 4 GB memory
  • 80 GB storage
  • 4 TB network transfer

Monthly Fee: US$20 (DigitalOcean offers the same package at the same price)


To run an APEX stack using Oracle Database 18c Express Edition (18cXE), the $20/mth package from either DigitalOcean or Linode is more than sufficient. 18cXE limits us to use only 2 GB of memory, 2 CPU threads and store up to 12 GB of user data. Setting up a VM in either of the two hosts are also considerably simpler and more straightforward.

For an enterprise though, consider also the other services that are made available by each provider listed in this article.


Providers update the service offerings all the time. Always check with them for the latest available features.

Advanced Identity Managerment
Advanced Network Management
Advanced Storage Encryption
Auto Backup
Auto Scaling
Block Storage
DNS Zone Management
Email Delivery
Monitoring & Alerts
Object Storage
VPN to Customer-Premise Equipment

While available, some of these listed features are for-fee services and prices vary amongst the different providers.

I will delve deeper into some of these features in a future post, but suffice to say, OCI customers get access to a whole lot more for just $4 more per month! Not to forget having double the amount of RAM and the ability to customise the boot volume size, upwards of 46.6 GB.

Path to Database Cloud Service

Perhaps the larger consideration is how a business would progress to the "next level". At some point, 12 GB of user data isn't going to be enough and we need to progress to the next edition of the database.

Before ending this article, I would like to walk through the steps for creating a lowest-cost DB System in a different compartment. For completeness, I will also add a Compute Instance that would host an Apache Web Server and Tomcat Server to complete the APEX stack. The billing outcome will be reviewed in a future article.

  1. After creating a new compartment (PROD) and VCN, click Bare Metal, VM, and Exadata
  2. On the DB Systems page, make sure that the new compartment is created, and then click the Launch DB System button.
  3. Enter the required DB System parameters and then launch the server. If the required fields are empty, the launch button will not be enabled. Create DB System dialog
    • DISPLAY NAME: Give it a unique name
    • AVAILABILITY DOMAIN: * Select a suitable AD*
    • SSH PUBLIC KEY: Add a SSH public key
    • VIRTUAL CLOUD NETWORK: Select the target VCN
    • CLIENT SUBNET: A private subnet is highly recommended
    • HOSTNAME PREFIX: Give it a unique name
    • DATABASE NAME: Provide the desired CDB name
    • PDB NAME: Provide the desired PDB name
    • DATABASE ADMIN PASSWORD: Enter a password that complies with the requirements

Till next time...