22 avril 2009 par pébé
Trop c’est trop. Déjà à l’époque,nous devions choisir entre un nombre incalculable de sessions… En effet sans compter les keynotes, il y avait 8 presentations en parallèle. Nouveauté cette année, en plus des sessions « standard », le MySQL camp et la conférence performance de Percona. Evidemment les horaires ne correspondent pas, et je vais devoir courir d’une salle à l’autre. Ceci sans compter les rendez-vous et les discussions de couloir…
Ce matin, j’ai zappé le keynote MySQL pour aller voir celui de Peter ( Percona ), suivi par une présentation de MariaDB… un café avec Jay Pipes, ancien manager de la communauté US et maintenant développeur pour drizzle…. puis de retour à la conf pour suivre « Build Your Own MySQL Time Machine » et « Using Q4M: A Message Queue Storage Engine for MySQL »… puis direction Percona pour voir « Your Disk Array is Slower Than it Should Be » de Paul Tuckfield / YouTube qui avait donné un excellent keynote l’année dernière…. enfin rendez-vous avec Andy Oram avec qui j’avais travaillé pour High Perfomance MySQL ( Technical Reviewer )…
Je n’ai pas encore décidé la suite de la journée… Je ne veux pas avoir l’air de me plaindre car j’apprécie la chance d’être là, mais c’est loin d’être des vacances si vous voulez tout suivre.
Mots-clefs : MySQL Conference
Publié dans User Conference 2009 |
22 avril 2009 par pébé
Dathan s’est fait connaître en étant le DBA de Flickr. Il travaille maintenant pour Rockyou sur des problèmatiques de gros volumes travaillant essentiellement avec des réseaux sociaux.
- connaître ses données ( comment elles sont ajoutées, accédées, grossies? qui sont les utilisateurs les plus actifs? )
- connaître l’application & le hardware
- connaître les problèmes ( I/O, coût, pas de downtime, … )
Les techniques:
- Federation
- Sharding
- utilise XtraDB
Les chiffres
- 4.4 billions transactions a day – 100k TPS
- 25T data
- 35k memcache gets a sec
- 10M active users
- 99.999% uptime
- …
Publié dans User Conference 2009 |
22 avril 2009 par pébé
Je connais Paul depuis maintenant quelques années, quand PBXT était seulement un petit projet qu’il avait commencé tout seul en parallele de son activité principale. 3 ans après, PBXT est un moteur de stockage qui concurrence InnoDB. Il va nous présenter l’histoire de PBXT, les challenges qu’il a dû remplir et les prévisions sur l’avenir.
PBXT est disponible pour MySQL, MariaDB et Drizzle.
Les challenges
- CPU – Le nombre de coeurs augmente mais la vitesse reste stable
- Plus de CPU -> plus de contention
- minimize les mutex
- segmentation
- read lock
- atomic
- bus contention
- SSD – no seek time
- le cluster des data n’est plus essentiel
Les Bases – un record avec une taille fixe + un record avec une taille variable
Les performances de la dernière version de PBXT ( 1.0.8 ) sont aussi bonnes que celle d’InnoDB avec 16 threads en parallele. Qu’est qui à changé?
Lire le reste de cet article »
Mots-clefs : MySQL Conference
Publié dans User Conference 2009 |
22 avril 2009 par xavier
Philippe fait partie de l’équipe MySQL QA . Il présente une méthode utilisant Random Query Generator afin de créer des jeux de test les plus exhaustifs possibles pour valider le bon fonctionnement d’une base de données.
Le paramétrage se fait en analysant un langage relativement simple. Random Query Generator permet de générer un rapport d’erreur d’exécution qui va au-delà du scope de l’application. Cet outil utilisé parallèlement au Query Analyzer permet d’avoir un maximum d’information afin d’augmenter les performances de la base.
En allant jusqu’au crash du serveur nous allons pouvoir tester la récupération des données. La solution est Multi plateforme (Linux, Solaris, Windows), très largement paramétrable mais à mon avis extrêmement phagocyteur de temps au moment de la génération du jeu d’essai. A tester aussi sur des tests de non régression.
Vous pouvez trouver Random Query Generator sur
http://launchpad.net/ranggen
et la documentation sur :
http://forge.mysql.com/wiki/Random_Query_Generator
Mots-clefs : Random Query Generator
Publié dans MySQL, User Conference 2009 |
21 avril 2009 par pébé
Boris et Dan nous présentent l’architecture de Zimbra composée entre autres d’un server ZCS, de Java Jetty, d’OpenLDAP, de MySQL 5.0, de fichiers de stockage et de Lucene.
Quelques chiffres pour chaque serveur :
- 95k mailboxes
- 11M message
- 530k messages a day
- 464k SOAP request per day
- 6.4M POP requests per day
Le serveur type est un quad core, 32G RAM
- ZCS a sa propre architecture pour gérer les REDO
- backup tout en une fois ( filesystem, database, ldap )
- restore – load le dernier backup and rejoue tous les REDO
- ZCS redo log – incrémental restore
Problèmes et solutions:
- Les tags d’un utilisateur sont stockés sur 1 seul entier ( 64 bits ) – évite les jointures
- trier les messages de la mailbox – ils utilisent les HINTS
- data partitionning – les différents tests
- 1 table pour tous les users
- 1 database par users ( limité par le filesystem )
- 100 databases with X mailboxes in it
Wrap up:
- 40M mailboxes – ( payant )
- problème de perf IMAP
- Migration lente
Mots-clefs : MySQL Conference
Publié dans User Conference 2009 |
21 avril 2009 par pébé
John travaille pour le site eMapSite et est spécialisé dans la GIS ( Système d’information géographique ). Pour plus de détail sur le concept, je vous laisse lire la définition sur wikipedia. Les SGBDs qui se sont intéréssés à ce genre de données ont été Oracle et Postgres et maintenant MySQL. MySQL a rattrapé son retard dans le domaine.
L’idée est de découper la carte en carrés contenant le plus petit objet possible. Les index R-Tree ont été développés à cette occasion, liant les « carrés » entre eux. Charger des données en base prend généralement beaucoup de temps. John utilise un trick assez sympa. Un trigger après insertion sur une table blackhole qui calcule ensuite les données GIS et les insère dans la table adéquate.
MyISAM est le seul moteur à supporter les index r-tree. Afin d’éviter des problèmes de concurrence, vous pouvez utiliser un master en InnoDB et des slaves en MyISAM.
John nous a présenté les différentes fonctions GIS de MySQL et je dois dire que c’est assez compliqué. Les requètes sont complexes et bon, il serait temps que je révise mes notions de trigonométrie…
Mots-clefs : MySQL Conference
Publié dans User Conference 2009 |
21 avril 2009 par pébé
Vous ne pouvez pas utiliser MySQL sans connaître Jeremy. Ancien Yahoo! il a été l’un des premiers à utiliser MySQL pour Yahoo! Finance et est co-auteur de MySQL High Performance, la 1ère édition. Après des années à avoir travaillé et évangélisé MySQL, Jeremy fut un responsable du développement du YDN. Il a décidé, il y a quelques temps de retourner dans la sphére de MySQL en devenant expert pour Craig List. Un de ses premiers challenges chez CL, a été d’optimiser les FULL TEXT search.
Les challenges chez CL:
- high ad churn rate – la durée de vie des annonces sur le site. Vous ne voulez plus recevoir de mails sur un item déjà vendu
- croissance
- trés gros traffic
- outil d’analyse & backend
- croissance ( et oui )
- besoin d’archiver tous les messages ( 100s de milions ) et pour toujours
- Internationalisation& utf8
Les briques logicielles sont:
- Load Balancer
- Read Proxy ( Perl + Memcached ) & Write Procxy
- Wed Read Proxy ( apache / mod_perl )
- Object Cache ( Perl / Memcached ) & Search Cluster ( Sphinx )
- Read DB Cluster ( MySQL 5.0 )
Toutes les datas sont en clusters avec un content specifique – User DB, Stats, Archive, Classified, Forum
Full Text Search chez CL en quelques points
- partition par ville
- attributs vs keywords
- connections persistantes
- 2 clusters ( 1 master, 4 slaves )
- indexing incremental
- slaves – requètes live
- 1000 QPS
- 25 MySQL -> 10 Sphinx
- recherche alentour
- 50M QPD ( par jour )
- archive des messages – une DB sans schema – couchdb?
Mots-clefs : MySQL, MySQL Conference
Publié dans MySQL, User Conference 2009 |
21 avril 2009 par pébé
Et voila… la conférence commence enfin par les traditionnels « Keynote ».
voila le programme:
- State of the Dolphin Karen Padir (Sun Microsystems)
- This is Not a Web App: The Evolution of a MySQL Deployment at Google Mark Callaghan (Google)
- Do You Believe in Magic? Bruce Armstrong (Kickfire), Justin Lin (Mamasource)
Karen qui a remplacé Marten Mickos à la tête du groupe MySQL & Software Infrastructure, nous a présenté le « bombe du jour » avec MySQL 5.4 avec plusieurs résultats de benchmark. Suite à cela, Ken Jacobs connu comme « Mr DBA » ( employé n°18 chez Oracle ) nous a, à son tour, présenté des nouveautés InnoDB… Karen a ensuite remis le « Acquirer of the year » award à Ken. A big happy familly! 
La 2eme partie de ce keynote était orientée « query analyzer » avec une présentation de l’outil.
Une autre bombe de la journée, cela n’arrête pas… des mises à jour mensuelles seront disponibles pour la version communautaire et la version MySQL Cluster 7.0 GA.
Pour terminer ce 1er keynote, les awards de l’année, entreprise, produit et communauté…. Ca commence trés fort!
PS: et la documentation de MySQL va passer GPL!
Mots-clefs : actu, MySQL Conference
Publié dans User Conference 2009 |
21 avril 2009 par pébé
Pendant son keynote, Karen a annoncée, la sortie de MySQL 5.4, la solution attendu depuis des mois aux problèmes de montée en charge de MySQL.
- Meilleure montée en charge
- Meilleures subqueries
- Nouveaux algorithmes de requètes
- Meilleures procedures stockées
- Amélioration de l’INFORMATION_SCHEMA
- support de Dtrace
Si on croit les tests présentés:
- 59% plus rapide que le 5.1.
- 71% plus rapide en 64 vs 32
Comment est née cette version? Un gros effort de MySQL/SUN pour intégrer enfin les patchs de Google, et des corrections au niveau des mutex. Vous savez quoi? Je me languis d’avoir cette bombe dans les mains. Les sites mirroirs sont mis à jour à l’instant même ou je vous parle… Des améliorations InnoDB sont aussi attendu, peut être pas encore dans la 5.4 mais ils sont dans la « to-do ».
Publié dans User Conference 2009 |
21 avril 2009 par pébé
Cela fait maintenant plus de 3 ans que je donne des cours sur les SGBD chez Yahoo! Former les équipes fait partie de mes prérogatives. Ces cours sont destinés à toutes sortes d’audience ( DBA, dev, ops, … ) et couvrent beaucoup de sujets ( HA, Scalability, Capacity Planning, … ). Mon expérience sur les bases de données s’est construite au cours des années, je me rappelle des quelques cours que j’ai eu en université mais cela remonte à quelques années… hélas. J’ai donc décidé de participer au tutorial MySQL DBA présenté par Kai Voigt, qui donne lui aussi des cours de partout dans le monde pour Sun et leurs clients. Je ne suis pas là pour comparer, mais pour voir si je présente les choses de la même façon et surtout si je n’oublie pas de couvrir certaines parties. Sachant que le cours est quand même orienté certification, je me demande combien parmis les 80 personnes présentent vont tenter leur chance.
Lire le reste de cet article »
Mots-clefs : actu, MySQL, MySQL Conference
Publié dans MySQL, User Conference 2009 |