17
jan

Meetup MariaDB SkySQL / LeMUG.fr

   Posted by: freshdaz   in Conférence, MariaDB

SkySQL et Le MySQL User Group Francophone (lemug.fr) vous invitent à une rencontre MariaDB le 1 février 2012 à Paris, afin de découvrir ou approfondir vos connaissances de MariaDB, le SGBD 100% compatible avec MySQL développé par Michael « Monty » Widenius, le père fondateur de MySQL.

A cette occasion Colin Charles, MySQLer actuellement chez Monty Program Ab, animera une conférence intitulée: « MariaDB: The new M in LAMP »

 

 

Lieu

Patricks Irish Pub
33 rue de Montreuil
Paris 11ème
( à 5 mn de Bastille et Gare de Lyon à Ligne 8, Metro Faidherbe-Chaligny )
Visualiser le plan

 
Venez nombreux échanger avec la communauté MySQL
- Open Bar de 18h00 à 20h00 -
PAF : GRATUIT

Inscription (obligatoire)

 

Biographie :  Colin Charles
Colin Charles works at Monty Program Ab on MariaDB. He lives in Kuala Lumpur, Malaysia and had worked at MySQL since 2005. Before joining MySQL, he worked actively on the Fedora and OpenOffice.org projects. He’s spoken at many conferences - linux.conf.au, The MySQL Conference & Expo, foss.in, to name a few.

Tags: , , , ,

9
jan

Améliorations de l’optimiseur dans MariaDB

   Posted by: freshdaz   in bench, MariaDB

Les équipes de MariaDB ont énormément travaillées sur l’optimiseur de la version 5.3, notamment en permettant une réelle utilisation des sous-requêtes.

Voici un effet visuel de ces optimisations:

Avec MySQL 5.5, l’utilisation de tables dérivées (type de sous-requêtes dans la clause FROM d’un SELECT), donne le plan d’exécution suivant:

MySQL-5.5 > EXPLAIN SELECT * FROM (SELECT * FROM (SELECT * FROM City ccc ) cc ) c \G
*************************** 1. row ***************************
id: 1
select_type: PRIMARY
table: <derived2>
type: ALL
possible_keys: NULL
key: NULL
key_len: NULL
ref: NULL
rows: 4079
Extra:
*************************** 2. row ***************************
id: 2
select_type: DERIVED
table: <derived3>
type: ALL
possible_keys: NULL
key: NULL
key_len: NULL
ref: NULL
rows: 4079
Extra:
*************************** 3. row ***************************
id: 3
select_type: DERIVED
table: ccc
type: ALL
possible_keys: NULL
key: NULL
key_len: NULL
ref: NULL
rows: 4079
Extra:

 

Le même EXPLAIN avec MariaDB 5.3 donne:
MariaDB-5.3 >  EXPLAIN SELECT * FROM (SELECT * FROM (SELECT * FROM City ccc ) cc ) c \G
*************************** 1. row ***************************
id: 1
select_type: SIMPLE
table: ccc
type: ALL
possible_keys: NULL
key: NULL
key_len: NULL
ref: NULL
rows: 4079
Extra:

L’optimiseur comprend que les 2 niveaux de « SELECT * FROM » ne servent à rien, et réécrit donc la requête.

L’intérêt n’est heureusement pas que visuel:

Sur MySQL 5.5:

mysqlslap –create-schema=world -i10 -q »SELECT * FROM (SELECT * FROM (SELECT * FROM City ccc ) cc ) c ; » -S/tmp/mysql_55.sock
Benchmark
Average number of seconds to run all queries: 0.004 seconds

 

Sur MariaDB 5.3:
mysqlslap –create-schema=world -i10 -q »SELECT * FROM (SELECT * FROM (SELECT * FROM City ccc ) cc ) c ; » -S/tmp/mariadb_53.sock
Benchmark
Average number of seconds to run all queries: 0.002 seconds

Le test étant réalisé sur un petit volume de données, le temps écoulé n’est pas très important, cependant l’on peu noter que l’optimisation apporté par MariaDB, divise le temps d’exécution par 2 dans ce contexte (à conf équivalente, données équivalentes,…).

 

D’autres tests s’imposent, mais l’on peut déjà féliciter les équipes de MariaDB

Les vidéos du meetup Viadeo/LeMUG sont dispo:

enjoy

Vous pouvez consulter les photos du meetup Viadeo/LeMUG sur le compte FB du MUG:

https://www.facebook.com/media/set/?set=a.10150393843136937.345851.46154571936&type=3

 

A venir les vidéos

enjoy

Un article de Michael « Monty » Widenius, co-fondateur de MySQL et fondateur de MariaDB parlant des bases de données, intéressant…

