CESI: Intro Big Data, biblio + environnement démo Hadoop
This commit is contained in:
parent
37fccd7d8c
commit
a29c349d75
Binary file not shown.
After Width: | Height: | Size: 34 KiB |
|
@ -9,18 +9,124 @@ William Petit - S.C.O.P. Cadoles
|
||||||
---
|
---
|
||||||
<!-- page_number: true -->
|
<!-- page_number: true -->
|
||||||
|
|
||||||
## À la recherche d'une définition ?
|
---
|
||||||
|
|
||||||
|
## Vocabulaire
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Historique
|
### Qu'est ce qu'une "donnée" ?
|
||||||
|
|
||||||
|
> Une donnée est une description élémentaire d’une réalité. C’est par exemple une observation ou une mesure. [...]
|
||||||
|
>
|
||||||
|
> Elle est dépourvue de tout raisonnement, supposition, constatation, probabilité.
|
||||||
|
>
|
||||||
|
> -- [Wikipédia](https://fr.wikipedia.org/wiki/Donn%C3%A9e)
|
||||||
|
|
||||||
|
**Exemples**
|
||||||
|
- Température = 25°C
|
||||||
|
- Total de personnes dans la salle = 10
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Facettes
|
### Qu'est ce qu'une "information" ?
|
||||||
|
|
||||||
|
> Une information est une interprétation contextualisée d'une donnée ou d'un ensemble de données. Elle est porteuse de "sens".
|
||||||
|
|
||||||
|
**Exemple**
|
||||||
|
- Température = 25°C -> Il fait chaud
|
||||||
|
- Total de personnes dans la salle = 10 -> C'est un petit groupe
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Contexte et définitions
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Historique
|
||||||
|
|
||||||
|
- Première mention du terme en 1997
|
||||||
|
- Issue des réflexions liées à l'explosion de la génération et l'usage des données
|
||||||
|
- Une définition aux contours flous
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### 3 caractéristiques de la problématique
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Volume
|
||||||
|
|
||||||
|
<p style="text-align:center">
|
||||||
|
<img style="width:80%" src="img/The-total-amount-of-data-generated-on-earth-exceeded-one-zettabyte-in-2010It-is.png">
|
||||||
|
</p>
|
||||||
|
|
||||||
|
[Zaslavsky, Arkady & Perera, Charith & Georgakopoulos, Dimitrios. (2012). Sensing as a Service and Big Data. CoRR, abs/1301.0159.](https://www.researchgate.net/publication/234017925_Sensing_as_a_Service_and_Big_Data)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Vitesse
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Variété
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Aperçu technique des solutions
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
### Stockage des données
|
### Stockage des données
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
### Présentation d'Apache Hadoop et HDFS
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Traitement des données
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
#### Le modèle "MapReduce"
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Présentation d'Apache Spark et Apache Storm
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Bases de données "NoSQL"
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Base de donnée orientée clé/valeur
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Base de données orientée document
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Base de données orientée colonne
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Base de données orientée graphe
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
#### Exemple avec le projet Cayley
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Exploitation des données et cadre légal
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Qu'est ce qu'une données à caractère personnel ?
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Le RGPD
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
- [Wikipédia - MapReduce](https://fr.wikipedia.org/wiki/MapReduce)
|
- [Wikipédia - MapReduce](https://fr.wikipedia.org/wiki/MapReduce)
|
||||||
- [Wikipédia - Big Data](https://fr.wikipedia.org/wiki/Big_data)
|
- [Wikipédia - Big Data](https://fr.wikipedia.org/wiki/Big_data)
|
||||||
- [Les 3V du Big Data](https://www.journaldunet.com/solutions/expert/51696/les-3-v-du-big-data---volume--vitesse-et-variete.shtml)
|
- [Les 3V du Big Data](https://www.journaldunet.com/solutions/expert/51696/les-3-v-du-big-data---volume--vitesse-et-variete.shtml)
|
||||||
|
- [Bases de données orientées colonnes](http://www.timestored.com/time-series-data/what-is-a-column-oriented-database)
|
||||||
- [Apache Hadoop](https://hadoop.apache.org/)
|
- [Apache Hadoop](https://hadoop.apache.org/)
|
||||||
- [Apache Storm](https://storm.apache.org/)
|
- [Apache Storm](https://storm.apache.org/)
|
||||||
- [Apache Spark](https://spark.apache.org/)
|
- [Apache Spark](https://spark.apache.org/)
|
|
@ -0,0 +1,12 @@
|
||||||
|
# Hadoop - Docker
|
||||||
|
|
||||||
|
Une instance de démonstration Hadop/Yarn sous forme d'environnement Docker-Compose.
|
||||||
|
|
||||||
|
## Démarrage
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker-compose up
|
||||||
|
```
|
||||||
|
|
||||||
|
- Interface Hadoop: http://localhost:8088/
|
||||||
|
- Interface HDFS: http://localhost:9870/
|
|
@ -0,0 +1,41 @@
|
||||||
|
FROM ubuntu:bionic
|
||||||
|
|
||||||
|
ARG DEBIAN_FRONTEND=noninteractive
|
||||||
|
ARG HADOOP_VERSION=3.1.1
|
||||||
|
|
||||||
|
RUN apt-get update -y &&\
|
||||||
|
apt-get install -y ssh rsync openjdk-8-jdk-headless supervisor
|
||||||
|
|
||||||
|
RUN wget -O- http://apache.mediamirrors.org/hadoop/common/hadoop-$HADOOP_VERSION/hadoop-$HADOOP_VERSION.tar.gz > hadoop-$HADOOP_VERSION.tar.gz &&\
|
||||||
|
tar -xzf hadoop-$HADOOP_VERSION.tar.gz &&\
|
||||||
|
rm -f hadoop-$HADOOP_VERSION.tar.gz &&\
|
||||||
|
mkdir -p /opt &&\
|
||||||
|
mv hadoop-$HADOOP_VERSION /opt/hadoop
|
||||||
|
|
||||||
|
WORKDIR /opt/hadoop
|
||||||
|
|
||||||
|
ENV JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
|
||||||
|
|
||||||
|
COPY ./conf/core-site.xml etc/hadoop/core-site.xml
|
||||||
|
COPY ./conf/hdfs-site.xml etc/hadoop/hdfs-site.xml
|
||||||
|
|
||||||
|
RUN mkdir -p /var/log/hadoop &&\
|
||||||
|
mkdir -p /run/sshd
|
||||||
|
|
||||||
|
RUN echo "export JAVA_HOME=$JAVA_HOME" >> etc/hadoop/hadoop-env.sh && \
|
||||||
|
echo "export HDFS_DATANODE_USER=root" >> etc/hadoop/hadoop-env.sh && \
|
||||||
|
echo "export HDFS_NAMENODE_USER=root" >> etc/hadoop/hadoop-env.sh && \
|
||||||
|
echo "export HDFS_SECONDARYNAMENODE_USER=root" >> etc/hadoop/hadoop-env.sh && \
|
||||||
|
echo "export YARN_RESOURCEMANAGER_USER=root" >> etc/hadoop/yarn-env.sh && \
|
||||||
|
echo "export YARN_NODEMANAGER_USER=root" >> etc/hadoop/yarn-env.sh && \
|
||||||
|
echo "PATH=$PATH:$HADOOP_HOME/bin" >> ~/.bashrc
|
||||||
|
|
||||||
|
RUN ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa &&\
|
||||||
|
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys &&\
|
||||||
|
chmod 0600 ~/.ssh/authorized_keys
|
||||||
|
|
||||||
|
COPY ./conf/supervisor.ini /etc/supervisor.d/hadoop.ini
|
||||||
|
|
||||||
|
EXPOSE 9870 8088
|
||||||
|
|
||||||
|
CMD ["/usr/bin/supervisord", "-c", "/etc/supervisor.d/hadoop.ini"]
|
|
@ -0,0 +1,6 @@
|
||||||
|
<configuration>
|
||||||
|
<property>
|
||||||
|
<name>fs.defaultFS</name>
|
||||||
|
<value>hdfs://localhost:9000</value>
|
||||||
|
</property>
|
||||||
|
</configuration>
|
|
@ -0,0 +1,6 @@
|
||||||
|
<configuration>
|
||||||
|
<property>
|
||||||
|
<name>dfs.replication</name>
|
||||||
|
<value>1</value>
|
||||||
|
</property>
|
||||||
|
</configuration>
|
|
@ -0,0 +1,66 @@
|
||||||
|
[supervisord]
|
||||||
|
nodaemon=true
|
||||||
|
|
||||||
|
[program:sshd]
|
||||||
|
command = /usr/sbin/sshd -o PermitRootLogin=yes -D
|
||||||
|
directory = /
|
||||||
|
user = root
|
||||||
|
autostart = true
|
||||||
|
stdout_logfile=/dev/stdout
|
||||||
|
stdout_logfile_maxbytes=0
|
||||||
|
stderr_logfile=/dev/stderr
|
||||||
|
stderr_logfile_maxbytes=0
|
||||||
|
priority = 0
|
||||||
|
|
||||||
|
[program:namenode-format]
|
||||||
|
command = bin/hdfs namenode -format
|
||||||
|
directory = /opt/hadoop
|
||||||
|
stdout_logfile=/dev/stdout
|
||||||
|
stdout_logfile_maxbytes=0
|
||||||
|
stderr_logfile=/dev/stderr
|
||||||
|
stderr_logfile_maxbytes=0
|
||||||
|
autostart = true
|
||||||
|
priority = 10
|
||||||
|
|
||||||
|
[program:namenode]
|
||||||
|
command = bin/hdfs --config etc/hadoop namenode
|
||||||
|
directory = /opt/hadoop
|
||||||
|
stdout_logfile=/dev/stdout
|
||||||
|
stdout_logfile_maxbytes=0
|
||||||
|
stderr_logfile=/dev/stderr
|
||||||
|
stderr_logfile_maxbytes=0
|
||||||
|
autostart = true
|
||||||
|
priority = 20
|
||||||
|
|
||||||
|
[program:datanode]
|
||||||
|
command = bin/hdfs --config etc/hadoop datanode
|
||||||
|
directory = /opt/hadoop
|
||||||
|
stdout_logfile=/dev/stdout
|
||||||
|
stdout_logfile_maxbytes=0
|
||||||
|
stderr_logfile=/dev/stderr
|
||||||
|
stderr_logfile_maxbytes=0
|
||||||
|
user = root
|
||||||
|
autostart = true
|
||||||
|
priority = 30
|
||||||
|
|
||||||
|
[program:resourcemanager]
|
||||||
|
command = bin/yarn --config etc/hadoop resourcemanager
|
||||||
|
directory = /opt/hadoop
|
||||||
|
stdout_logfile=/dev/stdout
|
||||||
|
stdout_logfile_maxbytes=0
|
||||||
|
stderr_logfile=/dev/stderr
|
||||||
|
stderr_logfile_maxbytes=0
|
||||||
|
autostart = true
|
||||||
|
priority = 40
|
||||||
|
|
||||||
|
[program:nodemanager]
|
||||||
|
command = bin/yarn --config etc/hadoop nodemanager
|
||||||
|
directory = /opt/hadoop
|
||||||
|
stdout_logfile=/dev/stdout
|
||||||
|
stdout_logfile_maxbytes=0
|
||||||
|
stderr_logfile=/dev/stderr
|
||||||
|
stderr_logfile_maxbytes=0
|
||||||
|
autostart = true
|
||||||
|
priority = 40
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,8 @@
|
||||||
|
version: "2.2"
|
||||||
|
services:
|
||||||
|
hadoop:
|
||||||
|
build:
|
||||||
|
context: containers/hadoop
|
||||||
|
ports:
|
||||||
|
- 8088:8088
|
||||||
|
- 9870:9870
|
Loading…
Reference in New Issue