Easy MySQL Database Sharding with CUBRID SHARD

24 April 3:30pm - 4:20pm @ Ballroom A

If you ask companies who operate mission-critical services, they will tell:

1) that a relational database system is still the best choice for mission-critical data;
2) that service availability is more important than performance;
3) that high performance is good, but predictable performance is the king.

This is a fact, and we know it. At NHN we have over 30,000 Web servers that operate over 150 large scale Web and mobile services. At such scale we must know what scales, how to provide high-availability and operate at predictable speed.

At Percona Live MySQL Conference 2013 I will talk about CUBRID SHARD, a universal database sharding solution for CUBRID, MySQL, and Oracle. CUBRID SHARD can be used with a heterogeneous database backend, i.e. some shards can be stored in CUBRID, some in MySQL or even Oracle. At NHN we deploy various combinations: MySQL only, MySQL + Oracle, MySQL + CUBRID, CUBRID only, and Oracle only. I will explain how DBAs can easily configure it, and how we have implemented this feature.

CUBRID SHARD allows to store unlimited number of database shards and distribute data based on modulo, DATETIME, or hash/range calculations. The developers can even feed in their own library to calculate the SHARD_ID using some complicated custom algorithm. At the session I will show how easy it is to setup all this. No need for a third-party management tool. With CUBRID SHARD application developers do not need to modify the application logic to provide data sharding. This is DBAs job as all this is handled by the database system automatically.

CUBRID SHARD is designed to be very efficient. It provides built-in (*) distributed load balancing and (*) connection and statement pooling. At the conference I will present several cases where CUBRID SHARD is deployed as a shard manager and a connection manager, or where it's used as a way for seamless data migration between different systems.

Who should come to the session?

If you run a service which spends money on a database solution, on tools you need to shard databases or manage connections, you should come and learn how CUBRID SHARD can provide your applications native scale-out through single database view.


Esen Sagynov
CUBRID Project Manager, NHN Corporation
Esen is a Node.js developer and project manager at CUBRID open source database project. He often interacts with CUBRID users community answering to their questions and helping them resolve CUBRID related issues. Beside the CUBRID project, Esen contributes to various open source projects like Hibernate, CodeIgniter, Yii, etc. In his free time, Esen maintains Pulsr, a fast Node.js Web Framework. Personally Esen is very interested in big data, scalability, and single page real-time Web apps. He enjoys reading (a lot!) and writing tech articles. He is a DZone MVB and has written over one hundred blogs at http://www.cubrid.org/blog and even more tutorials.