
Création de bases en ingénierie des données pour les analystes de données avec Python
Description
Introduction au livre
« Data Engineering Fundamentals for Data Analysts with Python » est un ouvrage d'introduction pratique à l'ingénierie des données destiné aux analystes de données et aux demandeurs d'emploi.
Axé sur le processus ETL (Extraction, Transformation, Chargement), qui est au cœur de l'ingénierie des données, il couvre étape par étape diverses technologies, notamment Python, MySQL, Docker, MongoDB, DuckDB, Milvus, Streamlit et FastAPI.
Le livre présente les caractéristiques suivantes :
- En commençant par la configuration de l'environnement de développement : couvre l'environnement de développement Ubuntu basé sur MacOS/Windows, Git, Python, MySQL et Docker.
- Formation pratique tout au long du processus ETL : extraire des données de diverses sources de données telles que CSV/Excel/JSONL/Web Crawling/API, les convertir à l’aide de Python et NumPy/Pandas, et les charger dans MySQL/NoSQL.
- Multithreading et optimisation : explique les limitations du GIL de Python et les stratégies de contournement, ainsi que les techniques de traitement parallèle/concurrent, avec du code réel.
- Bases de données en détail : comprend la grammaire principale de MySQL, la conception ERD, le partitionnement, la comparaison avec NoSQL et l’utilisation de MongoDB.
- Projet pratique : Expérience de création d'un pipeline ETL de bout en bout reliant DuckDB et Milvus pour la recherche vectorielle, la recherche d'images basée sur Streamlit et le développement d'applications Web FastAPI.
Axé sur le processus ETL (Extraction, Transformation, Chargement), qui est au cœur de l'ingénierie des données, il couvre étape par étape diverses technologies, notamment Python, MySQL, Docker, MongoDB, DuckDB, Milvus, Streamlit et FastAPI.
Le livre présente les caractéristiques suivantes :
- En commençant par la configuration de l'environnement de développement : couvre l'environnement de développement Ubuntu basé sur MacOS/Windows, Git, Python, MySQL et Docker.
- Formation pratique tout au long du processus ETL : extraire des données de diverses sources de données telles que CSV/Excel/JSONL/Web Crawling/API, les convertir à l’aide de Python et NumPy/Pandas, et les charger dans MySQL/NoSQL.
- Multithreading et optimisation : explique les limitations du GIL de Python et les stratégies de contournement, ainsi que les techniques de traitement parallèle/concurrent, avec du code réel.
- Bases de données en détail : comprend la grammaire principale de MySQL, la conception ERD, le partitionnement, la comparaison avec NoSQL et l’utilisation de MongoDB.
- Projet pratique : Expérience de création d'un pipeline ETL de bout en bout reliant DuckDB et Milvus pour la recherche vectorielle, la recherche d'images basée sur Streamlit et le développement d'applications Web FastAPI.
indice
# Table des matières
Entrée** ...................................................
10
Chapitre 1.
Mise en place de l'environnement de développement (p.12)
- Configuration de l'environnement de développement Ubuntu 24.02 LTS (MacOS) ...........
12
- Configuration d'un environnement de développement Ubuntu 24.02 LTS (Windows) .........
16
- Redirection de ports ......................
17
- Configuration de Git .................................................
20
- Configuration de l'environnement de développement Python .............................
23
- Installation et configuration de base de MySQL ........................
28
- Installation et configuration de Docker ............................
35
Chapitre 2. Grammaire Python de base pour l'ETL (p. 41)
- Aperçu de l'ETL .......................................
41
- Pourquoi utiliser Python pour l'ETL ? .................
42
- Exemple 1 : Collecte des données de journalisation du serveur ................
45
- Exemple 2 : Extraction de données via une connexion API ............
46
- Grammaire Python de base pour le multithreading ..............
47
Chapitre 3.
Multithreading en Python (p. 53)
- Principes de base de la création et de la gestion des discussions ........................
54
- Limitations du GIL de Python et du traitement parallèle ..................
61
- Contournement du GIL et stratégies de traitement parallèle/concurrent efficaces........
62
- Processus unique vs processus multiples ..................
65
Chapitre 4.
Extraction des données (p.71)
- Extraction de données à partir de fichiers CSV ........................
71
- Extraction de données à partir d'Excel ...........................
84
- Extraction de données basée sur JSONL ..........................
92
- Exploration du Web (requêtes, BeautifulSoup) ........
105
- Exploration de l'API OpenWeatherMap ..................
118
- Collecte de données MySQL ..............................
129
Chapitre 5.
Grammaire des clés MySQL (p. 144)
- Exploration des rôles principaux de MySQL ...........................
144
- Tutoriel d'introduction à MySQL .................................
147
- Créer une base de données d'exemple ............................
148
- Concept et méthode d'utilisation du diagramme ER ...........................
151
- Grammaire principale de MySQL ................................
156
- Partitionnement des données sur les prix de transaction des appartements par année...
174
- Analyse efficace à l'aide de données partitionnées ..........
179
Chapitre 6.
Transformation des données (p. 186)
- Traitement des données de type chaîne de caractères ...........
188
- Comprendre et utiliser les expressions régulières .......................
190
- Principes, nécessité et implémentation de la vectorisation NumPy ..................
196
- Analyse des performances de vectorisation de Pandas et NumPy ............
202
- Gestion des valeurs manquantes avec NumPy ........................
209
- Traitement des data frames ? Transformation des colonnes et conversion de type…
231
- Traitement des trames de données ? Traitement des dates et des heures…
243
- Exemples pratiques de traitement des données de séries temporelles ............
265
Chapitre 7.
Chargement des données (p. 274)
- Le besoin de chargement dans ETL .....................
274
- Python rencontre les bases de données .....................
275
- Collecte et traitement des données de journalisation pratiques .....................
294
- Stockage des données de journalisation MySQL dans Parquet ...............
308
- Analyse comparative des bases de données NoSQL
312
- Enregistrement des journaux d'erreurs à l'aide de MongoDB ................
318
Chapitre 8. Exemples pratiques de construction de pipelines ETL et de recherche vectorielle (p. 346)
- Aperçu général du système ................................
346
- Accès à plusieurs bases de données .....................
347
- Technologies et rôles clés ..........................
348
- Processus de collecte des données (Extraction) ........................
349
- Processus de transformation et de chargement des données (Transform & Load) ......
361
- Dualisation du chargement de DuckDB et Milvus .................
393
Exemple de recherche d'images Streamlit ......................
400
- Création d'une application web avec FastAPI et Streamlit ............
403
Entrée** ...................................................
10
Chapitre 1.
Mise en place de l'environnement de développement (p.12)
- Configuration de l'environnement de développement Ubuntu 24.02 LTS (MacOS) ...........
12
- Configuration d'un environnement de développement Ubuntu 24.02 LTS (Windows) .........
16
- Redirection de ports ......................
17
- Configuration de Git .................................................
20
- Configuration de l'environnement de développement Python .............................
23
- Installation et configuration de base de MySQL ........................
28
- Installation et configuration de Docker ............................
35
Chapitre 2. Grammaire Python de base pour l'ETL (p. 41)
- Aperçu de l'ETL .......................................
41
- Pourquoi utiliser Python pour l'ETL ? .................
42
- Exemple 1 : Collecte des données de journalisation du serveur ................
45
- Exemple 2 : Extraction de données via une connexion API ............
46
- Grammaire Python de base pour le multithreading ..............
47
Chapitre 3.
Multithreading en Python (p. 53)
- Principes de base de la création et de la gestion des discussions ........................
54
- Limitations du GIL de Python et du traitement parallèle ..................
61
- Contournement du GIL et stratégies de traitement parallèle/concurrent efficaces........
62
- Processus unique vs processus multiples ..................
65
Chapitre 4.
Extraction des données (p.71)
- Extraction de données à partir de fichiers CSV ........................
71
- Extraction de données à partir d'Excel ...........................
84
- Extraction de données basée sur JSONL ..........................
92
- Exploration du Web (requêtes, BeautifulSoup) ........
105
- Exploration de l'API OpenWeatherMap ..................
118
- Collecte de données MySQL ..............................
129
Chapitre 5.
Grammaire des clés MySQL (p. 144)
- Exploration des rôles principaux de MySQL ...........................
144
- Tutoriel d'introduction à MySQL .................................
147
- Créer une base de données d'exemple ............................
148
- Concept et méthode d'utilisation du diagramme ER ...........................
151
- Grammaire principale de MySQL ................................
156
- Partitionnement des données sur les prix de transaction des appartements par année...
174
- Analyse efficace à l'aide de données partitionnées ..........
179
Chapitre 6.
Transformation des données (p. 186)
- Traitement des données de type chaîne de caractères ...........
188
- Comprendre et utiliser les expressions régulières .......................
190
- Principes, nécessité et implémentation de la vectorisation NumPy ..................
196
- Analyse des performances de vectorisation de Pandas et NumPy ............
202
- Gestion des valeurs manquantes avec NumPy ........................
209
- Traitement des data frames ? Transformation des colonnes et conversion de type…
231
- Traitement des trames de données ? Traitement des dates et des heures…
243
- Exemples pratiques de traitement des données de séries temporelles ............
265
Chapitre 7.
Chargement des données (p. 274)
- Le besoin de chargement dans ETL .....................
274
- Python rencontre les bases de données .....................
275
- Collecte et traitement des données de journalisation pratiques .....................
294
- Stockage des données de journalisation MySQL dans Parquet ...............
308
- Analyse comparative des bases de données NoSQL
312
- Enregistrement des journaux d'erreurs à l'aide de MongoDB ................
318
Chapitre 8. Exemples pratiques de construction de pipelines ETL et de recherche vectorielle (p. 346)
- Aperçu général du système ................................
346
- Accès à plusieurs bases de données .....................
347
- Technologies et rôles clés ..........................
348
- Processus de collecte des données (Extraction) ........................
349
- Processus de transformation et de chargement des données (Transform & Load) ......
361
- Dualisation du chargement de DuckDB et Milvus .................
393
Exemple de recherche d'images Streamlit ......................
400
- Création d'une application web avec FastAPI et Streamlit ............
403
SPÉCIFICATIONS DES PRODUITS
- Date d'émission : 2 septembre 2025
- Nombre de pages, poids, format : 408 pages | 148 × 210 mm
- ISBN13 : 9791112052599
Vous aimerez peut-être aussi
카테고리
Langue coréenne
Langue coréenne