Pourquoi utiliser HBase
un meilleur choix que d’utiliser Cassandra
avec Hadoop
?
Quelqu’un peut-il s’il vous plaît donner une explication détaillée à ce sujet?
Merci
Je ne pense pas que l’un soit meilleur que les autres, ce n’est pas seulement l’un ou l’autre. Ce sont des systèmes très différents, chacun ayant ses forces et ses faiblesses. Cela dépend donc vraiment de vos cas d’utilisation. Ils peuvent certainement être utilisés en complément les uns des autres dans la même infrastructure.
Pour mieux expliquer la différence, j’aimerais emprunter une image de Cassandra: le Guide définitif , où ils passent en revue le théorème de CAP. Ce qu’ils disent est fondamentalement pour tout système dissortingbué, vous devez trouver un équilibre entre la cohérence , la disponibilité et la tolérance de partition , et vous ne pouvez satisfaire de manière réaliste que 2 de ces propriétés. De cela, vous pouvez voir que:
En ce qui concerne Hadoop, HBase est construit sur HDFS, ce qui le rend très pratique à utiliser si vous avez déjà une stack Hadoop. Il est également pris en charge par Cloudera, une dissortingbution d’entreprise standard pour Hadoop.
Mais Cassandra a également plus d’intégration avec Hadoop, à savoir Datastax Brisk, qui gagne en popularité. Vous pouvez également maintenant diffuser en mode natif des données de la sortie d’un travail Hadoop vers un cluster Cassandra en utilisant un format de sortie fourni par Cassandra ( BulkOutputFormat
par exemple), nous ne sums plus au point où Cassandra n’était qu’un projet autonome.
Dans mon expérience, j’ai trouvé que Cassandra est génial pour les lectures aléatoires, et pas tellement pour les parsings
Pour mettre un peu de couleur sur la photo, j’ai utilisé les deux dans mon travail dans la même infrastructure, et HBase a un objective très différent de celui de Cassandra. J’ai surtout utilisé Cassandra pour des recherches très rapides en temps réel, alors que j’ai utilisé HBase davantage pour les gros travaux par lots ETL nécessitant moins de latence.
C’est une question qui mériterait vraiment un article de blog, alors au lieu de continuer, j’aimerais vous indiquer un article qui résume beaucoup de différences clés entre les deux systèmes. En bout de ligne, il n’y a pas de solution supérieure IMHO, et vous devriez vraiment penser à vos cas d’utilisation pour voir quel système est le mieux adapté.
Nous devons comparer les avantages et les inconvénients des deux bases de données et prendre une décision prudente en fonction des besoins de l’entreprise.
Cassandra
Avantages:
Les inconvénients:
HBase
Avantages:
Les inconvénients:
Consultez l’ article 1 , l’ article 2 et cette présentation pour plus de détails.