Quels sont les outils et frameworks Big Data que les développeurs Java doivent connaître ?

PHPz
Libérer: 2023-05-13 23:49:12
avant
1994 Les gens l'ont consulté

1. MongoDB - la base de données multiplateforme orientée document la plus populaire.

MongoDB est une base de données basée sur le stockage de fichiers distribué, écrite en langage C++. Conçu pour fournir des solutions de stockage de données évolutives et hautes performances pour les applications Web. Les performances des applications dépendent des performances de la base de données. MongoDB est la base de données non relationnelle la plus riche en fonctionnalités et ressemble le plus à une base de données relationnelle. Avec la sortie de MongoDB 3.4, ses capacités de scénarios d'application ont été encore étendues.

Les principaux avantages de MongoDB sont un modèle de document flexible, un jeu de réplicas haute disponibilité et un cluster fragmenté évolutif. Vous pouvez essayer de comprendre MongoDB sous plusieurs aspects, tels que la surveillance en temps réel des outils MongoDB, l'utilisation de la mémoire et les défauts de page, le nombre de connexions, les opérations de base de données, les jeux de réplication, etc.

Quels sont les outils et frameworks Big Data que les développeurs Java doivent connaître ?

2. Elasticsearch - un moteur de recherche RESTful distribué conçu pour le cloud.

ElasticSearch est un serveur de recherche basé sur Lucene. Il fournit un moteur de recherche en texte intégral distribué multi-utilisateurs basé sur une interface Web RESTful. Elasticsearch, développé en Java et publié en open source selon les termes de la licence Apache, est un moteur de recherche populaire au niveau des entreprises.

ElasticSearch n'est pas seulement un moteur de recherche en texte intégral, mais aussi un stockage de documents distribué en temps réel, dans lequel chaque champ contient des données indexées et peut être recherché, c'est également un moteur de recherche distribué avec des capacités d'analyse en temps réel, et peut être étendu à des centaines de serveurs stockant et traitant des pétaoctets de données. ElasticSearch utilise Lucene pour compléter sa fonction d'indexation au niveau inférieur, c'est pourquoi bon nombre de ses concepts de base proviennent de Lucene.

Quels sont les outils et frameworks Big Data que les développeurs Java doivent connaître ?

3. Cassandra - un système de gestion de bases de données distribuées open source, développé à l'origine par Facebook, conçu pour gérer de grandes quantités de données sur de nombreux serveurs de base, offrir une haute disponibilité et aucun point de défaillance unique.

Apache Cassandra est un système de base de données NoSQL distribué open source. Il combine le modèle de données de Google BigTable avec l'architecture entièrement distribuée d'Amazon Dynamo. Il a été open source en 2008. Depuis lors, en raison de sa bonne évolutivité, Cassandra a été adoptée par les sites Web 2.0 tels que Digg et Twitter et est devenue une solution de stockage de données structurées distribuées populaire.

Étant donné que Cassandra est écrit en Java, il peut théoriquement fonctionner sur des machines avec JDK6 et supérieur. Les JDK officiellement testés incluent OpenJDK et le JDK de Sun. Les commandes de fonctionnement de Cassandra sont similaires aux bases de données relationnelles que nous exploitons habituellement. Pour les amis qui connaissent MySQL, l'opération sera facile à démarrer.

Quels sont les outils et frameworks Big Data que les développeurs Java doivent connaître ?

4. Redis - stockage de structure de données en mémoire open source (sous licence BSD), utilisé comme base de données, cache et courtier de messages.

Redis est une base de données de valeurs-clés de type journal open source écrite en langage ANSI C, prend en charge le réseau, peut être basée sur la mémoire et persistante, et fournit des API dans plusieurs langues. Redis possède trois fonctionnalités principales qui le distinguent de nombreux autres concurrents : Redis est une base de données qui enregistre les données entièrement en mémoire, en utilisant le disque uniquement à des fins de persistance ; Redis possède un ensemble de types de données relativement riche par rapport à de nombreux systèmes de stockage de données à valeurs-clés ; ; Redis peut copier des données vers n'importe quel numéro

5. Hazelcast - une grille de données de mémoire open source basée sur Java.

Hazelcast est une grille de données en mémoire qui fournit aux programmeurs Java des transactions critiques et des applications de mémoire de niveau billion. Bien que Hazelcast n'ait pas de soi-disant "Master", il possède toujours un nœud Leader (le membre le plus ancien). Ce concept est similaire au Leader de ZooKeeper, mais le principe de mise en œuvre est complètement différent. Dans le même temps, les données de Hazelcast sont distribuées et chaque membre détient une partie des données et les données de sauvegarde correspondantes, ce qui est également différent de ZooKeeper.

La commodité de l'application Hazelcast est appréciée des développeurs, mais si vous souhaitez la mettre en œuvre, vous devez y réfléchir attentivement.

6. EHCache - un cache distribué Java open source largement utilisé. Principalement pour le cache général, Java EE et les conteneurs légers.

