Apache Kafka et Zookeeper désormais pris en charge sur IBM i

IBM a discrètement ajouté la prise en charge de deux technologies open source, Apache Kafka et Apache Zookeeper, sur IBM i. Les deux projets sont des éléments critiques des cadres informatiques distribués émergents dans l'espace du Big Data, bien qu'ils aient des utilisations très différentes.

Apache Zookeeper est une technologie sous-jacente de base pour activer l'informatique distribuée et garantir que les applications exécutées sur Zookeeper sont hautement résilientes. Le logiciel fonctionne comme un service centralisé pour garder une trace des nœuds dans un cluster et pour synchroniser les données et les services entre les différents nœuds.

Apache Kafka et Zookeeper désormais pris en charge sur IBM i

Tous les nœuds d'un cluster Zookeeper ont accès à un espace de noms hiérarchique partagé. Si l'un des nœuds d'un cluster devient indisponible, Zookeeper effectue automatiquement un basculement et les services et les données s'exécutant au sommet du nœud défaillant sont automatiquement migrés vers un nœud disponible.

Fiez-vous à Zookeeper pour monter un troupeau sur des applications distribuées indisciplinées.

Zookeeper a été développé à l'origine pour aider à coordonner les nœuds dans les clusters Apache Hadoop. Hadoop, bien sûr, est le système de stockage et de traitement de données distribué qui a émergé de Yahoo au milieu des années 2000 pour gérer l'énorme quantité de données qui constituait l'index du moteur de recherche sur le Web.

Zookeeper était un sous-projet de Hadoop à l'Apache Software Foundation. Mais ces dernières années, Zookeeper a été adopté comme technologie de clustering sous-jacente par un certain nombre de projets de calcul distribué à l'ASF, notamment HBase, Hive, Solr, NiFi, Druid et Kafka, qui sont généralement considérés comme faisant partie de la « famille Hadoop  » de produits. Il est depuis devenu un projet de premier plan chez ASF.

Apache Kafka, quant à lui, peut être mieux considéré comme un bus de messages de nouvelle génération pour les données d'événements. Bien qu'il soit généralement lié à Hadoop et soit inclus dans les distributions Hadoop, il vit vraiment en dehors de la famille Hadoop et institue une toute nouvelle façon de stocker et de traiter les données d'événements.

Kafka a été développé il y a environ 10 ans par des ingénieurs de LinkedIn pour gérer le système de collecte de données à croissance rapide de l'entreprise de médias sociaux. Chaque fois qu'un utilisateur de LinkedIn fait quelque chose sur le site Web ou sur l'application mobile, comme cliquer sur une publication ou accepter une invitation à se connecter, il génère un événement dans le système de LinkedIn.

La société, qui appartient maintenant à Microsoft, utilisait un bus de messages traditionnel orienté batch pour gérer ces données, mais les ingénieurs ont constaté qu'elle était incapable de suivre les volumes de données. Les ingénieurs de LI ont envisagé un tout nouveau type de plate-forme qui traiterait les données d'événements comme un citoyen de premier ordre, par opposition au statut de deuxième niveau que les événements obtiennent dans une base de données relationnelle traditionnelle.

Assis au sommet de Zookeeper, Kafka fonctionne comme un système distribué pour stocker et traiter les données d'événements. Les données d'événement proviennent de composants appelés « producteurs », qui écrivent les données dans des catégories appelées « rubriques ». Les utilisateurs (ou applications) peuvent s'abonner à ces rubriques et recevoir le flux de données via un composant appelé « consommateur ».

En tant que système de publication / abonnement pour les données à volume élevé, les clusters Kafka peuvent être utilisés pour les charges de travail d'extraction, de transformation et de chargement (ETL), ainsi que pour les systèmes d'analyse en temps réel. Les clusters Kafka sont composés de plusieurs serveurs, ou « courtiers », et peuvent évoluer dans la plage des pétaoctets.

Apache Kafka est un système pub / sous distribué utilisé pour l'ETL en temps réel et l'analyse de streaming.

L'évolutivité de Kafka a été mise à profit chez LinkedIn. En 2011, lorsque l'entreprise a mis en œuvre Kafka pour la première fois, les utilisateurs de LinkedIn généraient environ 1 milliard de messages par jour. En 2015, l'entreprise générait 1 billion d'événements par jour.

La plupart des géants du Web de la Silicon Valley ont adopté le logiciel open source Kafka pour gérer d'importants flux de données d'événements, notamment Netflix, Uber, Pinterest et Airbnb. Pour desservir cet écosystème émergent, les développeurs originaux de Kafka chez LinkedIn ont formé une spin-off appelée Confluent, qui continue de diriger le développement de Kafka et d'héberger sa propre version basée sur le cloud.

Bien que Kafka soit peut-être nouveau sur IBM i, l'application a certainement vu sa part de données IBM i au fil des ans. Des sociétés comme Precately (anciennement Syncsort) et Attunity (maintenant détenue par Qlik) ont développé des connecteurs pour pomper les données d'IBM i et de sources mainframe dans le bus Kafka.

En raison de la puissance de Kafka pour créer des pipelines de données extensibles et pour effectuer des transformations en temps réel sur les données circulant à travers ces pipelines, Kafka est devenu un élément d'architecture clé dans les systèmes d'analyse Big Data de nouvelle génération. De nombreuses entreprises utilisent Kafka pour pomper les données des systèmes sources dans un entrepôt de données et des lacs de données basés sur le cloud, tels que BigQuery, Snowflake, Microsoft Azure Synapse Analytics (anciennement SQL Warehouse) et Amazon Web Services RedShift. AWS, pour sa part, propose son propre système pub / sous, appelé Kinesis.

On ne sait pas exactement pourquoi IBM a ajouté la prise en charge de Kafka et Zookeeper, ou comment ces technologies fonctionneront sous IBM i. (Nous espérons nous connecter avec IBM dans un proche avenir pour obtenir des réponses à ces questions.) Quoi qu'il en soit, ce sont deux des projets les plus percutants de la communauté du big data open source, avec Apache Hadoop et Apache Spark, donc c'est bien pour voir IBM prendre des mesures pour suivre le monde des données dans son ensemble, comme il l'a récemment fait avec des bases de données open source telles que MongoDB, Apache Cassandra et PostgreSQL.

Il est également bon de voir qu'IBM fournit une assistance professionnelle pour Kafka et Zookeeper sur IBM i. IBM a récemment ajouté ces projets à la liste des projets open source qu'il prend en charge sur IBM i via son programme Technology Support Services (TSS)ibm.com/support/pages/open-source-support-ibm-i pour voir par vous-même.

Quoi de neuf en Open Source avec les derniers TR

Plus de bases de données Open Source à venir sur IBM i

L’Open Source est l’avenir, alors où se situe IBM i ?

Tags: