Introduction aux alternatives de ruche

Avant de discuter des alternatives de HIVE. Voyons d'abord ce qu'est un HIVE? Ainsi, HIVE est essentiellement un outil d'entreposage de données qui est développé au-dessus de HDFS (Hadoop Distributed File System). Il est utilisé pour donner une interface de requête de type SQL pour interroger des données qui sont stockées dans divers fichiers intégrés à Hadoop. Il convertit les requêtes de type SQL en tâches Map Reduce qui facilitent l'exécution de grands volumes de données.

traits

Voici quelques-unes des fonctionnalités de Hive:

  • Comme SQL, il possède son propre langage déclaratif appelé HiveQL.
  • Il a une structure de table similaire aux tables de la base de données relationnelle et il fournit également une prise en charge ETL (extraction / support / chargement).
  • Une caractéristique intéressante est qu'il permet la conversion de format depuis l'intérieur du HIVE.

Limitation des alternatives à la ruche

Connaissons quelques limitations de Hive:

  • Il n'est pas conçu pour OLTP (Online Transaction Processing) mais prend en charge OLAP (Online Analytical Processing).
  • Une limitation importante est qu'il ne prend pas en charge les mises à jour et les suppressions.
  • Dans Hive, les sous-requêtes ne sont pas non plus prises en charge.

5 alternatives importantes pour la ruche

Ci-dessous, nous allons discuter de cinq alternatives importantes de HIVE présentes sur le marché:

1. Apache Impala

Il s'agit d'un moteur de requête SQL de traitement parallèle open source pour les données stockées dans un cluster d'ordinateurs exécutant Apache Hadoop. Il a été annoncé en octobre 2012. Voici les principales caractéristiques d'Apache Impala comme alternative à HIVE.

  • Impala est un bon choix pour les personnes exécutant des requêtes SQL sur Hadoop et Apache HBase sans transformer les données car il n'est pas nécessaire de transformer ou déplacer les données, contrairement à HIVE.
  • Une autre différence entre ces deux est la génération d'expressions de requête. Impala les génère au moment de l'exécution en utilisant llvm tandis que HIVE les génère au moment de la compilation.
  • Hive Queries a un problème de démarrage à froid, ce qui n'est pas le cas des requêtes Impala, car dans les processus de démon Impala, ils sont démarrés au démarrage lui-même, toujours prêts à traiter une requête, ce qui évite le problème de démarrage à froid.
  • Impala reconnaît les formats de fichiers Hadoop, la sécurité Hadoop, le pilote ODBC.
  • L'USP principal de l'impala est la force brute du traitement parallèle. Ainsi, Impala est une meilleure alternative si l'on démarre un nouveau projet.

2. Presto DB

Presto est une autre alternative à HIVE développée par facebook. Son USP est qu'il peut même interroger les données de plusieurs sources dans une même requête. Voici les principales caractéristiques de PrestoDB comme alternative à HIVE.

  • Presto est un moteur de requête SQL distribué en mémoire qui est également très rapide car le moteur de requête de Presto est rapide et bien adapté à l'analyse interactive.
  • L'USP pour Presto par rapport aux autres est son modèle plug and play avec différentes sources de données. Grâce à ce modèle plug and play, la jonction de requêtes entre différentes sources de données est très simple avec presto.
  • Dans Presto, les tables de jointure de petites dimensions ont été accélérées. Presto excelle avec la plupart des autres moteurs de requête distribués.
  • Presto n'est pas approprié pour les jointures de faits volumineuses car il ne tire pas parti du disque et n'utilise pas de mémoire pour le traitement.
  • Un point plus important pour presto est son allocation de ressources. Il a une allocation de ressources basée sur la file d'attente prioritaire.
  • Un compromis pour de bonnes performances dans Presto est que le support UDF n'est pas disponible dans Presto en raison duquel il faut écrire sa propre fonction, ce qui augmente les frais généraux car il doit être conçu exclusivement pour Presto et gêne l'interopérabilité.

3. Spark SQL

C'est un module pour le traitement de données aussi structuré et aussi open-source. Il peut également agir comme un moteur de requête SQL distribué et une partie unique de cela est qu'il fournit une abstraction de programmation connue sous le nom de trames de données. Il a été publié pour la première fois en 2014 développé par Apache Software Foundation. Vous trouverez ci-dessous certaines des principales caractéristiques de Spark SQL comme alternative à HIVE.

  • La bonne chose à propos de Spark SQL est qu'il peut être implémenté en langage Java, Scala, Python et R alors que HIVE peut être implémenté en langage Java.
  • Il existe une similitude complète dans le modèle de base de données primaire entre HIVE et Spark, car pour les deux modèles de base de données primaires, le SGBD relationnel.
  • Il est également similaire à HIVE car les deux prennent en charge le magasin de valeurs-clés en tant que modèle de base de données supplémentaire.
  • Il a des types de données prédéfinis tels que float et date.
  • Il prend en charge SQL car il possède des instructions DML et DDL.
  • Contrairement à HIVE qui prend en charge JDBC, ODBC et Thrift, Spark SQL ne prend en charge que JDBC et ODBC.
  • Spark SQL utilise spark core pour stocker des données dans différents nœuds.
  • Une autre différence majeure entre spark et HIVE réside dans les méthodes de réplication: il existe un facteur de réplication sélectif dans HIVE pour stocker des données redondantes sur plusieurs nœuds, mais aucun facteur de réplication n'est disponible dans Spark SQL.
  • Dans Spark SQL, il n'y a pas de droits d'accès pour les utilisateurs alors que dans Apache Hive, nous avons des droits d'accès pour les utilisateurs, les groupes.
  • Il ne prend pas en charge une table transactionnelle et ne prend pas en charge le type char.

4. Requin

Il s'agit d'un moteur de requête SQL open source écrit en Scala. Le fait intéressant de Shark est qu'au lieu d'utiliser Map-Reduce pour exécuter ses requêtes, il utilise ses propres ensembles de nœuds de travail. Voici quelques-unes des fonctionnalités de Shark:

  • Il utilise un client de ligne de commande.
  • Il offre une interopérabilité avec Hive pour le partage de schéma.
  • Il prend en charge les extensions de ruche existantes telles que les FDU.

Il n'est pas encore très célèbre mais il offre une alternative à HIVE.

5. BigSQL par IBM

Il est fourni par Big Blue (IBM). IBM a sa propre distribution Hadoop appelée Big Insights. Ainsi, Big SQL est proposé dans le cadre de celui-ci. Il n'est pas open source car il est fourni par IBM. Certaines des choses qu'ils fournissent sont les suivantes:

  • Ils prennent en charge les pilotes JDBC et OJDBC.
  • Ils fournissent un support SQL
  • Ils peuvent être utilisés pour interroger les données de HDFS.

Articles recommandés

Ceci est un guide des alternatives à la ruche. Ici, nous discutons des fonctionnalités, des limitations et des 5 alternatives importantes de Hive. Vous pouvez également consulter nos autres articles connexes pour en savoir plus-

  1. Alternatives à Hadoop
  2. Alternatives à Tableau
  3. Alternatives à Google Analytics
  4. Streaming Hadoop
  5. Ordre de ruche par
  6. Installation de ruche
  7. Cadres de données en R

Catégorie: