Vous êtes sur la page 1sur 6

I.

Introduction :
Une architecture Big Data est conçue pour gérer l’ingestion, le traitement et
l’analyse de données trop volumineuses ou complexes pour les systèmes de base de
données traditionnels. La valeur du big data n'est pas dans la quantité des données
stockées mais dans son utilisation efficace et sa capacité à fournir de la valeur
ajoutée. Les types de données sources, les exigences matérielles, la latence
tolérable, l’adaptation à l’industrie, la quantité de données à traités et le type sont
des facteurs à prendre en compte avant de faire le choix d’une architecture Big Data
convenable. Dans ce document on va traiter quelques architectures Big Data.

II. Les Architectures Big Data :


L’architecture Big Data détermine la manière dont la collection, le stockage,
l'analyse et la visualisation des données sont effectués. Ainsi, elle définit comment
transformer les données structurées, non structurées et semi-structurées pour
l’analyse et le reporting. On va présenter cinq architectures Big Data [1].

1) L’architecture Lambda :

L'architecture Lambda (Marz et Warren 2015)[2] est l'une des premières


architectures documentées pour le Big Data. Elle contient des composants qui gèrent
volume et vitesse des données: Elle fait simultanément du traitement de type
batch (traitement par block de données) et du traitement en temps réel (de manière
continu). Elle est découpée en 3 couches :

 Couche batch (Batch Layer) :


 Stockage de l’ensemble des données.
 Traitements massifs et réguliers.
 La fréquence des traitements ne doit pas être trop importante afin de
minimiser les tâches de fusion des résultats pour constituer les vues.
 Couche temps réel (Speed Layer) :
 Traite tout type de donnée reçu en temps réel.
 Calcul des vues incrémentales qui vont compléter les vues batch afin de fournir
des données plus récentes.
 Suppression des vues temps réel obsolètes (postérieures à un traitement
batch).
 Couche de service (Serving Layer) :
 Permet de stocker et d’exposer aux clients les vues créées par les couches
batch et temps réel.
 Adapté à tous types de bases NoSQL.

Le fonctionnement de cette architecture est décrit dans la figure suivante [1] :


L’architecture Lambda

2) L’architecture Kappa :

L’architecture Kappa a été décrite pour la première fois par Jay Kreps en 2014 [3]
dans le but de faciliter la complexité de l’architecture Lambda. Elle repose sur le
principe de fusion de la couche temps réel et batch, ce qui la rend moins complexe
que l’architecture Lambda.

Dans l’architecture Kappa, la couche batch a été supprimée et la couche de vitesse


améliorée pour offrir des capacités de retraitement.

Le fonctionnement de cette architecture est décrit dans la figure suivante [1] :

L’architecture Kappa

3) L’architecture Zeta :

L’architecture Zeta est une nouvelle approche qui facilite les processus métier et
définit un moyen évolutif d’accroitre la vitesse d’intégration de données dans le
business qui rend l’entreprise puissante et centrée sur les données.
Elle fournit des conteneurs qui sont des environnements logiciels isolés qui peuvent
être exécutés et utilisés pour interagir ensemble indépendamment de la plateforme
[1].

L’architecture Zeta [4]

L’architecture Zeta comprend sept composants [5]:

 Distributed File System -  toutes les applications lisent et écrivent sur une solution
commune évolutive, ce qui simplifie considérablement l'architecture du système.
 Real-time Data Storage - prend en charge le besoin d'applications d'entreprise à
haute vitesse grâce à l'utilisation de bases de données en temps réel.
 Pluggable Compute Model / Execution Engine - fournit différents moteurs et
modèles de traitement afin de répondre aux besoins d'applications et d'utilisateurs
variés au sein d'une organisation.
 Deployment / Container Management System -fournit une approche normalisée
pour le déploiement de logiciels. 
 Solution Architecture - se concentre sur la résolution de problèmes métier
