Avec ses appliances analytiques Urika-GX, Cray vise le monde de l'entreprise
Fort de son expertise dans le monde du HPC, Cray vient de dévoiler une nouvelle génération d'appliances analytiques, les Urika-GX. Ces dernières proposent une infrastructure optimisée pour l'exécution de workloads Hadoop, Spark et l'analyse à base de graphes.
Essentiellement connu pour ses œuvres dans le monde du supercalcul, Cray a récemment annoncé le lancement d’Urika-GX, une nouvelle famille d’appliances analytiques clé en main destinées aux entreprises et capables de faire cohabiter Hadoop, Apache Spark et les outils d’analyses à base de graphe maison.
Comme l’explique Dominik Ulmer, Vice-Président Business Operations EMEA chez Cray, les systèmes Urika-GX sont une évolution des systèmes analytiques déjà proposés par la firme. Il y a un peu plus de quatre ans, via sa division YarcData, Cray a lancé les appliances Urika-GD [pour Universal RDF integration Knowledge Appliance -Graph Discovery, N.D.L.R.], des plates-formes conçues pour populariser l’analyse à base de graphes. Dérivées des systèmes HPC Cray XMT, les Urika-GD associaient des puces x86 standard à des co-processeurs massivement parallèles maison (« ThreadStorm ») et à des interfaces d’interconnexion à hautes performances dédiées. Il y a bientôt deux ans, ce premier lancement a été conforté par l’arrivée des appliances Urika XA [pour Extreme Analytics], des appliances x86 bien plus traditionnelles, conçues pour l’exécution de workloads Hadoop et Spark. Les nouvelles appliances Urika-GX sont le fruit de la convergence des plates-formes Urika initiales et permettent de réunir les trois types de workloads (Hadoop, Spark et analyse de Graphes) sur une plate-forme unifiée.
Avec ces systèmes clés en main, s’appuyant sur des plates-formes standards, Cray entend concilier les besoins des utilisateurs avec ceux des équipes IT. Selon Dominik Ulmer, Urika-GX est conçu pour délivrer le niveau de flexibilité et d’agilité requis par les Datascientists, tout en permettant aux équipes IT d’opérer leur plate-forme de façon industrielle.
Jusqu’à 1728 cœurs Xeon E5v4 par rack
Les systèmes Urika-GX sont en fait des clusters de serveurs denses x86 interconnectés via l’interface à haut débit « Aries » de Cray – l’une des particularités du bus Aries, développé pour le monde du HPC, est que chaque nœud peut avoir une visibilité sur la mémoire de l’ensemble des nœuds du cluster et réaliser des transferts « atomiques » de données à très faible latence en opérant des requêtes entre nœuds via RDMA. Ces serveurs disposent de leurs propres SSD et sont aussi reliés à un stockage externe partagé. Chaque nœud est motorisé par un OS Linux dérivé de CentOS et incluant certaines optimisations conçues par Cray. Cray fournit aussi ses environnements de développement et de compilation ainsi que des outils spécifiques au dessus de CentOS.
Pour le stockage des données, Cray propose le choix entre la mise en œuvre de HDFS, le système de fichiers standard d’Hadoop, et celle de Lustre, un système de fichiers parallèle à hautes performances que Cray utilise déjà largement dans ses installations. Comme l’explique Dominik Ulmer, Lustre permet de répondre à des besoins de performances qu’HDFS ne peut satisfaire en l’état.
Physiquement les appliances Urika-GX sont livrées préconfigurées dans des racks 19 pouces de 42 U. Cray propose trois tailles de configurations standards, S (16 nœuds), M (32 nœuds) et L (48 nœuds serveurs bi-socket Xeon E5-2600v4). Cray en trois modèles. Une configuration L embarque ainsi jusqu’à 1 728 cœurs CPU, jusqu’à 22 To de mémoire vive et jusqu’à 35 To de capacité Flash sur les nœuds, le tout épaulé par jusqu’à 192 To de stockage local sur disque. Des options sont disponibles pour attacher des éléments de stockage additionnels via le stockage Lustre Sonexion de Cray. D’ici la fin 2016, Cray ajoutera aussi des options de stockage GPFS et NFS.
Selon le constructeur, la combinaison d’architectures standards avec le bus Aries et avec les optimisations logicielles apportées par Cray, permet des gains significatifs de performances par rapport à des clusters traditionnels. Le constructeur revendiquent des performances 2 à 4 fois supérieures sur certains traitements Spark et jusqu’à 20 fois meilleures qu’un cluster classique en analyse de graphes (du fait de l’espace mémoire unique rendu possible par l’interface Aries).
Un environnement logiciel piloté par Apache Mesos
Au-dessus de ces couches d’infrastructure, Cray a mis en œuvre l’outil de gestion de cluster Open Source Apache Mesos qui a la charge d’allouer aux différentes applications les ressources (CPU, mémoire, réseau…) dont elles ont besoin sur le cluster. Mesos dispose d’intégrations natives avec des frameworks analytiques comme Hadoop (Cray s’appuie sur la pile Hadoop d’Hortonworks) et Spark mis en œuvre sur les Urika-GX. Cray l’a aussi interfacé avec son outil de graphe, Cray Graph Engine. Ce moteur, développé à l’origine dans sa filiale YarcData pour les systèmes Cray Urika-GD est présenté par Cray comme 10 à 100 fois plus rapide que les solutions concurrentes d’analyse de graphes et il peut supporter plusieurs milliers de processeurs travaillant en parallèle. Dans les nouveaux Urika-GX, il peut être combiné avec des outils comme Spark, afin de bâtir des workflows analytiques complexes tout en évitant les déplacements de données inutiles.
Enfin, Mesos est aussi utilisé dans Urika-GX pour piloter le système de messagerie distribué Apache Kafka et pour gérer l’outil de requêtage SQL Apache Phoenix.
L’ensemble de ces composants logiciels est chapeauté par une couche logicielle permettant aux utilisateurs d’analyser en temps réel le comportement du cluster ainsi que la performance des applications et des jobs tournant sur le cluster. L’objectif est notamment de permettre de diagnostiquer les points de contentions dans leurs requêtes.
Cray estime que le marché est aujourd’hui mûr pour ses appliances
Cray entend profiter de son expertise du monde du calcul pour mettre en avant les atouts d’Urika-GX et étendre son implantation dans les entreprises. La firme estime que le moment est bien adapté. « Notre première génération de systèmes analytique, les Urika XA était une appliance Hadoop Cloudera, le marché était encore en phase expérimentale et peu de clients étaient prêts à investir dans des appliances » explique Dominik Ulmer. « Au cours des trois dernières années, les clients ont mûri et ont compris comment utiliser ces outils. Ils ont aussi mesuré les limites de la scalabilité des clusters maisons et les problèmes de maintenance qu’ils posent. Le type de système que nous proposons propose un niveau d’agilité supérieure à ce qu’un client peut bricoler en interne. Mais il faut aussi une activité qui les nécessite. On n’achète pas un tel système pour faire tourner un workload tous les mois ».
Selon Ulmer, la force historique de Cray est sa capacité à travailler main dans la main avec ses clients pour résoudre des problèmes complexes. » Il y a une vraie intimité avec nos clients. Nous avons bâti des équipes d’experts qui sont familiers de ces systèmes, mais aussi des questions analytiques. A l’heure actuelle nous sommes à même de couvrir directement une petite dizaine de grands segments verticaux [sciences de la vie, santé, pharmacologie, cyber sécurité, détection de fraude dans les services financiers, optimisation des processus industriels, analyse de logs massifs dans les datacenters… N.D.L.R.] ». Les autres scénarios métiers sont couverts en collaboration avec des partenaires. Dominik Ulmer se veut aussi très modeste et estime que nul ne peut réellement anticiper comment des systèmes comme Urika-GX seront utilisés par les clients : « Nous ne sous-estimons pas l’intelligence de nos clients et nous nous attendons à voir nos systèmes utilisés de façon imprévue. Ce ne serait pas la première fois et nous en avons l’habitude dans le monde du HPC ».