0% ont trouvé ce document utile (0 vote)
15 vues85 pages

Ecosysteme Big Data + Hadoop

Transféré par

manal moustaghfir
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
15 vues85 pages

Ecosysteme Big Data + Hadoop

Transféré par

manal moustaghfir
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Ecosystème du Big Data

Réalisé en collaboration avec Pr.K. EL AZHARI, Pr.L .Karim, et Pr.S. Nazhaoui


Ecosystème du Big Data Base de données relationnelle ?

OLTP : Données structurés.


Ecosystème du Big Data Systèmes de fichiers

Quantcast File System (QFS)


Ecosystème du Big Data Bases de données NoSQL
Ecosystème du Big Data Bases de données NewSQL
Ecosystème du Big Data Intégration de données
Ecosystème du Big Data Programmation distribuée

Pig
Ecosystème du Big Data Machine Learning
Ecosystème du Big Data Visualisation
Ecosystème du Big Data Sécurité
Ecosystème du Big Data Récapitulatif
Ecosystème du Big Data Récapitulatif
APACHE HADOOP

Réalisé en collaboration avec Pr.K. EL AZHARI, Pr.L .Karim, et Pr.S. Nazhaoui


Rappel
Rappel
Rappel
Rappel
Rappel
APACHE HADOOP C’est quoi?
01 2004 : conçu par Doug Cutting.

02 Framework Open Source

03 Ecrit en java

04 Aide à créer des applications distribuées

05 Résiste aux pannes

06 2009 : fondation logicielle Apache


APACHE HADOOP C’est quoi?

HDFS
Stockage des données dans des clusters
(Storage)

APACHE HADOOP
Yarn Traitement parallèle et distribué des
(Processing) données stockées dans HDFS
APACHE HADOOP Utilisation?
01 Stockage moins coûteux de très gros volumes données (Po)

02 Les réseaux sociaux

03 Les sites e-commerce comme

04 Analyse de fichiers non structurés (log)


APACHE HADOOP HDFS
01 Hadoop Distributed File System

02 Système de stockage
parallèle vs distribué, y t-il une
différence ?

03 Possibilité de stocker des pétaoctets de données

04 Traitement parallèle et distribué

05 Tolérance aux erreurs avec la réplication des données


APACHE HADOOP HDFS
APACHE HADOOP HDFS
APACHE HADOOP Un schéma des nodes HDFS

Les datanodes contiennent des blocs, le namenode sait où


sont les fichiers : quels blocs et quels datanodes.
APACHE HADOOP HDFS

Replication factor is : 3 but we can change it :D


APACHE HADOOP HDFS: Écriture d'un fichier
APACHE HADOOP HDFS: Lecture d'un fichier
APACHE HADOOP HDFS
APACHE HADOOP HDFS

• Le Namenode est le process qui pilote


HDFS: il sait ou sont stockées les données.

• C’est lui qui orchestre les DataNodes.

• Nécessite beaucoup de RAM.


APACHE HADOOP HDFS

Secondary
NameNode
• Prends des snapshots des logs du
Namenode à intervalles réguliers.

• Ce n'est pas un backup du NameNode :


il peut aider à récupérer des données et
relancer un cluster, mais ça n'a rien
d'automatique.
APACHE HADOOP HDFS configuration high availability

• Comme le namenode est absolument vital pour HDFS mais unique, Hadoop propose une
configuration appelée high availability dans laquelle il y a 2 autres namenodes en secours,
capables de prendre le relais instantanément en cas de panne du namenode initial.

• Les namenodes de secours se comportent comme des clones. Ils sont en état d’attente et
mis à jour en permanence à l’aide de services appelés JournalNodes.
APACHE HADOOP HDFS configuration high availability

Le Standby NameNode et le Secondary NameNode sont deux composants distincts dans le


système de fichiers distribué Hadoop (HDFS), chacun ayant un rôle spécifique. Voici les
différences entre les deux :

1. Standby NameNode:
- Le Standby NameNode est une réplique en attente du NameNode principal.
- Il maintient une copie à jour de toutes les métadonnées du système de fichiers.
- En cas de défaillance du NameNode principal, le Standby NameNode peut prendre le
relais et devenir le nouveau NameNode principal, assurant ainsi la continuité du service sans perte
de données.
- Le Standby NameNode est utilisé pour la haute disponibilité du système, offrant une
redondance pour garantir la disponibilité continue du système de fichiers.
APACHE HADOOP HDFS configuration high availability

2. Secondary NameNode :
- Le Secondary NameNode joue un rôle de support pour le NameNode principal.
- Il fusionne régulièrement le journal des opérations (edits log) et le fichier de snapshot
(fsimage) du NameNode principal pour éviter que le journal d'opérations ne devienne trop
volumineux.
- Il ne prend pas en charge la reprise en cas de défaillance du NameNode principal.
- Le Secondary NameNode n'offre pas de haute disponibilité. Son rôle est principalement lié
à la gestion des métadonnées et à l'optimisation des performances du NameNode principal.

En résumé, la principale différence entre le Standby NameNode et le Secondary NameNode


réside dans leurs rôles et leurs responsabilités. Le Standby NameNode est une réplique en attente
du NameNode principal, offrant la haute disponibilité du système, tandis que le Secondary
NameNode agit comme un support pour le NameNode principal en fusionnant les métadonnées
pour optimiser les performances.
APACHE HADOOP HDFS configuration high availability

Le Secondary NameNode décharge le NameNode principal en effectuant une tâche de fusion


régulière pour optimiser les performances du système de fichiers distribué Hadoop (HDFS). Voici
comment cela fonctionne :

• Fusion des journaux d'opérations (edits log) et des instantanés (fsimage) :

Le Secondary NameNode récupère périodiquement le journal des opérations (edits log) et


l'instantané du système de fichiers (fsimage) du NameNode principal.
Il fusionne ces deux éléments pour créer une nouvelle version consolidée de l'instantané, qui
contient toutes les modifications apportées au système de fichiers depuis la dernière fusion.

• Réduction de la taille du journal d'opérations :

En fusionnant régulièrement le journal des opérations avec l'instantané, le Secondary NameNode


réduit la taille du journal des opérations, ce qui améliore les performances du NameNode
principal lors de la récupération des métadonnées du système de fichiers.
APACHE HADOOP HDFS configuration high availability

• Amélioration des performances :

En réduisant la taille du journal des opérations et en optimisant l'instantané du système de


fichiers, le Secondary NameNode aide à améliorer les performances globales du système de
fichiers HDFS en déchargeant le NameNode principal de cette tâche de fusion et en réduisant le
temps nécessaire pour démarrer le système en cas de redémarrage.
Les données elles-mêmes ne se déplacent pas du NameNode principal vers le Secondary
NameNode lors de ce processus de fusion. Au lieu de cela, le Secondary NameNode récupère les
métadonnées nécessaires pour effectuer la fusion et crée un nouvel instantané consolidé pour
aider à optimiser les performances du système de fichiers HDFS.
APACHE HADOOP HDFS configuration high availability

• Amélioration des performances :

En réduisant la taille du journal des opérations et en optimisant l'instantané du système de


fichiers, le Secondary NameNode aide à améliorer les performances globales du système de
fichiers HDFS en déchargeant le NameNode principal de cette tâche de fusion et en réduisant le
temps nécessaire pour démarrer le système en cas de redémarrage.
Les données elles-mêmes ne se déplacent pas du NameNode principal vers le Secondary
NameNode lors de ce processus de fusion. Au lieu de cela, le Secondary NameNode récupère les
métadonnées nécessaires pour effectuer la fusion et crée un nouvel instantané consolidé pour
aider à optimiser les performances du système de fichiers HDFS.
APACHE HADOOP HDFS configuration high availability

Après la fusion , le nœud principal stocke le résultat de la fusion réalisé?

Oui, après la fusion, le résultat de la fusion réalisée par le Secondary NameNode est renvoyé et
stocké sur le NameNode principal. Plus précisément, le nouvel instantané consolidé (fsimage) est
mis à jour sur le NameNode principal pour refléter les modifications apportées au système de
fichiers.
Ainsi, le processus de fusion effectué par le Secondary NameNode permet de mettre à jour les
métadonnées du système de fichiers sur le NameNode principal de manière efficace, réduisant
ainsi la taille du journal des opérations et améliorant les performances globales du système de
fichiers distribué Hadoop (HDFS).
APACHE HADOOP HDFS: La commande Hadoop fs
• Comme indiqué plus haut, la commande permettant de stocker ou extraire des fichiers de HDFS est
l'utilitaire console hadoop, avec l'option fs. Il réplique globalement les commandes systèmes
standard Linux, et est très simple à utiliser:

