Le langage SQL pour l'analyse de données
SQL est le langage qui permet d'interroger les bases de données relationnelles sur lesquelles reposent les entrepôts de données. Maîtriser le langage SQL est un impératif pour l'analyste de données qui doit contamment récupérer des données. Dans cette formation, vous apprendrez les bases de SQL et ses fonctionnalités avancées pour l'analyse de données.
SQL signifie Structured Query Language, il s'agit du langage qui permet d'interroger les bases de données relationnelles. Étant données que les entrepôts de données reposent essentiellement sur des bases de données relationnelles (SQL Server, Postgres), maîtriser le langage SQL est un impératif pour l'analyste de données qui doit contamment récupérer des données.
Bases de données
Une base de données est une collection de données stockées dans des fichiers. Les bases de données relationnelles sont organisées en lignes et en colonnes stockées dans des tables. Une ligne représente un enregistrement et une colonne un attribut. Chaque colonne a un type bien défini.
Ces tables sont semblables aux tableaux dan Excel. La base de données elle-même peut être vue comme un fichier excel contenant plusieurs tableaux.
Structure relationnelle
Les tables d'une base de données relationnelles peuvent être reliées entre elles à travers des relations, c'est de là que vient la notion de relationnel.
Systèmes de Gestion de Bases de Données Relationnelles
Il existe plusieurs systèmes de gestions de bases de données relationnelles.
- SQLite
- SQL Server
- Oracle
- MySQL
- MariaDB
- Postgres
Structured Query Language
SQL est le langage qui permet d'interagir avec les bases de données relationnelles. Les requêtes SQL représente environ 80% du travail du Data Analyst. Ci-dessous, un exemple de requête.
Il s'agit généralement des requêtes de lecture. En effet, ajouter ou modifier des données ne fait pas partie de l'analyse de données qui traitent les données historiques souvent déjà aggrégées et stockées dans un data warehouse.Les différentes sont classées en deux catégories DDL et DDM.
Data Definition Language
Il s'agit des requêtes qui permettent de créer, modifier ou supprimer les objets de la base de données.
# | Requête | Mot clé |
---|---|---|
1 | Créer des objets | CREATE |
2 | Modifier des objets | ALTER |
3 | Supprimer des objets | DROP |
Data Control Language
Il s'agit des requêtes de contrôle de données permettent de gérer les droits des utilisateurs ou des rôles sur des objets.
# | Requête | Mot clé |
---|---|---|
1 | Accorder des droits | GRANT |
2 | Retirer des droits | REVOKE |
Data Manipulation Language
Il s'agit des requêtes qui conernent les données contenues dans les tables. Il y a exactement trois types de requêtes DML.
# | Requête | Mot clé |
---|---|---|
1 | Création | INSERT |
2 | Modification | UPDATE |
3 | Suppression | DELETE |
Data Query Language
Il s'agit des requêtes de type SELECT
qui permettent de récupérer les données. C'est l'essentiel du travail de l'analyste de données.
On regroupe généralement les requêtes DML et DQL sous l'acronyme CRUD pour Create Read Update et Delete.
Les dialiètes du SQL
Chaque SGDBR implémente ses fonctionnalités personnalisées qui lui sont propres d'où les dialètes du SQL. Le dialète le plus connu, celui de SQL Server dénommé Transact-SQl (T-SQL).
Par exemple il implément la limitation du nombre de lignes différemment TOP
au lieu de LIMIT
.
SELECT TOP(<nombre>) <colonnes>
FROM <table>
WHERE <condition>
ORDER BY <colonne>;
SQL pour l'analyse de données
SQL peut accomplir 80% du travail d'un analyste de données. C'est un outil puissant, il ne s'agit pas de que récupérer des données brûtes des bases de données, les nettoyer, les transformer (aggrégations, jointures,...) au final créer des tables de reporting. La logique ETL s'implémente aisément avec des scripts SQL. En effet, SQL implémente des logiques de programmation grâce aux extensions que proposent les SGDBR.
Information Technology Specialist Databases
La cetification Information Technology Specialist Databases est une certification qui permet aux anlystes de données de démontrer leur connaissance des fondements s=des bases de données et du langage SQL.
- Database Design
- Database Object Management using DDL
- Data Retrieval
- Data Manipulation using DML
- Troubleshooting
Cas Pratique
Dans le cadre de cette formation
Pour en savoir plus sur les bases de données, je vous recommande cette lecture.