Maison >Problème commun >Quels sont les quatre composants principaux de l'étincelle ?
Les quatre composants principaux de Spark sont : 1. SparkStreaming, un composant pour le calcul de flux de données en temps réel ; 2. SparkSQL, un composant pour l'exploitation de données structurées ; 3. GraphX, un composant fourni par Spark pour Framework de calcul graphique et bibliothèque d'algorithmes ; 4. MLlib, une bibliothèque d'algorithmes d'apprentissage automatique.
Recommandations associées : "Cours vidéo de programmation"
Quatre composants majeurs de Spark
1. SparkStreaming :
De nombreux domaines d'application ont une forte demande pour le calcul en continu de données en temps réel, telles que les journaux de serveur Web dans les environnements réseau ou les statuts soumis par les utilisateurs. Les mises à jour consistent en des files d'attente de messages, etc. Ce sont des flux de données en temps réel. Spark Streaming est un composant de la plateforme Spark qui effectue du streaming informatique sur des données en temps réel et fournit une API riche pour le traitement des flux de données. Étant donné que ces API correspondent aux opérations de base de Spark Core, les développeurs seront plus à l'aise pour écrire des applications Spark Streaming une fois familiarisés avec les concepts de base et les méthodes de programmation de Spark. D'après la conception sous-jacente, Spark Streaming prend en charge le même niveau de tolérance aux pannes, de débit et d'évolutivité que Spark Core.
2. SparkSQL :
Spark SQL est le composant utilisé par Spark pour exploiter les données structurées. Grâce à Spark SQL, les utilisateurs peuvent interroger des données à l'aide de SQL ou de la version Apache Hive du dialecte SQL (HQL). Spark SQL prend en charge plusieurs types de sources de données, tels que les tables Hive, Parquet et JSON. Spark SQL fournit non seulement une interface SQL pour Spark, mais aide également les développeurs à intégrer des instructions SQL dans le processus de développement d'applications Spark. Qu'ils utilisent Python, Java ou Scala, les utilisateurs peuvent effectuer simultanément des requêtes SQL et des requêtes complexes dans une seule application. .Analyse des données. Spark SQL se distingue des autres outils d'entrepôt de données open source en raison de son intégration étroite avec l'environnement informatique riche fourni par Spark. Spark SQL a été introduit pour la première fois dans Spark l.0. Avant Spark SQL, l'Université de Californie à Berkeley avait tenté de modifier Apache Hive pour qu'il fonctionne sur Spark, puis avait proposé le composant Shark. Cependant, avec l'introduction et le développement de Spark SQL, il est devenu plus étroitement intégré au moteur et à l'API Spark, de sorte que Shark a été remplacé par Spark SQL.
3. GraphX :
GraphX est un framework et une bibliothèque d'algorithmes fournis par Spark pour le calcul graphique. GraphX propose le concept de graphe d'attributs distribués élastiques et, sur cette base, réalise la combinaison organique et l'unification de la vue graphique et de la vue tableau en même temps, il fournit des opérations riches pour le traitement des données graphiques, telles que les opérations de sous-graphe, les opérations de sous-graphe ; et les attributs de sommet. Faites fonctionner mapVertices, utilisez mapEdges sur les attributs de bord, etc. GraphX réalise également l'intégration avec Pregel, qui peut utiliser directement certains algorithmes graphiques courants, tels que le PageRank, le comptage de triangles, etc.
4. MLlib :
MLlib est une bibliothèque d'algorithmes d'apprentissage automatique fournie par Spark, qui contient une variété d'algorithmes d'apprentissage automatique classiques et courants, principalement la classification, la régression, le clustering et la collaboration. etc. MLlib fournit non seulement des fonctions supplémentaires telles que l'évaluation du modèle et l'importation de données, mais fournit également des primitives d'apprentissage automatique de niveau inférieur, notamment un algorithme de base général d'optimisation de la descente de gradient. Toutes ces approches sont conçues comme des architectures évolutives facilement sur un cluster.
Pour plus d'articles connexes, veuillez visiter le Site Web PHP chinois ! !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!