From MySQL to MariaDB, Michael « Monty » Widenius talks about databases and his projects.

++

Tags: ,

Voici les supports des conférenciers du meetup Viadeo / LeMUG du 16 novembre:

 

 

les photos et les vidéos des présentations sont disponibles.

 

enjoy :)

 

Tags: ,

20
oct

Meetup MySQL Viadeo / LeMUG.fr à Paris

   Posted by: freshdaz   in Conférence, MySQL

Viadeo le réseau social professionnel et Le MySQL User Group Francophone (lemug.fr) vous invitent à une rencontre MySQL le 16 novembre 2011 à Paris.

Venez profiter, par le biais de 4 conférences, d’études de cas et de retours d’expérience sur l’utilisation de MySQL dans les environnements à forte charge de Viadeo, Dailymotion, Virgin Mobile et Paybox !

Conférenciers :
—————

* Stéphane Combaudon : Maatkit/Percona Toolkit en pratique
Stéphane est DBA MySQL chez Dailymotion. Il travaille sur la plate-forme LAMP depuis presque 10 ans pour différentes sociétés et est particulièrement enthousiaste au sujet de MySQL. Il intervient régulièrement dans des conférences sur MySQL et sur les logiciels libres.

* Olivier Dasini : Étude de cas : migration MySQL Latin 1 vers UTF-8
Olivier a 10 ans d’expérience en tant que consultant et formateur certifié MySQL. Aujourd’hui expert en MySQL chez Viadeo, il milite pour la promotion des logiciels libres et est également fondateur du blog de vulgarisation autour de MySQL http://dasini.net/blog. Il est co-fondateur du MySQL User Group Francophone LeMUG.fr.

* Cédric Peintre : Planification et monitoring de mysqldump avec ZRM community
Cédric est DBA MySQL et Oracle depuis plus de 10ans et spécialisé dans l’optimisation des  performances des bases de données ainsi que dans la conception et l’intégration d’outils de monitoring et d’exploitation. Il partage depuis peu son expérience de MySQL sur son blog http://www.mysqlplus.net

* Marc Thomas : Passer de 10 000 à plus de 10 000 000 de paiements par mois
Marc est directeur technique de PAYBOX depuis 2003. Il est dans le domaine des moyens de paiements depuis 1994.

Programme :

19h00 : Présentation de Viadeo
19h15 : Planification et monitoring de mysqldump avec ZRM community (Cédric Peintre)
20h00 : Maatkit/Percona Toolkit en pratique (Stéphane Combaudon)
20h45 : cocktail !
21h15 : Passer de 10 000 à plus de 10 000 000 de paiements par mois (Marc Thomas)
22h00 : Étude de cas : migration MySQL Latin 1 vers UTF-8 (Olivier Dasini)

 

 

 

Quand ?

Mercredi 16 novembre 2011

 

 ?

Cette rencontre aura lieu dans les locaux de Viadeo au

30 rue de la victoire 75009 Paris

à 10 min de la gare Saint-Lazare

ligne 12, métro Notre-Dame-de-Lorette

Ligne 7, métro Le Peletier

 

Prix ?

Entrée libre, INSCRIPTION OBLIGATOIRE

 

Nombre de places limitées, inscrivez-vous vite !

Tags:

Les 24 et 25 octobre 2011 se déroulera le « Percona Live MySQL Conference » à Londres, à l’America Square Conference Centre at 1 America Square 17 Crosswall London EC3N 2LB.

Les meilleurs gourous MySQL seront présent comme:

  • Peter Zaitsev, Baron Schwartz: Percona
  • Domas Mituzas: Facebook
  • Yoshinori Matsunobu: DeNA

Toutes les informations sur le site de Percona:

 

Mon agenda perso, devrait être proche de ça:

Lundi 24 octobre 20110

8:00 AM: enregistrement (ça va être dur)

09:00 AM: Ludgate Suite Innodb Architecture and Performance Optimization : Peter Zaitsev (Percona)

02:00 PM: Ludgate Suite Expert Troubleshooting: Resolving MySQL Problems Quickly : Baron Schwartz (Percona)

 

Mardi 25 octobre 2011

07:30 AM: enregistrement (ça va être très très dur)

08:45 AM: Opening Keynote : Peter Zaitsev (Percona)

09:30 AM: Opening Keynote: Characterizing Performance : Paul Mikesell & Aaron Passey (Clustrix)

10:15 AM: Fleet Suite: Data Recovery for MySQL : Aleksandr Kuzminsky & Istvan Podor (Percona)

