MariaDB - events.static.linuxfound.org€¦ · closed source product, was released as part of MySQL...

Post on 30-Sep-2020

0 views 0 download

Transcript of MariaDB - events.static.linuxfound.org€¦ · closed source product, was released as part of MySQL...

MariaDB

MySQL Corrected

Michael “Monty” Widenius

About Monty

• Original author of MySQL

• Co-Founder of MySQL Ab● (with David Axmark and Allan Larsson)

• Founder of Monty Program Ab

• Swedish-Finn

• Purveyor of salmiakkikossu and vodka candies

MySQL History

• Based on Unireg, a 3GL application developed 1981-1995 • Originally the idea was to use mSQL combined with my low-level ISAM routines to access legacy Unireg data

• David Hughes, author of mSQL was not interested in this effort

● MySQL server was created from scratch● Client library based on mSQL's public domain library

• Named for my eldest daughter, My

MySQL History

• MySQL API designed to be compatible with mSQL allowing third party mSQL code to work with MySQL

• First internal release in May 1995

• MySQL Ab founded by Monty and David Axmark in 2001; before that we worked in 3 companies

MySQL History• MySQL licensed with GPL in 2000

● Before that you only paid for commercial usage

• All source made freely available

• Windows binaries, built by hand by Monty, were (before the GPL change) the only pay-for software

• Monty answered >30,000 community emails

• A lot of effort went into MySQL documentation

MySQL History• Mårten Mickos hired as CEO in 2001

• VC funding allows headcount growth

• Faster development leads to wider adoption

• Userbase doubles from 2001 to 2003

• 30K downloads per day by 2003

• Community was “left to itself” in 2002

MySQL History

• >300 employees by 2006

• >8 million active installations

• 33% of database market share

• >50 million $ in revenue for 2007

• >70K downloads a day in 2007

MySQL History• Merlin, the MySQL monitor and MySQL AB's first closed source product, was released as part of MySQL enterprise in 2006

• Community builds were no longer updated regularly; Bug fixes was first given to customers and only much later given to the community

• Comments about forking MySQL started to appear

MySQL History

• Acquired by Sun Microsystems in 2008

• I joined Sun to try to get back MySQL development on a community friendly patch

• Sun stopped the release of closed source features!

• 5.1 release, no respect for talent and no improvement when interacting with MySQL community caused friction

• I left Sun in early 2009

Monty Program

Save the people, save the project!

Monty Program• Employs key developers from the MySQL ecosystem

• Working with many others in the MariaDB community

• Follows the Hacking Business Model

• Virtual company

• Driver of MariaDB and Aria engine

The Hacking Business Model

• Technical people, not MBAs, drive the product(s) and company strategy

• Employees are stakeholders, not mere assets

• Democratic

• Rewards based on results

• http://montyprogram.com/hacking-business-model/

MariaDB• MariaDB is released under the GPLv2

• There is no “Enterprise Version” with a separate release date

• There is no “Enterprise Version” with better functionality

• The very best work done by the community and Monty Program is made available to everyone under the same Free terms

MariaDB

MariaDB is a PROJECTand not aPRODUCT

MariaDB

• Community developed

• Feature enhanced

• Backwards (drop in) compatible

MariaDB: Community developed• Monty Program is the corporate steward, not the “owner”

• Patches, bugfixes and feature enhancements by the larger FLOSS community are welcomed

• Development, roadmap, release cycle and other issues are open for community involvement

• Development and discussions are transparent•

• Development meetings are open for community (next in Istanbul)

MariaDB: Community developed• Code hosting on Launchpad

• bzr for distributed revision control

• All branches publicly accessible

• Future work and ideas can be found in Worklog

• All MP developers are on #maria on Freenode

• Launchpad mailing lists + own announce list

MariaDB: Feature enhanced• Lots of bug fixes

● Reported by community. found by our enhanced test system or when examining code when doing pulls from MySQL

• Performance enhancements

• New features

• Community patches● Open Query, Percona, Drizzle, former MySQL employees,

customers and others

• Alternative storage engines

MariaDB: 5.1 enhancements

• PBXT, XtraDB, Aria, and FederatedX engines

• Slow query log extended statistics

• Microsecond precision in process list

• Table elimination optimization

• Pool of threads

MariaDB: 5.2 enhancements• Virtual columns (Andrey Zhakov)

• Pluggable authentication

• Services for plugins (from MySQL 5.5)

• Enhanced Percona userstat v2

• Sphinx and OQgraph storage engines

• Aria extensions (group commit)

MariaDB: 5.3 enhancements• Backport optimizations for derived tables and views

• Subquery optimization: Efficient NOT IN execution with NULLs

• Subquery optimization: Avoid recalculating subquery if external fields values found in subquery cache

• Subqueries: cost-based choice between Materialization and IN->EXISTS transformation

• Hash joins and multi-range reads (MRR)

MariaDB• Roadmap is publicly available on our wiki

• Expect enhancements from the upstream version of MySQL

● We merge once a month

• Worklog is publicly viewable

• Proposals welcome

• Code welcome

MariaDB: Backwards compatible

• Drop-in replacement:● All MySQL connectors will work (PHP, Perl etc)● No need to upgrade databases● No need to recompile or change applications● Same command name, service names and options

• Not disruptive to existing workflows while providing new options, functionality and fixes

• Recompilation may be needed in future if one is using embedded MySQL (libmysqld)

MariaDB: Releases• MariaDB 5.1.42 released February 2010 as stable• MariaDB 5.1.49 is the current stable release• MariaDB 5.2.1-beta is current beta release

● RC planned withing 1-2 weeks• MariaDB 5.3-alpha is available

● RC planned for December• Source packages• .tgz for Linux and Solaris• .deb and .rpm packages• Windows binaries• Part of OpenSuse 11.3 and Gentoo

● FreeBSD ports, debian and other packages in development

So what? Why should I care?• MySQL succeeded as an open source product but failed as an open source community project

• MariaDB hopes to succeed where MySQL failed

• MariaDB is safe from marketeers, accountants, and others that drive decisions in large companies

• As regards community involvement, MySQL AB did not exemplify the best FLOSS model

• We want to make MariaDB a practical database; A database developed by and for those that use it!

Familiar FLOSS structure• “If you take the work seriously, you're doing it right. If you take yourself seriously, you're doing it wrong.”

● Using, administering and contributing to MariaDB should be a fun and rewarding experience

● Results-based hierarchy is the best approach (meritocracy)

● “There are no stupid questions, only stupid answers.”

● The community should be embraced as a stake-holding partner

● Respect differing opinions. Respect user choice.

MariaDB: Reason for existence• Provides a safe harbor for those with a large investment in MySQL

• The GPL provides guarantees that corporate promises cannot

● But GPL is not enough to ensure that a product is actively developed. This is why our effort and your help is needed.

• Oracle has made promises to the EU about the future of MySQL, but ...

MariaDB: A familiar ethos

• With MariaDB, the LAMP stack now has each project in the acronym working in similar ways with similar core philosophies and values

• Projects, not products!

MariaDB: Getting involved• Launchpad code hosting

https://launchpad.net/maria

• Launchpad groupsmaria-discuss

maria-developersmaria-captains

• #maria on Freenode IRC

• Knowledgebase http://kb.askmonty.org

MariaDB: Learning more

• http://montyprogram.com

• http://mariadb.org

Questions

Ask me anything!

MariaDB

• Thanks for coming!

• The MariaDB project has a booth in the expo hall

• And now, the black vodka!

(There are vodka chocolates in the boot for those that can't handle the black vodka)