EhCache est un framework de mise en cache en cours de processus Java pur, rapide et performant. Il s'agit du CacheProvider par défaut en veille prolongée. Les principales fonctionnalités sont : rapide et simple, avec plusieurs stratégies de mise en cache ; les données mises en cache ont deux niveaux, mémoire et disque, il n'y a donc pas lieu de s'inquiéter des problèmes de capacité qui seront écrites sur le disque lors du redémarrage de la machine virtuelle ; il est accessible via RMI et l'API enfichable. Mise en cache distribuée d'autres manières ; dispose d'une interface d'écoute pour les gestionnaires de cache et de cache ; prend en charge plusieurs instances de gestionnaire de cache, ainsi que plusieurs zones de cache pour une instance ;

7. Hadoop - un framework logiciel open source écrit en Java, utilisé pour le stockage distribué, et pour les très grandes données, les utilisateurs peuvent développer des programmes distribués sans comprendre les détails sous-jacents de la distribution.

Exploitez pleinement les clusters pour le calcul et le stockage à haut débit. Hadoop implémente un système de fichiers distribué (Hadoop Distributed File System), appelé HDFS. La conception de base du framework Hadoop est : HDFS et MapReduce. HDFS fournit un stockage pour des données massives et MapReduce fournit un calcul pour des données massives.

Quels sont les outils et frameworks Big Data que les développeurs Java doivent connaître ?

8. Solr - une plateforme de recherche d'entreprise open source, écrite en Java, issue du projet Apache Lucene.

Solr est un serveur d'applications de recherche indépendant au niveau de l'entreprise qui fournit une interface API similaire au service Web. Les utilisateurs peuvent soumettre des fichiers XML dans un certain format au serveur du moteur de recherche via des requêtes http pour générer des index ; ils peuvent également effectuer des requêtes de recherche via des opérations Http Get et obtenir les résultats renvoyés au format XML.

Comme ElasticSearch, il est également basé sur Lucene, mais il l'étend pour fournir un langage de requête plus riche que Lucene, tout en étant configurable, évolutif et en optimisant les performances des requêtes.

9. Spark - le projet le plus actif de l'Apache Software Foundation, est un framework informatique en cluster open source.

Spark est un environnement informatique en cluster open source similaire à Hadoop, mais il existe certaines différences entre les deux qui rendent Spark plus supérieur dans certaines charges de travail. En d'autres termes, Spark permet d'utiliser des ensembles de données distribués en mémoire, en plus de pouvoir. pour fournir des requêtes interactives, il peut également optimiser les charges de travail itératives.

Spark est implémenté en langage Scala et utilise Scala comme framework d'application. Contrairement à Hadoop, Spark et Scala sont étroitement intégrés et Scala peut fonctionner aussi facilement que des objets de collection locaux.

10. Memcached - système général de cache de mémoire distribuée.

Memcached est un système de mise en cache distribué initialement développé par Danga Interactive pour LiveJournal, mais utilisé par de nombreux logiciels (tels que MediaWiki). En tant que serveur de cache distribué à haut débit, Memcached présente les caractéristiques suivantes : un protocole simple, un traitement des événements basé sur libevent et un stockage mémoire intégré.

11. Apache Hive - Fournit une couche de type SQL au-dessus de Hadoop.

Hive est une plateforme d'entrepôt de données basée sur Hadoop. Grâce à Hive, le travail ETL peut être facilement effectué. hive définit un langage de requête similaire à SQL, qui peut convertir le SQL écrit par l'utilisateur en programmes Mapreduce correspondants pour une exécution basée sur Hadoop. Actuellement, la version Apache Hive 2.1.1 a été publiée.

12. Apache Kafka - un système de messagerie par abonnement distribué à haut débit développé à l'origine par LinkedIn.

Apache Kafka est un projet de système de messagerie open source écrit en Scala. L'objectif de ce projet est de fournir une plateforme unifiée, à haut débit et à faible latence, pour le traitement des données en temps réel. Kafka gère les messages différenciés par classes, appelés sujets. Les producteurs publient des messages sur les sujets Kafka, et les consommateurs s'inscrivent auprès des sujets et reçoivent les messages publiés sur ces sujets.

13. Akka – Une boîte à outils pour créer des applications basées sur des messages hautement concurrentes, distribuées et résilientes sur la JVM.

Akka est une bibliothèque écrite en Scala qui simplifie l'écriture d'applications de modèles d'acteur Java et Scala tolérantes aux pannes et hautement évolutives. Il a été utilisé avec succès dans l’industrie des télécommunications et le système ne tombe presque jamais en panne.

14. HBase - base de données open source, non relationnelle et distribuée, modélisée à l'aide de BigTable de Google, écrite en Java et fonctionnant sur HDFS.

Différent des produits commerciaux de Big Data tels que FUJITSU Cliq, HBase est une implémentation open source de Google Bigtable. Semblable à Google Bigtable, qui utilise GFS comme système de stockage de fichiers, HBase utilise Hadoop HDFS comme système de stockage de fichiers. pour traiter des quantités massives dans Bigtable Data, HBase utilise également Hadoop MapReduce pour traiter des données massives dans HBase ; Google Bigtable utilise Chubby comme service collaboratif et HBase utilise Zookeeper comme contrepartie.

15. Neo4j - une base de données de graphiques open source implémentée en Java.

Neo4j est une base de données graphique NOSQL hautes performances qui stocke des données structurées sur le réseau au lieu de tables. Il s'agit d'un moteur de persistance Java intégré, basé sur disque et entièrement transactionnel.

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!

Étiquettes associées:
source:yisu.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal