MySQL Cluster: An In-Memory, NoSQL Pioneer? - InformationWeek

InformationWeek is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them.Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

IoT
IoT
Software // Information Management
News
2/27/2015
12:05 PM
Connect Directly
Google+
LinkedIn
Twitter
RSS
E-Mail
100%
0%

MySQL Cluster: An In-Memory, NoSQL Pioneer?

MySQL Cluster was NoSQL and in-memory before those became fashionable, according to Oracle. Now those traits stand out in MySQL Cluster 7.4.

10 In-Memory Database Options Power Speedy Performance
10 In-Memory Database Options Power Speedy Performance
(Click image for larger view and slideshow.)

Most people think of MySQL Cluster as the distributed, high-performance, high-availability version of the popular open source database. But way back in its history -- before MySQL acquired the database in 2003 -- Cluster was known as NDB (Network Database), and it was architected as a NoSQL, in-memory database designed primarily for telecommunications companies.

MySQL Cluster was so ahead of its time, according to Tomas Ulin, vice president of engineering, that SQL query capabilities and disk-based tables had to be added to meet the database expectations of the time.

Not nearly as many organizations were as overloaded with data in 2003 as they are today, but telcos were already swamped. NDB offered a high-performance, NoSQL-style CRUD (create, read, update, and delete) interface that fit their application requirements.

[ Want more on this topic? Read 10 In-Memory Database Options Power Speedy Performance. ]

"We were there very early on, before people started talking about NoSQL," said Ulin in a phone interview with InformationWeek. "We added a SQL-query layer because people wanted to be able to handle the complex queries that they were used to."

As for MySQL Cluster's in-memory architecture, that, too, wasn't a trending topic in 2003. In fact, most people were afraid of RAM limitations and infrastructure costs.

"Customers complained that they couldn't fit their whole data set in-memory, so disk-based tables and attributes were added," Ulin said.

These days memory is much more affordable. As an example, MySQL Cluster 7.4, which was released Thursday, has been upgraded to run on 32-core processors with 56 processing threads and a whopping 256 gigabytes of RAM per node.

Telcos aren't the only ones handling certain tables or all of their data in memory these days. Mobile app, gaming app, and e-commerce app developers are also choosing MySQL Cluster for its low-latency and high throughput, according to Ulin.

Not to confuse matters, but Oracle offers two other choices for in-memory performance. Oracle Database last year added an In-Memory option, but that feature's columnar store is aimed primarily at speeding up analytic applications. MySQL Cluster is a row store, so it's aimed exclusive at low-latency transactional applications. Oracle also offers TimesTen, an in-memory database that's also used in Telco applications, but this product is most often used as either an embedded database or as a caching tier in front of Oracle Database.

MySQL Cluster offers both SQL querying and NoSQL access to data in the distributed database.

MySQL Cluster offers both SQL querying and NoSQL access to data in the distributed database.

MySQL Cluster 7.4 also improves support for geo-redundancy -- the ability to replicate across multiple, geographically dispersed data centers. To support active-active replication across multiple data centers, 7.4 offers enhanced rollback support for resolving conflicting transactions. Thus, developers can send reads and writes to dispersed data centers without worrying about consistency problems.

"Telcos in the US typically have three data centers: one in the East, one Central, and one on the West Coast," Ulin explains. "You do that to ensure availability, and in 7.4 we have beefed up the features that ensure consistency when you're updating across all data centers."

Geo-redundancy features are a calling card for NoSQL databases such as Cassandra, but Ulin says those platforms aren't usually considered for the sorts of ACID-compliant, low-latency roles filled by MySQL Cluster.

"Many of our customers value the best-of-both-worlds that we offer, with both a high-performance NoSQL interface, together with the powerful SQL querying you can do on the same data," Ulin said.

In other performance upgrade, MySQL Cluster 7.4 supports faster table scans for improved query performance, and five-times-faster node restart times, so admins can minimize downtime in the event of failures or scheduled maintenance. This is particularly important now that nodes are growing in size.

