Scale Out with the ScaleBase Data Traffic Manager
ScaleBase delivers unlimited scale to your MySQL app. The ScaleBase Data Traffic Manager acts as a proxy between the client and the database. ScaleBase implements the network protocol of the database, so the client works exactly as it used to with the original database. ScaleBase hides the implementation of multiple databases in the background, so all are orchestrated as one, to deliver scale-out capabilities.
As seen in the figure below, ScaleBase can Scale Out any database architecture; scaling data volume, session concurrency throughput, or both. This can be accomplished by either data distribution (using a technique similar to sharding) or read/write splitting, as explained below:
Data distribution (automated, policy-based sharding)
Different databases hold different portions of the data, ScaleBase routes commands to the right database to find and process data. Generally:
- Each database manages a portion of the data. Everything is more efficient: indexes structure, cache buffers, row locks, isoation management, and more.
- Each database manages a portion of concurrent sessions. It runs faster since less concurrency means higher efficiency in commit traffic, row locks, isolation management, and more.
ScaleBase performs automatic and transparent Read/Write Splitting utilizing replication slaves to offload read operations from the master database, and balance them smartly across the replication slaves. While writes are still done on the master, slave databases have data that is up-to-date and are free for read operations. As a result – overall system capacity grows, transparently, and your app now can support more and more users and transactions!
The ScaleBase architecture is based on share nothing servers, which enables linear scalability. Most applications can benefit from this approach to the handling of Big Data transactions, with improved data scaling and data high availability. The benchmark below demonstrates how ScaleBase performs when increasing the number of database shards. The test was performed on YCSB on an Amazon RDS m1.large:
- You can scale to an unlimited number of users
- You improve DB visibility with real-time monitoring
- You enhance business continuity with automated failover
- You get to keep your existing database! Backend databases are standard MySQL databases. No new DBA skills – you can use the same tuning, backup, archive that you currently have
- Non-intrusive installation. Nothing is installed on the application servers or on the database servers
- All programming languages are supported. No new drivers are required – any standard MySQL driver can be used
- Any MySQL client tool is supported, including MySQL, MySQLDump, PHPMyAdmin, SQLYog and so on.
- Complete SQL and full ACID transactional capabilities are preserved.