• hadoop fs -put [Link] /data_input/[Link]


➢ Pour stocker le fichier [Link] sur HDFS dans le répertoire /data_input.
• hadoop fs -get /data_input/[Link] [Link]
➢ Pour obtenir le fichier /data_input/[Link] de HDFS et le stocker dans le fichier local
[Link].
• hadoop fs -mkdir /data_input
➢ Pour créer le répertoire /data_input
• hadoop fs -rm /data_input/[Link]
➢ Pour supprimer le fichier /data_input/[Link]

• D'autres commandes usuelles: -ls, -cp, -rmr, etc...


APACHE HADOOP Commande hdfs dfs

La commande hdfs dfs et ses options permet de gérer les


fichiers et dossiers :
hdfs dfs -help
hdfs dfs -ls [noms...] (pas d’option -l)
hdfs dfs -cat nom
hdfs dfs -mv ancien nouveau
hdfs dfs -cp ancien nouveau
hdfs dfs -mkdir dossier
APACHE HADOOP Échanges entre HDFS et le monde

Pour placer un fichier dans HDFS, deux commandes équivalentes :


• hdfs dfs -copyFromLocal fichiersrc fichierdst
• hdfs dfs -put fichiersrc [fichierdst]
Pour extraire un fichier de HDFS, deux commandes possibles :
hdfs dfs -copyToLocal fichiersrc dst
hdfs dfs -get fichiersrc [fichierdst]
Exemple : hdfs dfs -mkdir -p livres
wget [Link]
hdfs dfs -put dracula livres
hdfs dfs -ls livres
hdfs dfs -get livres/center_earth
APACHE HADOOP Commande hdfs dfs

Les commandes hadoop fs


Dialoguer avec HDFS

Envoyer un fichier sur hdfs

Pour envoyer un fichier sur hdfs, on utilise la commande


copyFromLocal de la manière suivante
L'option -f permet de
hdfs dfs -copyFromLocal -f "/home/[Link]" "/user/cloudera/fichier" d’écraser les fichiers
ayant le même nom
hdfs dfs -put "/home/[Link]" "/user/cloudera/fichier" que la source sans
confirmation

Récupérer en local un fichier sur hdfs

Pour récupérer un fichier présent sur hdfs, on utilise la commande

copyToLocal hdfs dfs –copyToLocal "/user/cloudera/fichier" "/home/[Link]"


hdfs dfs -get "/user/cloudera/fichier" "/home/[Link]"
APACHE HADOOP Commande hdfs dfs

Parcourir les données Lister les fichiers d'un répertoire sur hdfs

Pour lister les fichiers présents sur un répertoire, on utilise


la commande ls

hdfs dfs -ls /user/cloudera


Found 3 items
drwxr-xr-x - cloudera cloudera 0 2019-12-29 05:54
/user/cloudera/chargement
drwxr-xr-x - cloudera cloudera 0 2019-12-29 05:53 /user/cloudera/reception
drwxr-xr-x - cloudera cloudera 0 2019-12-29 05:55 /user/cloudera/tables_hive
Afficher un fichier

Pour afficher un fichier, on utilise la commande cat

hdfs dfs -cat /user/cloudera/fichier/part-m-00000

5
3
APACHE HADOOP Commande hdfs dfs

Supprimer un élément

Pour supprimer un fichier, on utilise rm

hdfs dfs -rm /user/cloudera/fichier/part-m-00000

Pour supprimer un répertoire, on utilise l'option de rm -r. On


peut supprimer la demande de confirmation à l'aide de l'option
-f

hdfs dfs -rm -f -r /user/cloudera/fichier


Pour supprimer le contenu d'un répertoire, on peut utiliser le caractère *, mais
attention, il faut que celui-ci soit interprété par la commande hdfs dfs et non par le
shell. Il faut donc protéger * avec des quotes ou un backslash:

hdfs dfs -rm -f /user/cloudera/fichier/'*'


5
4
APACHE HADOOP Commande hdfs dfs

Copier un fichier

Pour copier un fichier, on utilise la commande cp

hdfs dfs -cp /user/cloudera/d1/'*' /user/cloudera/d2

L'option -f permet de supprimer les fichiers ayant le même


nom que la source sans confirmation :

hdfs dfs -cp -f /user/cloudera/d1/'*' /user/cloudera/d2

Déplacer un fichier

Pour déplacer un fichier, on utilise la commande mv

hdfs dfs -mv /user/cloudera/d1/'*' /user/cloudera/d2

5
5
APACHE HADOOP Commande hdfs dfs

Créer un répertoire

Pour créer un répertoire, on utilise la commande mkdir

hdfs dfs -mkdir /user/rep1

Pour recréer toute une arborescence, on utilise mkdir -p

hdfs dfs -mkdir -p /user/r1/r2/r3

Ajouter du contenu à un fichier

Pour utiliser un fichier local comme source


hdfs dfs –appendToFile /home/cloudera/Desktop/[Link] /user/[Link]

Pour utiliser le clavier comme source (pour arrêter la saisir appuyer sur Ctrl+D)
hdfs dfs –appendToFile - /user/[Link]
54
APACHE HADOOP Exercice réplication

Taille fichier à traiter : 320 Mo

Taille du bloc : 128Mo

Nombre de réplication : 2

Cluster avec : 2 Noeuds


APACHE HADOOP Exercice réplication
128
Mo

128
Mo

320 Mo 64
Mo
APACHE HADOOP Exercice réplication

Taille fichier à traiter : 416 Mo

Taille du bloc : 64 Mo

Nombre de réplication : 3

Cluster avec : 5 Noeuds


APACHE HADOOP Exercice réplication
APACHE HADOOP Exercice réplication

01 Nous devons placer la première réplique du bloc dans le rack disponible le plus proche.

02 La seconde réplique de bloc n'est pas placée dans le même rack que celui où est placée la
première réplique

03 La troisième réplique doit être placée dans l'emplacement de la seconde réplique, mais
dans le nœud différent.
APACHE HADOOP Exercice réplication
Exemple :

RACK 1 RACK 2 RACK 3

B1

B2

B3
APACHE HADOOP Exercice réplication
Exemple :
Règle 1 : Nous devons placer la première réplique du bloc dans le rack disponible le plus proche.

RACK 1 RACK 2 RACK 3

B1

B2

B3
APACHE HADOOP Exercice réplication
Exemple :
Règle 1 : Nous devons placer la première réplique du bloc dans le rack disponible le plus proche.

RACK 1 RACK 2 RACK 3

B1 B1

B2

B3
APACHE HADOOP Exercice réplication
Exemple :
Règle 2 : La seconde réplique de bloc n'est pas placée dans le même rack que celui où est placée
la première réplique.

RACK 1 RACK 2 RACK 3

B1 B1

B2

B3
APACHE HADOOP Exercice réplication
Exemple :
Règle 2 : La seconde réplique de bloc n'est pas placée dans le même rack que celui où est placée
la première réplique.

RACK 1 RACK 2 RACK 3

B1 B1 B1

B2

B3
APACHE HADOOP Exercice réplication
Exemple :
Règle 3 : La troisième réplique doit être placée dans l'emplacement de la seconde réplique, mais
dans un nœud différent.

RACK 1 RACK 2 RACK 3

B1 B1 B1

B2

B3
APACHE HADOOP Exercice réplication
Exemple :
Règle 3 : La troisième réplique doit être placée dans l'emplacement de la seconde réplique, mais
dans un nœud différent.

RACK 1 RACK 2 RACK 3

B1 B1 B1

B2 B1

B3
APACHE HADOOP Exercice réplication
Exemple :

RACK 1 RACK 2 RACK 3

B1 B1 B1

B2 B1

B3 B2
APACHE HADOOP Exercice réplication
Exemple :

RACK 1 RACK 2 RACK 3

B1 B1 B1 B2

B2 B1

B3 B2
APACHE HADOOP Exercice réplication

Exemple :

RACK 1 RACK 2 RACK 3

