Vous êtes sur la page 1sur 39

Cours Big Data en

assurance avec Python


Niveau: 3L-MKG
Année Universitaire: 2023-2024
Plan
› Introduction
› Définition du Big Data
› Définition du Big Data par les 3 « V »
› Définition du Big Data par d’autres « V »

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

› Le terme « Big Data » fait référence à des ensembles de données


d’une taille et d’une complexité telles qu’ils défient les capacités des
systèmes de gestion de données traditionnels.

› Il ne s’agit pas simplement de la quantité, mais aussi de la variété


(données structurées, non structurées, semi-structurées) et de la
vélocité (la vitesse à laquelle les nouvelles données sont générées et
collectées).

4
Définition plus avancée du Big Data

› Le Big Data est utilisé pour désigner deux ensembles de choses :

– 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

› Les entreprises n’ont jamais eu autant de données à leur disposition,


mais, pour la plupart, elles ne savent pas quoi en faire, elles n’en
exploitent qu’une toute petite partie. Le Big Data, c’est avant tout l’art
et la manière de faire un usage efficace de l’énorme volume de
données que pratiquement toutes les organisations ont à leur
disposition.
› Le Big Data permet d’exploiter de manière optimale les données à
disposition, d’en dégager le maximum d’enseignements (insights) à
valeur stratégique, de trouver plus facilement les réponses aux
questions que l’on se pose.

6
Définition du Big Data par les 3 « V »

› En 2001, Doug Laney, un analyste de chez Gartner, a donné une


définition intéressante du Big Data. Pour expliquer ce qu’est le Big
Data, il a présenté la théorie des 3 V. C’est un mode de
présentation du Big Data simple et efficace. Elle permet de mieux
appréhender la définition du Big Data. Selon Doug Laney, le Big
Data peut se comprendre à partir de trois notions ayant tous la
particularité de commencer par la lettre « V »:

– Volume. Un système Big Data se caractérise d’abord par le volume de données


en jeu. Un système Big Data traite un volume de données largement supérieur
à ce que traitent les bases de données traditionnelles. Ce qui pose un défi
technologique : les volumes de données en jeu excèdent les capacités de
stockage d’un simple ordinateur, nécessitent des mises en réseau, l’utilisation
du Cloud Computing…L’infrastructure IT sous-jacente doit être en mesure
d’accueillir, de digérer et de traiter ces gros volumes de data.

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 »

› En résumé, le Big Data est l’art de gérer de gros volumes de


données, complexes et hétérogènes, pour la plupart non structurées,
qui doivent circuler vite dans un système donné. Ce n’est pas
possible avec les technologies classiques de gestion de données.
C’est pour cette raison qu’une définition du Big Data ne doit pas
simplement se concentrer sur les données, leur volume, leur format,
mais aussi sur les technologies qui rendent possible les traitements
Big Data.

› Certains auteurs ou éditeurs de logiciels ont voulu ajouter d’autres «


V » aux trois proposés par Gartner, pour mettre en avant d’autres
défis posés par le Big Data :

9
Définition du Big Data par d’autres « V »

– Véracité. La variété des sources et la complexité des traitements peuvent poser


des problèmes en ce qui concerne l’évaluation de la qualité des données (et, in
fine, la qualité des analyses faites à partir d’elles). La problématique de la Data
Quality est structurante dans n’importe quel projet Big Data.

– 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 Architect: conçoit et gère l'infrastructure de données d'une organisation. Ils


établissent les standards pour toutes les opérations de données, créent des
schémas de données et assurent l'intégrité, la sécurité et l'optimisation
des systèmes de données.
› Compétences requises: Oracle, MySQL, SQL Server, et PostgreSQL, Hadoop, Apache Spark,
etc,…

– 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 :

– Le Data Analyst: qui va mener des analyses de données en frontal et


développer des tableaux de bord.
– Le Data Scientist: qui va développer des modèles statistiques.
– Le Business Analyst: qui va se concentrer exclusivement sur la recette, pour
valider que les données produites par l’application sont conformes aux
spécifications métier.
› Pour ces trois profils, il est essentiel de maîtriser un langage comme
R ou principalement Python.

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.

› Dans ce cours, nous installons et nous utilisons la version


gratuite d’Anaconda.

› C’est quoi Anaconda:


– C’est Une solution open source tout-en-un
– Des packages et des outils inclus
– Un gestionnaire d’environnements 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 :

– une installation de python


– les packages de data science tels que numpy, pandas, scikit-
learn…
– des IDE de dernière génération tels que Jupyter (JupyterLab et
Jupyter Notebooks) ou Spyder,
– l’outil conda pour gérer les environnements et les répertoires de
packages.

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:

› Première étape, télécharger Anaconda. Il faut bien prendre une version


pour Python 3 et en 64 bits, vous trouverez la dernière version ici:
https://www.anaconda.com/products/individual

› 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.

› Pour installer un package sur l’environnement actif, on pourra


utiliser :

› On utilise ici l’outil conda, on récupère sur un répertoire de


package nommé conda-forge.

30
Anaconda prompt
Anaconda prompt:
› Pour créer un nouvel environnement et l’activer, on pourra
utiliser :

› Dans le cas ci-dessus on a créé un nouvel environnement


pour lequel on a installé la version 3,9 de Python,

31
Anaconda Prompt
› Une liste de commandes de bases Anaconda prompt:

– Pour lancer l’application d’Anaconda “Jupyter Notebook” : jupyter


notebook
– Pour installer/désinstaller un module comme “Pandas” il faut
taper: Conda install/remove pandas
– Si vous voulez lister les packages installés : Conda list

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.

› La solution est donc de créer un environnement virtuel, un environnement qui


contient une certaine version de Python/R ainsi que différents packages. Il
existe deux façons de le créer avec Anaconda : Anaconda Navigator ou Conda.

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:

– Commencer par entrer cette commande : conda create -n mon_environement


python=3.11

Si votre companie utilise a proxy vous pouvez recevoir le message d’erreur suivant:

CondaSSLError: Encountered an SSL error. Most likely a certificate verification issue.


Exception: HTTPSConnectionPool(host=‘repo.anaconda.com’, port=443): Max retries
exceeded with url: /pkgs/main/win-64/current_repodata.json (Caused by
SSLError(SSLCertVerificationError(1, ‘[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify
failed: unable to get local issuer certificate (_ssl.c:1129)’)))

Solution: Tapez la commande : conda config --set ssl_verify false

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

Vous aimerez peut-être aussi