Les bases de données
Les bases de données SQL
MySQL
MySQL est un serveur de bases de données
relationnelles SQL multi-thread et multi-utilisateurs. Sa haute performance, sa fiabilité et sa simplicité d'utilisation en ont vite fait la base de données open source la plus populaire au monde.
Indissociable de son environnement, elle fait donc partie de la "pile" LAMP (Linux, Apache, MySQL et PHP) qui fait la force et la notoriété de nombreux sites d'envergure
internationale (EADS, Lafarge, Nokia, etc...). MySQL fonctionne sur plus de 20 plateformes (Linux, Windows, OS/X, HP-UX, AIX, Netware ...) et sur de nombreux systèmes
d'exploitations différents (AIX, BSDi, FreeBSD, HP-UX, Linux, Mac OS X, NetWare, NetBSD, OpenBSD, OS/2 Warp, SGI Irix, Solaris, SunOS, SCO OpenServer, SCO UnixWare, Tru64 Unix, Windows 95, 98, NT,
2000, XP et Vista).
Facile d'utilisation, MySQL s'adresse aussi bien aux débutants qu'aux développeurs expérimentés. Outre le PHP, les bases de données MySQL sont accessibles en
utilisant de nombreux autres langages de programmation : C, C++, C#, Delphi / Kylix, Eiffel, Java, Python, Ruby et Tcl. Souplesse et originalité sont également garants du succès de
MySQL : le fait de pouvoir gérer simultanément plusieurs moteurs au sein d'une seule base lui est également spécifique. Chaque table peut alors utiliser un moteur différent au sein
d'une base. Ceci permet d'optimiser l'utilisation de chaque table.
PostgreSQL
PostgreSQL est un système de gestion
de base de données relationnelle et objet (SGBDRO). C'est un outil libre disponible selon les termes d'une licence de type BSD.
Ce système est concurrent d'autres systèmes de gestion de base de données, qu'ils soient libres (comme MySQL et Firebird), ou propriétaires (comme Oracle, Sybase, DB2 et Microsoft
SQL Server). Comme les projets libres Apache et Linux, PostgreSQL n'est pas contrôlé par une seule entreprise, mais est fondé sur une communauté mondiale de développeurs et
d'entreprises.
Oracle
Oracle est un système de gestion de base de
données relationnel (SGBDR) qui depuis l'introduction du support du modèle objet dans sa version 8 peut être aussi qualifié de système de gestion de base de données relationnel-objet (SGBDRO).
Fourni par Oracle Corporation, il a été développé par Larry Ellison, accompagné d'autres personnes telles que Bob Miner et Ed Oates.
Les bases de données NoSQL
Redis
Redis est une base de données de type
clé-valeur, sous licence BSD.
Le développement de Redis a commencé il y a un peu plus d'un an. C'est une sorte de Memcached boosté, avec de la persistance et de nombreuses opérations en plus.
Il est possible d'essayer ses possibilités dans un navigateur web grâce à try-redis. Son principal développeur, Salvatore Sanfilippo, vient d'être embauché par VMWare pour travailler à plein temps
sur Redis.
MongoDB
MongoDB est une base de données "orientée
document". Totalement open-source, cette dernière est développée en C++. Contrairement à MySQL par exemple, MongoDB va stocker des données sous forme de
JSON.
Comme toutes bases de données, il sera possible d'effectuer des requêtes dynamiques pour récupérer vos données, définir des index pour améliorer les performances, insérer des données et les mettre
à jour etc. La grande différence avec MySQL, c'est sans doute l'absence de tables.
En effet, vous n'aurez pas à créer un schéma de BDD à respecter. Tout est dynamique, vous pourrez à tout moment créer de nouvelles propriétés, sans pour autant perdre en performances.
Memcached
Memcached est une solution Open Source
permettant de stocker, en mémoire uniquement, de l’information.
Il est souvent utilisé pour augmenter la vitesse de réponse des sites web créés à partir de bases de données. Il gère les données et les objets en RAM de façon à réduire le nombre de fois qu'une
même donnée stockée dans un périphérique externe est lue. Il tourne sous Unix, Windows et MacOS et est distribué selon les termes d'une licence libre dite permissive.
Memcached a été initialement mis au point par Danga Interactive pour LiveJournal. En 2010, il est utilisé par d'autres sites, plusieurs très fréquentés, tels que YouTube, Reddit,
Zynga, Facebook, et Twitter.
Hbase
HBase est un système de gestion de base de
données non-relationnelle distribuée, écrit en Java, disposant d'un stockage structuré pour les grandes tables.
HBase est inspirée des publications de Google sur BigTable. Comme BigTable, elle est une base de données orientée colonnes.
HBase est un sous-projet d'Hadoop, un framework d'architecture distribuée. La base de données HBase s'installe généralement sur le système de fichiers HDFS d'Hadoop pour faciliter
la distribution, même si ce n'est pas obligatoire.
Neo4j
Neo4j est une base de données graphe, qui répond
également aux enjeux traditionnels d’une base de données (ACIDité des transactions, gestion des accès concurrents, rollback de transaction, haute disponibilité).


