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 -->
|
||||
|
||||
## À 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
|
||||
|
||||
---
|
||||
|
||||
### 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 - 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)
|
||||
|
||||
- [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 Storm](https://storm.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