Alimenter au fil de l’eau Apache Hadoop

Contrairement à l’import massif de données comme évoqué dans le dernier billet, Apache Hadoop peut être alimenté par 2 autres applications Apache au fil de l’eau.
Apache Kafka : développé initialement par Linkedin, Kafka est un système de messagerie asynchrone (broker de messages) s’appuyant sur Zookeeper pour synchroniser les différentes instances.
Kafka est plus rapide que les classiques brokers JMS (Apache ActiveMQ, JBossMQ, Websphere MQ, …) car la distribution des messages se fait sans garantie d’ordre et sans confirmation du la réception du message (acknowledge).
Apache Flume: developpé pour alimenter initialement Hadoop des fichiers de logs, il existe plusieurs connecteurs permettant de collecter d’autres sources d’information (JMS, IRC,…)

Intégration base de données – Apache Hadoop

Il existe de plus en plus de connecteurs permettant d’importer massivemment les données d’un SGBD vers Apache Hadoop et réciproquement d’exporter les données vers la base de données après traitement sur le système de fichiers distribués HDFS d’Hadoop.
La solution par défaut proposée par la communauté Apache est Apache SQOOP. Toutes les bases de données avec un driver JDBC v2.0 sont supportées. Du code spécifique pour MySQL a été développé pour le support du mode direct et Quest Software a développé un connecteur sur Apache SQOOP permettant d’accélérer les imports dans Oracle.
De même Teradata essaye de suivre le mouvement en proposant des connecteurs avec leur nouvelle suite Teradata Aster.