11:00 AM: Bishopsgate Suite: Maximizing MySQL Availability, Data Integrity, Performance, and Scalability : Dr. John Busch (Schooner)

 

11:45 PM: Fleet Suite: MySQL Backup and Recovery: Tools and Techniques : René Cannao (PalominoDB)

 

01:30 PM: Walbrook SuitePreventing downtime in production MySQL servers : Espen Braekken (Percona)

02:00 PM: Walbrook Suite: Hybrid Applications Using MongoDB and MySQL : Brendan McAdams (10gen)

02:30 PM: Newgate Suite: MHA: Introducing automated MySQL Master Failover solution : Yoshinori Matsunobu (DeNA)

 

3:30 PM: Fleet Suite: Why MariaDB? : Colin Charles (Monty Program Ab)

4:00 PM: Walbrook Suite: Increase Performance of MySQL Queries with Sphinx : Andrew Aksyonoff (Sphinx Search)

4:30 PM: Walbrook Suite: Fixed in Drizzle: No more GOTCHA’s : Henrik Ingo (Nokia)

 

Alors si vous êtes dans le coin, pingez moi :)

 

 

 

 

Tags:

29
août

Duplicate key causé par un SELECT

   Posted by: freshdaz   in Astuce, MySQL

Parmi les erreurs courantes en MySQL, ont trouve la fameuse ERROR 1062 (23000): Duplicate entry ’2984′ for key ‘PRIMARY’ causée par la tentative d’insertion d’une données, déjà présente, dans un colonne ayant une contrainte d’unicité.

Dans la même famille il y a aussi l’erreur 1022…

Une banale requête de lecture avec un GROUP BY:

mysql> SELECT DISTINCT(name), COUNT(name) FROM membre WHERE name <>  » GROUP BY name
ERROR 1022 (23000): Can’t write; duplicate key in table ‘/tmp/#sql_29lm_0′
 

C’est assez surprenant de trouver une telle erreur sur une requête aussi triviale !

En regardant le plan d’exécution, on remarque que outre le fait qu’ un index est plus que recommandé, MySQL créé une table temporaire (/tmp/#sql_29lm_0) et c’est en insérant les données dans cette dernière que le « duplicate key » se déclenche.

 
mysql> explain  SELECT DISTINCT(name), COUNT(name) FROM membre WHERE name <>  » GROUP BY name\G
*************************** 1. row ***************************
id: 1
select_type: SIMPLE
table: membre
type: ALL
possible_keys: NULL
key: NULL
key_len: NULL
ref: NULL
rows: 92633696
Extra: Using where; Using temporary; Using filesort
 
Alors ça à tout l’air d’un bug, d’ailleurs 3 sont ouverts à ce sujet, pour les version 5.1 et 5.5 (le 1er depuis le 9 Nov 2010…):

http://bugs.mysql.com/bug.php?id=58081
http://bugs.mysql.com/bug.php?id=60808
http://bugs.mysql.com/bug.php?id=62097

Le contournement que j’ai trouvé à été d’augmenter pour la session, les caches utilisés par la requêtes, à savoir le max_heap_table_size et le tmp_table_size:

mysql> SET SESSION max_heap_table_size=536870912; SET SESSION tmp_table_size=536870912;
mysql> SELECT DISTINCT(name), COUNT(name) FROM membre WHERE name <>  » GROUP BY name
+—————+————-+
| name          | COUNT(name) |
+—————+————-+
|     Abano     |           3 |
 

Cela dit, ça serait quand même pas mal, qu’ Oracle fasse le nécessaire pour enfin corriger ce bug…

Tags: ,

23
août

Numéro spécial MySQL dans phpsolutions

   Posted by: freshdaz   in MariaDB, MySQL, PHP

Le magazine phpsolutions propose ce mois-ci, un numéro spécial « Utilisez PHP avec MySQL »

Au sommaire:

  • Introduction à la sécurité et à la gestion des utilisateurs avec MySQL par Olivier Dasini
  • Introduction à PHP/MySQL et l’ORM Doctrine par Julien Tailleu
  • Les moteurs de tables MyISAM et InnoDB depuis MySQL 5.5 par Jean-Baptiste Monin
  • Programmation d’événements par Christian Soutou
  • MySQL, déclencheurs, fonctions et procédures stockée par Pascal Cescato
  • Mise en place de triggers sous PHPMyAdmin par David Peronne

Il est disponible depuis leur site : http://phpsolmag.org/utilisez-php-avec-mysql/

Un extrait est téléchargeable gratuitement: http://phpsolmag.org/nous-vous-invitons-a-telecharger-l%E2%80%99extrait-du-numero-dulisilez-php-avec-mysql/

enjoy !