Académique Documents
Professionnel Documents
Culture Documents
2
Introduction
› Le « Big Data » est un terme générique employé pour désigner les
stratégies et technologies mises en œuvre pour rassembler,
organiser, processer et analyser de vastes ensembles de données.
Le Big Data est l’art de gérer et d’exploiter de gros volumes de
données.
3
Définition simple du Big Data
4
Définition plus avancée du Big Data
– Les grosses bases de données.« Big Data » signifie d’abord« big volume of
data ». Dans le Big Data, il y a l’idée qu’on ne gère pas de la même manière
des bases de données classiques et des énormes volumes de données. A partir
d’un certain seuil, la différence quantitative, volumétrique, se transforme en
différence qualitative. Les process et traitements changent de nature. A partir
d’un certain seuil, les données ne peuvent plus être gérées de manière
classique, dans des bases et des outils classiques. Ce qui nous amène
immédiatement au second point.
– Les dispositifs informatiques et plus largement les technologies utilisés
pour gérer de gros volumes de données. Le Big Data ne renvoie pas qu’aux
données en tant que telles, mais aussi aux technologies, aux stratégies, aux
techniques utilisées pour gérer de gros volumes de données.
5
Définition plus avancée du Big Data
6
Définition du Big Data par les 3 « V »
7
Définition du Big Data par les 3 « V »
– Vélocité. Depuis le début, nous insistons sur la problématique du volume. Dans Big
Data, il y a évidemment « Big ». Mais dans le Big Data, le volume n’est pas le seul
sujet. Un système Big Data, c’est aussi un système dans lequel la donnée circule
vite entre les outils, les bases, les applicatifs, les sources. Les données arrivent
dans le système en provenance de sources multiples et sont processées souvent
en temps réel pour générer des insights et mettre à jour le système. Dans le Big
Data, l’approche orientée « batch » tend progressivement à céder sa place au
streaming de données en temps réel ou quasi-temps réel. Dans certains cas
d’usage du Big Data, le temps réel ou le quasi temps-réel sont nécessaires.
– Variété. Les données sont en grand nombre et circulent vite dans le système. Mais
ce n’est pas tout. Le Big Data se caractérise aussi par l’immense variété des
données traitées. Les bases de données relationnelles ont affaire à des données
structurées, bien définies, bien classées, bien normées. Un Data
Warehouse organise de manière structurée des données structurées. Dans le Big
Data, les données sont dans leur majorité non-structurées ou semi-structurées.
C’est pour cette raison que Big Data rime davantage avec Data Lake qu’avec Data
Warehouse.
8
Définition du Big Data par les 3 « V »
9
Définition du Big Data par d’autres « V »
– Variabilité. La variabilité des données entraîne une variation de leur qualité. Le fait
que les données évoluent dans le temps peut entraîner une dégradation de leur
qualité. Dans un système Big Data, il est important d’avoir à disposition des outils
permettant d’identifier, de traiter et de filtrer les données de faible qualité pour en
optimiser l’utilisabilité.
– Valeur. Le défi ultime du Big Data est de créer de la valeur. Or, parfois, les
systèmes et les procédures en place sont si complexes qu’il devient difficile
d’extraire de la valeur des données à disposition (d’en dégager des insights). La
valeur rappelle la finalité business de tout projet Big Data – cette finalité business
peut être atteinte directement (programmes & scénarios relationnels basés sur le
Big Data) ou indirectement (via les analyses de BI).
10
PYTHON & BIG DATA
11
Plan
› Introduction
› Python le plus populaire pour le Big Data
› Raisons du choix du Python pour le Big Data
› Principales Librairies Python pour le Big Data
12
Introduction
› Plusieurs profils pour les projets big Data:
– Data Engineer: est un spécialiste technique qui élabore, construit et entretient les
systèmes de données d'une entreprise. Ils orchestrent l'architecture de données, mettent
en place des flux de données sophistiqués et veillent à ce que les données soient
aisément accessibles et exploitables pour l'analyse par les Data Scientists et autres
acteurs de la data.
› Compétences: robuste maîtrise en programmation (Java,Scala, C/C++,,…), bases de données,
SQL et systèmes distribués, un Data Engineer est également à l'aise avec les technologies de
big data comme Hadoop et Spark.
13
Introduction
› Mais Il y a trois autres profils qui travaillent en frontal d’un projet Big
Data et n’ont pas nécessairement besoin de maîtriser le cycle de vie
complet du développement d’une application Data :
14
Python le plus populaire pour le Big data
› A la base, Python n’était pas conçu pour l’analyse de données, mais plus pour le
développement web. Avec le temps, Python s’est tellement enrichi qu’aujourd’hui il fait
partie des langages les plus utilisés dans le paysage de la data et celui du Big Data. Il
est très efficace pour:
– le web scraping
– le traitement de données
– le machine Learning
– la Data Science
– l’analyse de données
› Pour tous ces domaines, python offre une vaste bibliothèque d’API, combinée à une
facilité d’utilisation inégalée qui lui permet de couvrir quasiment toute l’exhaustivité des
cas d’usage de la data. Ainsi, si vous souhaitez travailler dans le Big Data, et en
particulier en tant que Data Analyst, Business Ananlyst, ou encore Data Scientist, alors
vous devez avoir au moins une bonne base en programmation python.
15
Raisons pour choisir python pour le Big Data
› Un langage Open Source avec une grande communauté mondiale.
› Syntaxe facile: beaucoup plus facile à apprendre que C, C++ et même Java. On
prend comme exemple la déclaration des variables. Le type des variables est
déterminé implicitement par Python, sans avoir besoin de le spécifier clairement
comme on doit le faire en C.
› Orienté Objet: ce qui lui apporte les grands avantages de ce concept: la
modularité, l’abstraction, la productivité et ré-utilisabilité, la sûreté…
› Multiplateformes: Windows, Linux ou MacOS,
› Large gamme de librairies: pour plusieurs domaines et notamment la data science.
› Une variété importante d’EDI stables: On prend comme exemple les Notebooks,
des organisateurs de code absolument primordiaux pour les Data scientists. Ces
Notebooks peuvent être gérés par plusieurs IDE sur machine locale ou sur Cloud.
On note comme exemple Jupyter et Google Colaboratory.
16
Principales librairies python pour le Big Data
› Pandas.
› Numpy.
› Matplotlib.
› Scipy,
› Etc,….
17
INSTALLATION D’ ANACONDA
18
Plan
› Anaconda pour Python pour vos projets data.
› Installer Anaconda pour Python.
› Anaconda Navigator.
› Anaconda prompt.
› Création d’un environnement virtuel.
› Créer un environnement virtuel avec Anaconda Navigator.
› Créer un environnement virtuel avec Anaconda Prompt,
19
Anaconda pour Python pour vos projets Data
› Anaconda est à la fois un outil et une entreprise. Celle-ci
contribue à une part importante de l’écosystème de la data
science en python par son action de soutien à de nombreux
projets open source.
20
Anaconda pour Python pour vos projets Data
› Anaconda met à votre disposition une solution vous
permettant d’installer tous l’écosystème data avec
notamment :
21
Installer Anaconda pour Python
› Anaconda est une solution multiplateformes, vous pouvez installer
Anaconda sur Windows, Linux ou Mac. Nous nous concentrons ici sur la
version Windows.
Télécharger Anaconda:
› Une fois le fichier téléchargé, vous pouvez le lancer. Si vous désirez une
version allégée d’Anaconda, vous pouvez utiliser Miniconda qui ne
comprend que le gestionnaire d’environnement sans les packages
préinstallés, https://docs.conda.io/en/latest/miniconda.html).
22
Installer Anaconda pour Python
Installation:
› L’installation se fait en double-cliquant sur le fichier
téléchargé. Le processus d’installation commence alors.
23
Installer Anaconda pour Python
Installation:
› Je vous conseille de ne pas ajouter le chemin Anaconda
au PATH de Windows.
24
Installer Anaconda pour Python
Installation:
› Une fois le processus terminé, vous aurez dans votre
menu Windows accès à différents outils, les deux
principaux étant :
– Anaconda Navigator qui est une interface visuelle pour gérer vos
environnements
– Anaconda Prompt qui est un terminal pour gérer vos
environnements
25
Anaconda Navigator
Anaconda Navigator:
› Il s’agit d’une interface visuelle permettant de lancer les
différents API de traitement disponibles.
26
Anaconda Navigator
Anaconda Navigator:
› Et de gérer les environnements Anaconda (onglet
Environments)
27
Anaconda Navigator
› Cette interface permet de naviguer simplement dans le
logiciel, sans devoir connaître toutes les lignes de code de
Conda. Dans Anaconda Navigator, vous pouvez retrouver ces
différentes API :
– JupyterLab
– JupyterNotebook
– Spyder
– Pycharm
– VSCode
– Orane 3 APP
– RStudio
– Anaconda powerShell
28
Anaconda prompt
Anaconda prompt:
› C’est une ligne de commande ou un terminal qui permet
d’accéder à l’outil conda afin de gérer vos environnements.
29
Anaconda prompt
Anaconda prompt:
› Cette interface vous permet de travailler sur différents
environnements, de lancer des interfaces de développement
(IDE), d’installer et de mettre à jour des packages.
30
Anaconda prompt
Anaconda prompt:
› Pour créer un nouvel environnement et l’activer, on pourra
utiliser :
31
Anaconda Prompt
› Une liste de commandes de bases Anaconda prompt:
32
Création d’un environnement virtuel
› Pour fonctionner correctement, les programmes Python nécessitent parfois, une
version spécifique d’un package. Cela arrive quand :
– Un programme a été implémenté sur une ancienne version d’un package mis à jour depuis .
– Que le programme utilise des packages compatibles uniquement avec celui-ci.
– Parce qu’un certain bug a été corrigé.
› Ainsi il n’est pas toujours possible de travailler sur vos différents projets avec la
même version de Python ou de vos packages. En effet, si un de vos projets
dépend de la version 1.3 d’un package et qu’une autre application dépend de la
version 2.0, ces dépendances entrent en conflit.
33
Créer un environnement virtuel avec Navigator
› Dans l’onglet “Environments”, il suffit de créer un nouvel environnement virtuel
en cliquant sur “Create”. Puis d’installer ou de mettre à jour les packages dont
vous avez besoin, grâce au menu de gauche.
34
Créer un environnement virtuel avec conda
› Avec Conda, il faut suivre une suite de commandes à remplir qui vous
permettront de créer facilement votre premier environnement:
Si votre companie utilise a proxy vous pouvez recevoir le message d’erreur suivant:
35
Créer un environnement virtuel avec conda
– À la suite de cette commande, Anaconda va créer un dossier avec un environnement complet dedans:
l’interpréteur Python 3.11, les libs, etc. C’est une installation isolée.
– D’ailleurs, si vous utilisez cette commande sans préciser la version de python, Conda installera la version
de python livrée par défaut avec Anaconda : conda create -n mon_environement.
– pour activer votre environnement et travailler dessus, entrez : conda activate -n mon_environement.
– Vous pouvez alors observer que votre prompt de ligne de commande va changer
en (mon_environement) C:\dev $
Cela indique que vous allez travailler dans votre environnement virtuel.
– Maintenant, toute commande exécutée dans ce terminal fera uniquement appel à la version de Python
associée à l’environnement virtuel. Votre code aura aussi accès à chaque librairie exclusivement installée
dans cet environnement.
– Une fois votre travail terminé, n’oubliez pas de fermer votre espace de travail avec : conda deactivate
36
CONCEPTS DE BASE DE PYTHON
37
Premier contact avec Python
› Python est un langage interprété, c'est-à-dire que chaque
ligne de code est lue puis interprétée afin d'être exécutée
par l'ordinateur. ouvrez un shell puis lancez la commande :
python
› La commande précédente va lancer l'interpréteur Python.
Vous devriez obtenir quelque chose de ce style pour
Windows :
38
Premmier contact avec Python
› Exécution d’une commande:
› Pour une commande longue, on peut la découper sur plusieurs lignes en utilisant le caractère \:
› Pour quitter l'interpréteur Python, sous Windows, on tape soit la commande exit() puis en validant en appuyant sur la
touche Entrée, ou on tape Ctrl et Z puis Entrée. Sous Linux on presse simultanément les touches Ctrl et D alors que sous Mac
OS on presse X.
39