What is Sharding?

  • It is easy and cost effective to adopt Altibase’s scale-out technology, sharding, as it does not require any changes to your existing applications if your systems are built on relational databases.
  • Altibase’s sharding is designed to minimize the use of coordinators so that it allows for linear performance increases with almost no coordinator-related bottlenecks.

Altibase is a highly scalable open source DBMS. But, what exactly does highly scalable mean?

The ability to effectively scale with demanding and large data sets should be a key variable in the choice of database as the data size enterprises handle is growing exponentially and there is a growing concern over IT expenditures.

Sharding is a database technology which has become a prerequisite for effective scaling.

Sharding refers to an architecture where data is distributed across commodity (cheap) computers: a distributed, shared-nothing architecture in which all nodes work to satisfy a given query, but they work independently of each other, reporting back to an initiator or master node when done. The nodes do not share memory or disk space. Being cheap, we can afford many nodes, which makes the platform massively parallel processing (MPP). Data is typically distributed across nodes via a distribution key. So data in a single table would be distributed across all nodes, with the data being assigned to a node via the distribution key.

However, only a very few DBMS vendors currently provide it due to the complexity and limited experiences in producing and commercializing the technology. Altibase has been a pioneer in the development of sharding technology, and many of its customers have adopted and utilized the technology, and the net results are they have been enabled to optimize and economize on their scaling related expenditures instead of spending a huge sum on H/W addition and upgrade.

When enterprises have to add or upgrade their IT infrastructure as their existing systems cannot handle ever increasing influx of data any longer, you have two choices.

First, you can replace your existing servers with new, powerful servers. This is usually called scale-up. The problem with this choice is that those servers are unbearably expensive and that you bear huge sunk cost as you have to trash your existing servers.

Second, you add  cheap (commodity) server to existing servers. This is usually called scale-out. Overall, the second choice costs much less than the first one because of lower H/W expenses. But, the problems with the scale-out is it accompanies coordinator-related performance degradation.

Altibase resolves the problems associated with the scale-out. In most sharding technologies, a coordinator is needed to manage and administrate nodes between servers. But the coordinator itself often is a bottleneck and the performance deteriorates as a result. Altibase is unique in that its sharding is designed to minimize the use of  coordinators and thus can accelerate performance.

Another significant advantage of Altibase’s sharding is that it does not require any changes to existing applications in order to implement the scale-out if your databases are relational. Consequently, existing DBAs will find it easy to learn, adopt and administrate Altibase when they opt to scale out their systems with Altibase.

Altibase – Downloading is Believing.