In this tutorial we will take Mediawiki, one of the most popular open-source wiki applications, and we will use it to discuss schema and scalability design problems we suffered on Wikipedia. We will discuss how they were solved (or how we plan to solve them).
Forget about basic normalization theory or performance promises made by vendors in an ideal world. All topics discussed will be based on *actual problems* found when trying to handle the infrastructure of one of the top 10 most popular websites.
* Target audience: Developers using MySQL from any programming language; or system administrators, devops and architects in charge of the data model of its application
* Requirements: Basic SQL. Ability to read PHP. Basic familiarity with how wikis/Wikipedia works.
* Session dynamic: You are expected to contribute actively- it will not be a lecture format
* Topics (practical cases):
- Case #0: Pages and revisions
- Case #2: Supporting 290 languages
- Case #3: An abnormal denormalization
- Case #4: Key-value system
- Case #5: Revisions and deletions
- Case #6: What's links here
- Case #7: A large table
- Case #8: Anecdotes: The ghost tables and Timestamps
- Case #9: Slots
https://www.percona.com/live/plam16/sessions/mysql-schema-design-practice