B1 B1 B1 B2

B2 B1

B3 B2

B2
APACHE HADOOP Exercice réplication
Exemple :

RACK 1 RACK 2 RACK 3

B1 B1 B1 B2

B2 B1

B3 B2

B3 B2
APACHE HADOOP Exercice réplication
Exemple :

RACK 1 RACK 2 RACK 3

B1 B1 B1 B2

B2 B1 B3

B3 B2

B3 B2
APACHE HADOOP Exercice réplication

RACK 1 RACK 2 RACK 3

B1 B1 B1 B2

B2 B1 B3

B3 B2 B3

B3 B2
APACHE HADOOP Solution?
01
Stockage des données volumineuses?
Stockage distribué sur plusieurs blocks.

• HDFS est un moyen distribué de stocker des données volumineuses. Vos


données sont stockées dans des blocs à travers les DataNodes et vous
pouvez spécifier la taille des blocs. En principe, si vous avez 512 Mo de
données et que vous avez configuré HDFS de telle sorte qu'il crée 128 Mo
de blocs de données, HDFS divisera les données en 4 blocs, soit 512/128=4,
et les stockera dans les nœuds de données (DataNodes).

• Il résout également le problème de la mise à l'échelle. Il se concentre sur


l'évolution horizontale plutôt que sur l'évolution verticale. Vous pouvez
toujours ajouter des nœuds de données supplémentaires au cluster HDFS
en fonction des besoins, au lieu d'augmenter les ressources de vos nœuds de
données. En résumé, pour stocker 1 To de données, vous n'avez pas besoin
d'un système de 1 To. Vous pouvez le faire sur plusieurs systèmes de 128 Go
ou même moins.
APACHE HADOOP Solution?
Scalabilité - Vertical vs Horizontal
Lorsque la charge serveur augmente, et qu’il est temps de rajouter des ressources
matérielles à votre infrastructure, deux approches s’offrent à vous : augmenter vos
ressources verticalement ou horizontalement. On parle de vertical scaling
versus horizontal scaling.

Scalabilité verticale –Vertical Scaling


La scalabilité verticale est la plus intuitive : cela revient à ajouter des ressources à
un unique serveur (en lui ajoutant de la RAM, en changeant son CPU pour un plus
véloce…). C’est simple ! Mais :

Le coût est rapidement exponentiel de la capacité matérielle.


APACHE HADOOP Solution?
Scalabilité verticale –Vertical Scaling
Cette solution a des limites : vous pourrez probablement multiplier par 2 les
capacités de votre serveur, peut-être même par 5, mais pas par 100 !
Cela reste dans la majorité des cas la solution la plus pragmatique, et en
particulier pour des applicatifs en production depuis de nombreuses années.
APACHE HADOOP Solution?
Scalabilité Horizontale –Horizontal Scaling
La scalabilité horizontale revient à ajouter de nouveaux serveurs réalisant le
même type tâche. Cela permet de n’utiliser que des serveurs standards (on parle
de commodity hardware). Mais les implications logicielles sont rapidement
importantes !
APACHE HADOOP Solution?
02
Stockage des données Hétérogènes ?
Stockage toutes sortes de données.

• Avec HDFS, vous pouvez stocker toutes sortes de données, qu'elles soient
structurées, semi-structurées ou non structurées. Dans HDFS, il n'y a pas
de validation de schéma préalable. Il suit également le modèle "write once
and read many" (écrire une fois et lire plusieurs fois). Ainsi, vous pouvez
écrire les données une seule fois et les lire plusieurs fois pour en tirer des
conclusions.
APACHE HADOOP Solution?
03
Accès rapide ??
Accès et traitement rapide aux données

• Le troisième défi consistait à accéder aux données et à les traiter plus


rapidement. Oui, c'est l'un des principaux défis du Big Data. Pour le résoudre,
nous déplaçons le traitement vers les données et non les données vers le
traitement. Qu'est-ce que cela signifie ? Au lieu de déplacer les données vers
le nœud principal et de les traiter ensuite. Dans MapReduce, la logique de
traitement est envoyée aux différents nœuds esclaves, puis les données
sont traitées parallèlement sur les différents nœuds esclaves. Les résultats
traités sont ensuite envoyés au nœud principal où ils sont fusionnés et la
réponse est renvoyée au client.
APACHE HADOOP Ecosystème

