CM9 - Homepage of Louis

publicité
Plan
Administration des Bases de Données
Systèmes de Gestion de Base de Données
Panorama
MySQL
Louis-Claude Canon
[email protected]
PostgreSQL
Bureau 429C
Oracle Database
Licence 3 informatique – Semestre 6
Louis-Claude Canon
ABD – Panorama
NoSQL et BigData
1 / 24
Systèmes de Gestion de Base de Données
Louis-Claude Canon
ABD – Panorama
2 / 24
Systèmes de Gestion de Base de Données
Plan
SGBDs libres
Systèmes de Gestion de Base de Données
Synthèse des principales solutions libres
MySQL
MySQL “Le SGBD libre le plus populaire du monde.”
PostgreSQL “Le SGBD libre le plus avancé du monde.”
PostgreSQL
SQLite SGBD intégrable dans une application (Firefox, Skype, Google
Gears, . . . ).
Oracle Database
Firebird, Ingres, . . .
NoSQL et BigData
Louis-Claude Canon
ABD – Panorama
3 / 24
Louis-Claude Canon
ABD – Panorama
4 / 24
Systèmes de Gestion de Base de Données
SGBDs propriétaires
Synthèse des principales solutions propriétaires
Oracle Database Le SGBD le plus complexe, robuste et flexible du monde.
DB2 Plus proche compétiteur d’Oracle Database (IBM).
SQL Server Leader sur les systèmes Windows (Microsoft).
Louis-Claude Canon
ABD – Panorama
6 / 24
Systèmes de Gestion de Base de Données
Systèmes de Gestion de Base de Données
Répartition des offres d’emploi et des salaires moyens 2
Répartition des revenus liées aux SGBDs propriétaires
Revenu total en 2010/2011 des SGBDs (millions de dollars
Vendeur
Oracle
IBM
Microsoft
SAP
Teradata
Autres
Total
2010
9 990,5
4 300,4
3 641,2
744,4
754,7
1 315,3
20 746,6
2011
787,0
870,4
098,9
101,1
882,3
1 389,7
24 129,5
11
4
4
1
Part 2010
48,2%
20,7%
17,6%
3,6%
3,6%
6,3%
100,0%
US) 1
Part 2011
48,8%
20,2%
17,0%
4,6%
3,7%
5,8%
100,0%
:
Progression
18.0%
13,3%
12,6%
47,9%
16,9%
5,7%
16,3%
I
Les revenus liés au produit Oracle Database dépassent ceux des 4 plus
gros compétiteurs.
I
Oracle + IBM (DB2 et Informix) + Microsoft = 86% des revenus.
1. Chiffres Gartner, mars 2012 : Market Share : All Software Markets, Worldwide, 2011,
http://www.gartner.com/id=1969315, 9 995$.
Louis-Claude Canon
ABD – Panorama
7 / 24
SGBD
13/2/15
13/2/13
Progression
SQL Server
MySQL
Oracle Database
PostgreSQL
DB2
SQLite
17325
5529
2012
990
729
122
21706
6101
2924
819
842
129
-20%
-9%
-31%
+21%
-13%
-5%
2. http://www.itjobswatch.co.uk
Louis-Claude Canon
Systèmes de Gestion de Base de Données
ABD – Panorama
MySQL
Performances et tailles des grandes bases de données
Plan
Tests de performance normalisés pour comparer les différents SGBDs sur
une base commune 3 :
Systèmes de Gestion de Base de Données
Taille du bench
100 GB
300 GB
1 000 GB
3 000 GB
10 000 GB
30 000 GB
100 000 GB
SGBD
EXASOL EXASolution 4.0
EXASOL EXASolution 4.0
EXASOL EXASolution 4.0
EXASOL EXASolution 4.0
EXASOL EXASolution 4.0
Oracle Database 10g R2 EE
Hitachi Advanced Data Binder 01-02
8 / 24
Query-per-Hour
1 112 401
2 180 712
4 253 937
5 556 993
7 128 255
150 960
82 678
MySQL
PostgreSQL
Oracle Database
NoSQL et BigData
3. http://www.tpc.org/tpch/results/tpch_perf_results.asp
Louis-Claude Canon
ABD – Panorama
9 / 24
Louis-Claude Canon
MySQL
I
I
MySQL : historique
3.23 (2001) Version correspondant à l’arrivée concrète de MySQL.
Partie commune :
I
10 / 24
MySQL
MySQL : architecture
I
ABD – Panorama
4.0 (2003) UNION, introduction d’InnoDB.
Gestion des connexions.
Interpréteur, optimisation et cache de requêtes.
4.1 (2005) Support pour les sous-requêtes et UTF-8.
5.0 (2006) Vues, déclencheurs et procédures stockées.
Moteur de base de données :
InnoDB Supporte les transactions et l’intégrité référentielle.
MyISAM Performant pour les lectures.
Archive Optimisé pour les insertions uniquement.
...
5.1 (2008) Partitionnement, réplication par ligne.
5.5 (2010) InnoDB par défaut, amélioration des performances, de la
réplication, de la scalability, . . .
5.6 (2013) Amélioration de l’optimisateur de requêtes.
5.7 (2015) Amélioration de la sécurité, . . .
Louis-Claude Canon
ABD – Panorama
11 / 24
Louis-Claude Canon
ABD – Panorama
12 / 24
MySQL
PostgreSQL
MySQL : prospective
Plan
Systèmes de Gestion de Base de Données
I
MySQL acquis pas Sun en 2008 (racheté ensuite par Oracle en 2010).
I
MariaDB : alternative à MySQL (fork communautaire de 2009).
MySQL
PostgreSQL
Oracle Database
NoSQL et BigData
Louis-Claude Canon
ABD – Panorama
13 / 24
Louis-Claude Canon
PostgreSQL
I
I
Écriture de procédures stockées en Python ou en Perl (extensions pour Java,
Lua, SQL/PSM, R, Ruby, . . . ).
Plus avancées que MySQL, proche d’Oracle Database.
Volonté de supporter le standard (la plupart des fonctionnalités de
SQL:2011 sont supportées).
Exemple de procédure en Python
Performance :
I
I
I
I
PostgreSQL : langages supportés
Fonctionnalités :
I
Optimisateur de requêtes efficace pour les requêtes complexes.
Initialement réputé pour être lent, en particulier pour les requêtes
simples.
Performance actuelle comparable à MySQL et Oracle Database.
Versions : 0.01 (1995), . . . , 8.3 (2008), 8.4 (2009), 9.0 (2010), 9.1
(2011), 9.2 (2012), 9.3 (2013), 9.4 (2014), 9.5 (2016).
Louis-Claude Canon
14 / 24
PostgreSQL
PostgreSQL
I
ABD – Panorama
ABD – Panorama
1
2
3
4
5
6
7
8
9
CREATE TABLE em ployee ( name TEXT , salary INT , age INT ) ;
CREATE FUNC TION ov erpa id ( e emp loy ee ) RETURNS BOOLEAN AS $$
if e [ " salary " ] > 2 0 0 0 0 0 :
return True
if ( e [ " age " ] < 3 0 ) and ( e [ " salary " ] > 1 0 0 0 0 0 ) :
return True
return False
$$ LANG UAGE p l p y t h o n u ;
Louis-Claude Canon
15 / 24
Oracle Database
ABD – Panorama
16 / 24
Oracle Database
Plan
Oracle Database
Systèmes de Gestion de Base de Données
MySQL
PostgreSQL
Oracle Database
I
Historique : V2 (1979), V3 (1983), V4 (1984), V5 (1985), V6 (1988),
V7 (1992), V8 (1997), V9 (2001), V10 (2003), V11 (2007), V12
(2013).
I
Écrit en C.
I
Multi-plateforme (mainframe/serveur, Unix/Windows, . . . ).
I
Interconnexion possible avec d’autres SGBD.
NoSQL et BigData
Louis-Claude Canon
ABD – Panorama
17 / 24
Louis-Claude Canon
ABD – Panorama
18 / 24
Oracle Database
Oracle Database
Dictionnaire Oracle
I
Organisation du dictionnaire Oracle
4 classes :
I Vues relatives aux objets d’un utilisateur (préfixées par USER_) :
Contient des informations sur :
I
I
I
les tables, les vues, les déclencheurs, les procédures stockées,
les utilisateurs
et l’activité de la base de données.
I
I
I
1300 4 ).
I
Accessible par l’intermédiaire de vue (plus de
I
Modifiable par les processus Oracle uniquement.
USER_TABLES, USER_OBJECTS, USER_CONSTRAINTS
USER_SOURCE, USER_TRIGGERS, USER_ERRORS
USER_USERS, USER_TAB_GRANTS, USER_TAB_PRIVS
I
Vues relatives aux objets accessibles par un utilisateur (préfixées par
ALL_).
I
Vues relatives aux administrateurs (préfixées par DBA_).
I
Vues relatives au suivi des performances (préfixées par V$).
4. http://www.oracle.com/pls/db102/catalog_views
Louis-Claude Canon
ABD – Panorama
19 / 24
Louis-Claude Canon
NoSQL et BigData
ABD – Panorama
20 / 24
NoSQL et BigData
Plan
Simplifications du SQL
Systèmes de Gestion de Base de Données
NoSQL et Big Data
MySQL
Apparition à la fin de la décade 2000. Adapté aux besoins et problématiques
qui sortent du cadre bases de données relationnelles :
PostgreSQL
Oracle Database
I
traitement simple sur de nombreuses données,
I
simples associations clé-attribut (table de hachage),
I
relâchement des propriétés ACID (pour la concurrence).
NoSQL et BigData
Louis-Claude Canon
ABD – Panorama
21 / 24
NoSQL et BigData
Répartition des offres d’emploi et des salaires moyens 5
Mot-clé
26/9/14
29/9/12
Progression
Big Data
NoSQL
MongoDB
MapReduce
2026
1792
1407
250
664
835
566
96
305%
115%
149%
160%
5. http://www.itjobswatch.co.uk, septembre 2014.
Louis-Claude Canon
ABD – Panorama
23 / 24
Louis-Claude Canon
ABD – Panorama
22 / 24
Téléchargement