spécifiques et combine une ou plusieurs applications conçues pour fournir la
solution complète. 
 Enterprise Applications - apporte simplicité et réutilisabilité en fournissant les
composants nécessaires à la réalisation de tous les objectifs commerciaux définis
pour une application.
 Dynamic and Global Resource Management -  permet l'allocation dynamique des
ressources afin que vous puissiez vous occuper de la tâche la plus importante pour la
journée.

4) L’architecture Microservice :
Un système basé sur l’architecture Microservice est composé d'un ensemble de
services faiblement couplés qui sont capables de fonctionner indépendamment et de
communiquer avec tout le monde via les Web services REST (REpresentational State
Transfer). Dans l’architecture Microservice de Big Data chaque service se concentre à
effectuer un tache spécifique et représente une application autonome [6] .

5) L’architecture IOT :

Dans le domaine de l’Internet des Objets on n’a pas une architecture standard.
Michael Hausenblas a proposé une architecture d'abstraction élevée pour tous
projets IOT basés sur les exigences d’un système de traitement de donnée IOT [7]
appelé Iot-a.
L’architecture IOT est présentée dans la figure suivante [1] :

L’architecture iot-a

III. Comparaison des architectures Big Data :


Dans le tableau suivant on a comparé les différentes architectures étudiées dans
ce document en se basant sur le type et la méthodologie de traitement ainsi la
fréquence, le type, le format, la source et le consommateur des données [1].

Fonctionnalités Type Méthodolo Fréquence Type de Format de Source de Consommate


d’traite- gie de de Données Données Données urs de
ment traitement Données Données

Architecture
Lambda Batch/ Requête Flux en Les Structurées, Humain& Humain
Real-time et temps réel Données Semi- Générée par
Reporting de base Structurées la machine
& , Web ou
Non Structurées médias
sociaux
Kappa Real-time Requête Flux Données Structurées, Machine & Humain
et continus Transactio Semi- Générée par
Reporting nnelles Structurées l’homme
& , Web ou
Non Structurées médias
sociaux
Zeta Batch / Requête Flux à la Données Structurées, Web et Les
Real-time et demande Transactio Semi- médias applications
Reporting nnelles Structurées sociaux, de
& Sources de l’entreprise
Non Structurées données
internes
Microservice Batch/ Requête Flux à la Données Structurées, Sources de Processus
Realtime et demande Transactio Semi- données métier
Reporting / nnelles Structurées internes,
Analytique & Générée par
Non Structurées la machine
Iot-a Batch / Requête Flux à la Les Structurées, Générée par Humain/
Real-time et demande Données Semi- la machine Autres
Reporting / de base Structurées référentiels
Analytique & de
/Analyse Non Structurées données
prédictive

Références :
[1] Godson Koffi Kalipe, Rajat Kumar BeheraBig ,2019,Data Architectures : A detailed and application
oriented review, GK Kalipe, RK Behera - researchgate.net.

[2] Marz, N., & Warren J. (2015). Big Data : Principles and best practices of scalable realtime data
systems. Retrieved from https://www.manning.com/books/big-data.

[3] Data processing architectures – Lambda and Kappa, 2015, https://www.ericsson.com/research-


blog/data-processing-architectures-lambda-and-kappa/.
[4] Kamakhya Singh , Rajat Kumar Behera , 2018, Big Data Ecosystem – Review on Architectural
Evolution, Emerging Technologie in Data Minig and Information Security 335-345,2019

[5] Zeta architecture, 2017, http://www.waitingforcode.com/general-big-data/zeta-architecture/read.

[6] Kumar, M. (2016, January 5).Microservices Architecture : What,When, And How?. Retrieved
fromhttps://dzone.com/articles/microservicesarchitecture-what-when-how.

[7] Hausenblas, M. (2015, January 19). Key Requirements for an IOT dataplatform. Retrieved
fromhttps://mapr.com/blog/key-requirements-iot-dataplatform/.

Vous aimerez peut-être aussi