Oracle Database 21c review: The old RDBMS is new again

Major upgrade to the ever-evolving Oracle Database brings JavaScript support, graph optimizations, in-memory enhancements, and dramatic improvements to JSON operations and in-database machine learning.

1 2 Page 2
Page 2 of 2

New machine learning algorithms include XGBoost, MSET-SPRT, and the Adam optimizer. XGBoost is a highly efficient, scalable gradient tree boosting machine learning algorithm for regression and classification. The Multivariate State Estimation Technique–Sequential Probability Ratio Test (MSET-SPRT) algorithm is a nonlinear, nonparametric anomaly detection technique for monitoring critical processes. And Adam is a popular extension to stochastic gradient descent that uses mini-batch optimization and can make progress faster while seeing less data than the other supported neural network optimization solver, Limited-memory Broyden-Fletcher-Goldfarb-Shanno (L-BFGS) with line search.

Running Oracle Database 21c in Oracle Cloud

Oracle Database 21c currently has limited availability. It is currently only available in Always Free Autonomous Database, and in Database Cloud Service. It will be available more broadly later this year.

Always Free Autonomous Database is simple to create, and as the description says, always free, but it’s limited to one core and 20 GB of storage. (See the screenshot below.)

oracle database 21c 04 IDG

You can create autonomous databases in the Oracle Cloud with a self-service interface. Currently Oracle Database 21c is available only for small Always Free instances, and in the Database Cloud Service.

Database Cloud Service takes more effort to create (see the screenshots below), but offers you a choice of “shapes” — meaning the configuration of the VM. To perform the testing described in the next section, two cores are the minimum and four cores are recommended. Before creating the database VM, I had to create a virtual cloud network (VCN) and request a higher limit on cores and RAM than came with my account. Requests for Oracle Cloud service limit increases take a business day, or sometimes more.

oracle database 21c 05 IDG

This is the first of the forms to create an Oracle Database system in Oracle Cloud. Note the choice of the logical volume manager rather than Oracle Grid Infrastructure; this is required for the labs to test new features. Also note the choice of four cores on one node, and 256 GB of storage.

oracle database 21c 06 IDG

This is the second part of the first form to create an Oracle Database system in Oracle Cloud. The SSH key partially shown is the public key of a pair which I pasted from my Mac. Later on I used the private key of the pair to authorize a connection to the cloud VM.

oracle database 21c 07 IDG

We’re looking at the form for selecting a database software image. I needed Oracle Database version 21c to test the new features.

oracle database 21c 08 IDG

This is the second page of the form to create an Oracle Database system. Aside from naming the container and pluggable databases and setting the administrator password, I selected a workload optimized for transaction processing.

oracle database 21c 09 IDG

After about 10 minutes of provisioning, my new Oracle Database 21c cloud database was ready for use. As you can see, Oracle Cloud databases can be scaled up or down at need after creation. The amount of storage is independent of the number of cores (the shape). It’s not obvious from this screen, but scaling the database does not require shutting it down.

Once the database was ready, I was able to connect to the VM and the database service from a shell on my own machine.

oracle database 21c 10 IDG

Here I’m using SSH and a private key to connect to my cloud VM, and SQL*Plus to connect from there to the database. SQL*Plus is Oracle’s command-line database client.

Then I went through the two setup labs and many of the example labs, taking most of a day. While I fumble-fingered a few things and found a few messages alarming, I was always able to recover, and there were no serious problems with the labs. A day of running the database cost $4.43.

oracle database 21c 11 IDG

The Database 21c New Features Workshop currently allows you to test features from a command line.

I wish that I could have tested and benchmarked some of the bigger features, such as graph algorithms and JSON document performance, but Oracle isn’t ready to benchmark 21c, and they don’t usually publish benchmarks that were run in the cloud. The published performance numbers — 19 microseconds latency, 1 TB/second analytic scans, and 560 GB/second SQL throughput — were obtained in 2019 by benchmarking Oracle Database 19c running on Exadata X8M on-prem.

RDBMS and kitchen sink

Oracle Database 21c is the newest in a long line of relational databases going back to 1979. It is now a converged database, meaning that it supports relational, time series, graph, spatial, text, OLAP, XML, and JSON data all at once in the same database, and supports transactional, analytic, machine learning, IoT, streaming, and blockchain workloads. Oracle Database relies on Exadata appliances for its performance and many of its capabilities, such as automatic index creation and automatic database tuning, which are bundled into the Autonomous Database feature.

Oracle Database tries to compete with every other database in the world. Historically its on-premises prices were considered high by many customers, but moving from one database to another is non-trivial, and it sometimes took large enterprises multiple years to complete their migrations and end their Oracle contracts. Oracle’s cloud pricing now feels roughly competitive with high-performance commercial cloud database services such as SQL Azure and Amazon Aurora, but direct comparisons of pricing and performance among databases are difficult to make.

I’d suggest trying an always-free Oracle Autonomous Database cloud instance for basic functionality evaluations, and a larger Database Cloud Service instance to evaluate performance with significant amounts of data. Getting started with Oracle Database takes time, even for experienced DBAs and database programmers. I’d plan on taking at least a week to do an evaluation.

Cost: A few Oracle cloud services are free, and you can get a $300 credit when you open an account. After that, costs depend on resource usage. You can estimate your Oracle cloud costs online. Running an Exadata X8M rack on-premises starts at ~$100K plus Oracle Database user licenses; Oracle Cloud@Customer can change finances to usage-based billing.

Platform: Currently, Oracle Database 21c is only available in the Oracle Cloud. Later in 2021, it will also be available on-premises on various platforms, including Exadata hardware.

At a Glance
  • Oracle Database 21c is the newest in a long line of relational databases going back to 1979. It is now a converged database, meaning that it supports relational, time series, JSON, graph, spatial, text, OLAP, and XML data all at once in the same database, and supports transactional, analytic, machine learning, IoT, streaming, and blockchain workloads.

    Pros

    • Supports relational, time series, JSON, graph, spatial, text, OLAP, and XML data
    • Supports transactional, analytic, machine learning, IoT, streaming, and blockchain workloads
    • Cloud pricing is competitive
    • Machine learning and AutoML can run in-database
    • Multiple languages can run in-database including JavaScript

    Cons

    • Limited availability, currently only in Oracle Cloud
    • On-premises pricing has historically been viewed as high by customers

Copyright © 2021 IDG Communications, Inc.

1 2 Page 2
Page 2 of 2