Bookmark and Share
Tools for sharding
(Publish Date: 2009-8-18 11:33am, Total Visits: 4251, Today: 2, This Week: 2, This Month: 5)

(high performance MySQL 2nd Ed. Page 417~432)

1. MySQL proxy

http://forge.mysql.com/wiki/MySQL_Proxy

HSCALE - Horizontal Scaling for MySQL
http://hscale.org/display/HSCALE/Home

HSCALE is a plugin written for MySQL Proxy which allows you to transparently split up tables into multiple tables called partitions. In later versions you will be able to put each partition on a different MySQL server.

Spock Proxy
http://spockproxy.sourceforge.net/

Spock Proxy supports range-based horizontal paritioning of a large MySQL database. The proxy intercepts SQL queries from the client, sends queries to the correct databases based on how the database is partitioned, then aggregates the results from each database and returns them to the client as a regular MySQL result set.
Spock is built on Rails and ActiveRecord.


2. (http://shards.hibernate.org)

which is written in Java. Google

Hibernate Shards offers critical data clustering and support for horizontal partitioning (also called sharding) to Hibernate. Now, customers can keep their data in more than one relational database for whatever reason-too much data or to isolate certain datasets, for instance-without added complexity when building and managing applications. Hibernate Shards is designed to encapsulate and reduce the complexity of building applications that work with sharded datasets.

3. HiveDB (http://www.hivedb.org),


MySQLConf 09: This is Not a Web App: The Evolution of a MySQL Deployment at Google
http://www.bestechvideos.com/2009/04/28/mysqlconf-09-this-is-not-a-web-app-the-evolution-of-a-mysql-deployment-at-google

mysqlha.blogspot.com

references:

MySQL Scale out
http://www.infoq.com/cn/presentations/fengdahui-mysql


MySQL Cluster is designed not to have any single point of failure.
http://dev.mysql.com/doc/refman/5.0/en/mysql-cluster-overview.html

MySQL Sharding ?? (Share Nothing)
http://www.dbanotes.net/database/database_sharding.html


Sphinx

http://highscalability.com/tags/shard

http://www.25hoursaday.com/weblog/2009/01/16/BuildingScalableDatabasesProsAnd
ConsOfVariousDatabaseShardingSchemes.aspx

Database Sharding Blog
http://www.codefutures.com/weblog/database-sharding/labels/Sharding%20Case%20Studies.html

Sphinx
http://bbs.php.cn/thread-22740-1-4.html

Database Sharding at Netlog, with MySQL and PHP
http://www.jurriaanpersyn.com/archives/2009/02/12/database-sharding-at-netlog-with-mysql-and-php/

?“DataBase Sharding at Netlog”,?DataBase Scale Out
http://cenwenchu.javaeye.com/blog/343324

Sharding (Partition)???
http://blog.zdnet.com.cn/html/81/289381-1714053.html

Sphinx
http://www.busibridge.com/busibridge/?p=15


A partition is a structure that divides a space into two parts. Multiple partitions can break up that space into an arbitrary number of parts. One common use is taking a single large table and splitting it into parts in order to place those parts that are accessed more frequently on faster (more expensive) storage.