carloscastilla - Fotolia
Oracle announced the general availability today of a new analytics engine for its MySQL database running in the cloud.
The MySQL database has long been used for online transaction processing (OLTP) workloads, though in recent years there has been demand for it to also support analytics use cases. The new Oracle MySQL Database Service with MySQL Analytics Engine will now enable users to run online analytics processing (OLAP) workloads alongside OLTP. The MySQL Analytics Engine will be available to only users of the Oracle Cloud Infrastructure platform, and is not part of the open source MySQL project.
"Just a few years after OLTP databases were established, the need for OLAP arose," said Holger Mueller, vice president and principal analyst at Constellation Research. "But the need for enterprises to store OLTP and analyze data has not vanished -- though it has eluded enterprises for the longest time."
Mueller added that MySQL is a popular OLTP database, and with the addition of the MySQL Database Service Analytics Engine enterprises will be able to get both OLTP and OLAP from one product. It will also help improve developers' abilities to build next-generation applications, he said.
MySQL Analytics Engine extends MySQL 8
The Oracle MySQL Database Service with MySQL Analytics Engine is built on top of the enterprise edition of the MySQL 8 database.
Nipun Agarwal, vice president of research and advanced development at Oracle, explained that because MySQL was not originally designed for analytics, users need to move the data out of the MySQL database into some other specialized database for running analytics. That's a process that can often involve some form of data migration that adds time and complexity.
He added that the advantage of using the MySQL Analytics Engine is all the data can stay in the MySQL database, whether the user is running OLAP or an OLTP workload.
"We are targeting those customers who started off with their data in MySQL, and over time as the need for analytics has grown, started migrating the data out," Agarwal said.
How the MySQL Analytics Engine works
In order to enable OLAP in MySQL, Oracle has enhanced the MySQL execution engine so that it can now process and understand when an analytics query comes in, according to Agarwal.
When a query comes in on a system using the Oracle MySQL Database Service with MySQL Analytics Engine, it is intercepted by the MySQL Optimizer component. The MySQL Optimizer then makes a decision based on the query, determining whether it should be routed for analytics or OLTP optimization.
The analytics engine is functionally an in-memory accelerator for queries. Agarwal said the in-memory accelerator makes use of hybrid columnar processing, which means it's fetching multiple database columns at a time. Going a step further, he added that Oracle has also added enhanced algorithms for distributed analytics processing.
There are several ways organizations with existing MySQL databases can benefit from the MySQL Analytics Engine, according to Agarwal. On-premises users of MySQL could choose to replicate the database, and then deploy it on the Oracle MySQL Database Service, he said. There is no need for existing users of the MySQL Database Service on Oracle Cloud Infrastructure to move data; they can make use of the analytics capability directly now.