Cluster 7.4 also offers new reports on distributed memory usage so admins can see how memory is being used and allocated to different tables on different machines.

"This becomes relevant when you need to see whether the data is evenly distributed and whether parts of the data are being loaded more than others," Ulin said, noting the first step to balancing and workload optimization.

MySQL Cluster 7.4 is available immediately. The product remains unlikely to be mentioned in the same breath as in-memory databases like SAP Hana or distributed NoSQL databases like Cassandra. But it's interesting to note that MySQL Cluster offers broader applicability and more modern performance characteristics than many realized.

Attend Interop Las Vegas, the leading independent technology conference and expo series designed to inspire, inform, and connect the world's IT community. In 2015, look for all new programs, networking opportunities, and classes that will help you set your organization’s IT action plan. It happens April 27 to May 1. Register with Discount Code MPOIWK for $200 off Total Access & Conference Passes.

Doug Henschen is Executive Editor of InformationWeek, where he covers the intersection of enterprise applications with information management, business intelligence, big data and analytics. He previously served as editor in chief of Intelligent Enterprise, editor in chief of ... View Full Bio

We welcome your comments on this topic on our social media channels, or [contact us directly] with questions about the site.
Comment  | 
Print  | 
More Insights
Comments
Newest First  |  Oldest First  |  Threaded View
Ashu001
50%
50%
Ashu001,
User Rank: Ninja
4/29/2015 | 12:14:40 PM
Re: NoSQL Access not the same as schema flexibility
Doug,

Thank you for sharing your perspective here.

As you rightly point out the discussion of the Products NoSQL roots as well as in-Memory DB is an extremely critical USP.

How much traction has the product seen since its launch?[Thanks to these USPs]?
D. Henschen
50%
50%
D. Henschen,
User Rank: Author
3/1/2015 | 9:09:29 AM
Re: NoSQL Access not the same as schema flexibility
Yes, you are correct. I did mention scalability, which almost goes without saying when you're talking about a distributed, multi-data-center database. But you are correct in pointing out that scalability is perhaps the top calling card of MySQL Cluster. However, the discussion of the product's in-memory and NoSQL roots put the emphasis on other performance charachteristics.
Ashu001
50%
50%
Ashu001,
User Rank: Ninja
2/28/2015 | 2:02:44 PM
Re: NoSQL Access not the same as schema flexibility
Doug,

Please do correct me if I am wrong here but I believe that the Scale Thing is Super-critical in the MySQL Cluster Stakes.

Yes its High-Performance ,Yes its High-Avalibility but if You can't do it at Scale you are missing out on a lot.

This will be its USP.

 

 
D. Henschen
50%
50%
D. Henschen,
User Rank: Author
2/27/2015 | 12:48:48 PM
NoSQL Access not the same as schema flexibility
Of course being like a NoSQL database, in regards to data access, is not the same as being a NoSQL database when it comes to ease of development and schema flexibility in practice. Lots of relational databases now offer management of JSON and other "new" data types, but you can't be all things to all people. MySQL Cluster's first calling is high-performance, high-availability relational database applications at scale.
Commentary
Why It's Nice to Know What Can Go Wrong with AI
James M. Connolly, Editorial Director, InformationWeek and Network Computing,  11/11/2019
Slideshows
Top-Paying U.S. Cities for Data Scientists and Data Analysts
Cynthia Harvey, Freelance Journalist, InformationWeek,  11/5/2019
Slideshows
10 Strategic Technology Trends for 2020
Jessica Davis, Senior Editor, Enterprise Apps,  11/1/2019
White Papers
Register for InformationWeek Newsletters
Video
Current Issue
Getting Started With Emerging Technologies
Looking to help your enterprise IT team ease the stress of putting new/emerging technologies such as AI, machine learning and IoT to work for their organizations? There are a few ways to get off on the right foot. In this report we share some expert advice on how to approach some of these seemingly daunting tech challenges.
Slideshows
Flash Poll