Le système de fichier distribué de Apache Hadoop.


APACHE HADOOP Ecosystème
• YARN : Négociateur de ressources. Il est devenu un sous projet de
HADOOP à partir de 2012 (déployé en 2013), donc il a été ajouté
comme une fonctionnalité clé de Hadoop avec la mise à jour 2
(version 2).
• Quand on parle Hadoop 1 (version 1), donc il n'y avait pas yarn,
• Avant l'ajout de yarn, ce qui se passait, c'est qu'on ne pouvait
travailler qu'avec MapReduce.
• Quand on accède à HDFS avec l'arrivée de Yarn, donc, ça nous a
permis de travailler avec d'autres applications au delà de
MapReduce.
APACHE HADOOP Ecosystème
• Yarn (Yet Another Resource Negotiator) : Il
s’occupe de la gestion et de l’allocation des
ressources (CPU, Ram etc..) aux différentes
applications (mapreduce, spark, impala etc…)
lancées sur le cluster.
• Mesos : Projet Apache plus récent que Yarn, c’est
aussi un système de gestion de ressource de
clusters. Il va permettre de gérer et de partager
de manière fine, souple et dynamique des
ressources entre différents clusters, pour diverses
applications
APACHE HADOOP Ecosystème

HBASE : Une base de données NoSQL orientée


colonne.
Hive: Une base de donnée NewSQL(Nous pouvons
faire de SQL standard).
APACHE HADOOP Ecosystème

On a R Connecteurs qui nous permet de créer un


package avec des bibliothèques pour travailler
avec le langage R pour faire des statistiques.
APACHE HADOOP Ecosystème

On a Mahout qui nous permet de faire la


programmation machine learning.
APACHE HADOOP Ecosystème

On a Pig pour la programmation distribué.


Pig : Moteur permettant de manipuler tous types
de données avec un langage beaucoup plus
intuitif que le java mapreduce. Il est beaucoup
utilisé pour tous les process ETL, il permet d’aller
plus loin que le SQL. Une fois exécuter le code Pig
génère du mapreduce.
APACHE HADOOP Ecosystème

• Apache Oozie qui nous permet de faire


l'ordonnancement de flux dédié au logiciel
Hadoop.
• Il est implémenté comme une application web
Java exécutée dans un conteneur de servlets
de Java.
• Il permet d’ordonnancer et de lancer tous
types d’applications (spark, impala, shell, hive,
pig ….) dans l’écosystème Hadoop.
APACHE HADOOP Ecosystème

• On a ZooKeeper un logiciel de gestion de


configuration pour les systèmes distribués.

• Zookeeper permet de mettre en œuvre la


coordination des services de l’écosystème et
leur synchronisation dans un environnement
distribué. Seul les administrateurs peuvent être
amené à interagir avec lui.
APACHE HADOOP Ecosystème

Apache Flume : C’est un système distribué


permettant de récupérer des logs de plusieurs
sources, de les agréger et de les pousser dans
HDFS. Il est fiable, flexible, assez intuitif et porté
par toutes les distributions Hadoop.
APACHE HADOOP Ecosystème

Apache Sqoop est une interface de ligne de


commande qui nous permet de transférer des
données entre des bases de données
relationnelles et Hadoop.
APACHE HADOOP Ecosystème

On a Apache Ambari qui permet aux


administrateurs systèmes de provisionner, de
gérer et de surveiller un cluster Hadoop.
26
APACHE HADOOP Quand ne pas utiliser Hadoop ?
Accès aux données à faible latence : Accès
rapide à de petites parties de données.

Modification multiple des données : Hadoop


est mieux adapté uniquement si nous sommes
principalement concernés par la lecture des
données et non par leur modification.

Nombreux petits fichiers : Hadoop convient


aux scénarios dans lesquels les fichiers sont
peu nombreux mais volumineux.
APACHE HADOOP Quand utiliser Hadoop ?

Search – Yahoo, Amazon, Zvents

Log processing – Facebook, Yahoo

Data Warehouse – Facebook, AOL

Video and Image Analysis – New York Times,


Eyealike

Vous aimerez peut-être aussi