Wordcraft 0.8

Wordcraft est une API réalisé en PHP et MySQL vous permettant de réaliser des blogs. Il se veut être simple et léger.
Ce nouveau projet propose une interface WYSIWYG editée avec YUI. Vous pourrez utiliser des options comme le captcha ou Akismet.
Les autres options sont très répandu comme le marquage des postes, la date de publication, le mod_rewrite, les emails de notifications aux auteurs....
Cette nouvelle version a subit quelques importantes évolutions, comme la possibilité de réaliser des pages HTML plus facilement, une documentation pour maitriser l'outil.

mysql archive et partition

Petite expérience sur mysql 5.1

4 tables de même structure mais 4 stockages différents : MyISAM et archive, avec et sans partition. un peu plus de 500 enregistrements ....

sans partition

MyISAM 52Ko ->Archive : 20 Ko

avec partition

Myisam 63 Ko -> Archive 12.1Ko

Là je suis étonné, l'archive avec partition est 40% plus petite.

J'ai ajouté 31000 enregistrements

sans partition

  • MyISAM : 52Ko -> 1.59Mo
  • Archive : 20 Ko -> 90Ko !!!!

avec partition

  • MyISAM : 63 Ko -> 1.6Mo
  • Archive : 12.1Ko -> 82Ko

2 grande conclusions

  • L'archive ça vaut vraiment le coup quand on peut supporter ses limites
  • Le partitionnement ne change rien (il y a des différences négligeables)

Je reste quand même étonné …

[Lire plus]
[18/03/09] Gestion des données, Performance, ZFS, Open Storage et MySQL

Pour la venue à Paris de Roch Bourbonnais, Senior Performance Analyst ZFS/OpenStorage, nous vous proposons de participer à une soirée de débats et d’échanges autour des dernières tendances du stockage de données et des meilleurs pratiques sur les performances de ZFS et de l’Open Storage. Ce sera l’occasion de réunir ensemble, à nouveau, les communautés [...]

Afficher le plan d’execution d’une requête MySql

Mysql offre la possibilité d’afficher à l’utilisateur le plan d’exécution pour une requête données. Pour cela, il suffit de précéder la requête à analyser de l’instruction EXPLAIN.

Ainsi utilisé, MySql affiche en résultat à l’utilisateur un tableau permettant de détailler comment l’optimiseur de requête va exécuter celle-ci. C’est ce qu’on appelle le plan d’exécution. Le tableau affiché en résultat peu contenir de 1 à plusieurs lignes.

Dans le cas d’une requête simple, ce tableau contiendra une ligne.

Dans le cas d’une requête contenant deux instructions SELECT associées avec la clause UNION, le tableau contiendra trois lignes :

  • une ligne pour chaque exécution de l’instruction SELECT,
  • une ligne pour le résultat de l’instruction UNION

Le tableau affiché contient les colonnes suivantes :

[Lire plus]
Actualité de développement PEAR, edition 237

6 paquets ont été mis à jour cette semaine :

PEAR est la …

[Lire plus]
Créer une file de traîtement avec Innodb

Ce post est à moitié une manière de faire , et une autre une façon de mieux le faire?

Donc, vous voulez construire un système qui effectue des tâches. Vous voulez que le travail puisse être organisé en parallèle pour la vitesse, mais aussi pour la redondance. Ce système doit être coordonnée de façon, par exemple, les mêmes tâches ne sont pas faites deux fois, le statut de chaque tâche est facile à voir, et de multiples serveurs peuvent effectuer les tâches simplement en interrogeant la source centrale.

Voici la traduction de Creating a Job queue in Innodb Comment peut-on construire cela avec innodb pour avoir MySQL comme système central de notre système?

[MYSQL]
CREATE TABLE IF NOT EXISTS job_queue(
   id int(10) not null auto_increment,

   updated timestamp not null,
   started timestamp not null, …
[Lire plus]
Genérer vos pages Web suivant la provenance de l'ip de provenance

Pour tous les développeurs qui sont amenés à réaliser un site internet internationaux, ils peuvent être intéresser de savoir personnaliser une page suivant la provenance de l'IP et ainsi de géo-localiser votre visiteur.
Le site devshed propose se tutorial avec le langage PHP et une seule base de donée MySQL

Optimisation de requêtes: comprendre l’optimiseur de MySQL


Le but de cet article est d’optimiser une simple requête  (SELECT avg(Population) FROM city GROUP BY CountryCode) et surtout de comprendre comment l’optimiseur procède, en étudiant les résultats donnés par les variables qui permettent de surveiller le serveur MySQL.

Le schéma utilisé est le schéma world téléchargeable ici

Voici la structure de la table city:

SHOW CREATE TABLE city\G
*************************** 1. row ***************************
Table: city
Create Table: CREATE TABLE city (
ID int(11) NOT NULL AUTO_INCREMENT,
Name char(35) NOT NULL DEFAULT ”,
CountryCode char(3) NOT NULL DEFAULT ”,
District char(20) NOT NULL DEFAULT ”,
Population int(11) NOT NULL DEFAULT ‘0′,
PRIMARY KEY (ID)
) ENGINE=MyISAM …

[Lire plus]
Liens symboliques et fichiers temporaires sous MyISAM

Récemment confronté à des problèmes ponctuels d’espace disque sur un serveur gros consommateur de ce type de ressources (datawarehouse), j’ai dû temporairement jongler entre différentes partitions afin de permettre au serveur MySQL de continuer à fonctionner.

Le problème :
La partition accueillant le répertoire d’installation standard de notre MySQL arrivant à saturation, il devenait impossible de passer certaines commandes dont le ALTER TABLE. Celle-ci nécessite en effet la plupart du temps (pour MyISAM) la création de fichiers temporaires (.MYD, .MYI, .frm) dont les tailles sont semblables à celles des fichiers initiaux (aux modifications de structure près). Le hic : la taille restante sur cette partition ne permettait pas la création de tels fichiers.

Sur une table de plusieurs centaines de millions de lignes, pesant quelques dizaines de Go, un ALTER TABLE prend souvent plusieurs …

[Lire plus]
Actualité de développement PEAR, edition 236


4 paquets ont été mis à jour cette semaine :

  • CodeGen : Outils de création de générateur de code qui fonctionnent à partir de fichiers XML
  • CodeGen_MySQL_UDF : Génération de fonctions MySQL UDF à partir d'une description XML
  • CodeGen_MySQL : Paquet abstrait pour les générateurs de code MySQL
  • System_Daemon : Transforme un script PHP en démon Linux

PEAR est la bibliothèque de composants PHP.

 

  •  PEAR (0 visite)
  •   …
[Lire plus]