WebScaleSQL
WebScaleSQL is an open source database management system (DBMS) created as a software branch of MySQL 5.6. By joining efforts of a few companies and incorporating various changes and new features into MySQL, WebScaleSQL aims toward fulfilling various needs arising from deploying MySQL in large-scale environments.[1][2]
Project's source code is licensed under version 2 of the GNU General Public License, and hosted on GitHub.[3][4]
Overview
Running MySQL on numerous servers with large amounts of data (at the scale of terabytes and petabytes of data) creates a set of difficulties that in many cases arises the need for implementing specific customized MySQL features, or for introducing changes to MySQL. More than a few companies were facing the same (or very similar) set of difficulties in their production environments, what used to result in multiple solutions for similar challenges.[3][5][6]
WebScaleSQL was announced on 27 March 2014 by Facebook, Google, LinkedIn and Twitter as a joint effort, aiming to provide a centralized development structure for extending MySQL with new features specific to its large-scale deployments, such as building large replicated databases running on server farms. Thus, WebScaleSQL opens a path toward deduplicating the efforts each company had been putting into maintaining its own branch of MySQL, and toward bringing together more developers.[1][4]
WebScaleSQL is created as a branch of the MySQL's latest production-ready community release, which is version 5.6 as of March 2013. As the project aims to tightly follow new MySQL community releases, branching path has been chosen instead of becoming a software fork. Selection of MySQL community releases for the WebScaleSQL's upstream, instead of selecting some of MySQL forks, was the result of a consensus between the four founding companies; it was concluded that features already existing in version 5.6 of MySQL are adequate for large-scale deployments, with even more such features planned for version 5.7 of MySQL.[1][3][4]
Features
WebScaleSQL's initial changes and additions to the MySQL 5.6 source code came from the four founding companies' engineers; however, the project is open to peer-reviewed community contributions.[7] As of March 27, 2014, available new features and changes include the following:[4][8]
- a framework providing automated testing of all proposed changes
- a customized suite of database performance tests
- various changes to the tests provided by MySQL's community release
- performance improvements in various areas, including buffer pool flushing, execution of certain types of SQL queries, and support for NUMA architectures
- changes related to large-scale deployments, such as the ability to specify sub-second client timeouts.
As of March 28, 2014, planned new features and changes include the following:[1]
- asynchronous MySQL client that will eliminate waiting on the client-side while establishing database connections, sending queries and receiving results
- availability of various table, user and compression statistics
- changes to internal compression mechanisms
- addition of a logical read-ahead mechanism that brings significant performance improvements for full table scans.
Availability
WebScaleSQL is distributed in source-only form, with no official binaries available. As of March 27, 2014, compiling the source code and running WebScaleSQL is supported only on x86-64 Linux hosts, requiring at the same time a toolchain that supports C99 and C++11 language standards.[4]
The source code is hosted on GitHub, available under the GPL v2 license.[3][4]
See also
References
- ↑ 1.0 1.1 1.2 1.3 Steven J. Vaughan-Nichols (March 28, 2013). "WebScaleSQL: MySQL for Facebook-sized databases". ZDNet. Retrieved April 1, 2014.
- ↑ Klint Finley (March 27, 2013). "Google and Facebook Team Up to Modernize Old-School Databases". Wired. Retrieved April 1, 2014.
- ↑ 3.0 3.1 3.2 3.3 Jack Clark (March 27, 2013). "Forkin' 'L! Facebook, Google and friends create WebScaleSQL from MySQL 5.6". The Register. Retrieved April 1, 2014.
- ↑ 4.0 4.1 4.2 4.3 4.4 4.5 "Frequently Asked Questions". webscalesql.org. March 27, 2014. Retrieved April 1, 2014.
- ↑ "Patches for MySQL 5 - MySQL tools released by Google". code.google.com. June 24, 2011. Retrieved April 1, 2014.
- ↑ "facebook/mysql-5.1". github.com. June 2013. Retrieved April 1, 2014.
- ↑ "Is Your Change Appropriate?". webscalesql.org. March 27, 2014. Retrieved April 1, 2014.
- ↑ Michael Larabel (March 28, 2014). "Facebook & Others Announce WebScaleSQL". Phoronix. Retrieved April 1, 2014.
External links
- Official website
- WebScaleSQL 5.6 source on GitHub
- WebScaleSQL: A collaboration to build upon the MySQL upstream (provides details for new features)
- MariaDB and WebScaleSQL
|
|