Les données de grandes mines avec ruche

Hive est, une couche d'entreposage des données orientée lots construit sur les éléments de base de Hadoop (HDFS et MapReduce) et est très utile dans les grandes données. Il fournit aux utilisateurs qui connaissent SQL avec une mise en œuvre simple SQL-lite appelé HiveQL sans sacrifier l'accès via les mappeurs et réducteurs. Avec la ruche, vous pouvez obtenir le meilleur des deux mondes: l'accès SQL-like aux données structurées et grande analyse de données sophistiquée avec MapReduce.

Contrairement à la plupart des entrepôts de données, la ruche est pas conçu pour des réponses rapides aux requêtes. En fait, les requêtes peuvent prendre plusieurs minutes, voire quelques heures, selon la complexité. En conséquence, la ruche est mieux utilisé pour le data mining et d'analyse plus profondes qui ne nécessitent pas des comportements en temps réel. Car elle repose sur la fondation Hadoop, il est très extensible, évolutif et résilient, quelque chose que l'entrepôt de données moyen est pas.

Hive utilise trois mécanismes pour l'organisation des données:




  • Tables: Ruche tableaux sont les mêmes que les tables SGBDR, comprenant des rangées et des colonnes. Parce que la ruche est en couches sur le Hadoop HDFS, les tables sont mappés à des répertoires dans le système de fichiers. En outre, la ruche supporte les tables stockées dans d'autres systèmes de fichiers natifs.

  • Partitions: Une table ruche peut soutenir une ou plusieurs partitions. Ces partitions sont mappés à des sous-répertoires dans le système de fichiers sous-jacent et représentent la distribution des données tout au long de la table. Par exemple, si une table est appelée Autos, avec une valeur clé de 1 2 3 4 5 et une valeur de fabricant Ford, le chemin d'accès à la partition serait / hivewh / Autos / kv = 12345 / Ford.

  • Seaux: À leur tour, les données peuvent être divisés dans des seaux. Les godets sont stockées sous forme de fichiers dans le répertoire de la partition dans le système de fichiers sous-jacent. Les godets sont basés sur la valeur de hachage d'une colonne dans la table. Dans l'exemple précédent, vous pourriez avoir un seau appelé Concentrer, contenant tous les attributs d'une voiture Ford Focus.

Métadonnées Hive est stocké à l'extérieur dans le “. Metastore ” Le Metastore est une base de données relationnelle contenant les descriptions détaillées du schéma Hive, y compris les types de colonnes, les propriétaires, les données clés et de valeurs, les statistiques de la table, et ainsi de suite. Le Metastore est capable de synchroniser les données de catalogue avec d'autres services de métadonnées dans l'écosystème Hadoop.

Hive supporte un langage de type SQL appelé HiveQL. HiveQL supporte la plupart des primitives de SQL, telles que select, rejoindre, ensemble, union all, et ainsi de suite. Il prend également en charge les requêtes multitables et inserts en partageant les données d'entrée dans une seule déclaration HiveQL. HiveQL peut être étendu pour supporter l'agrégation définie par l'utilisateur, la transformation de la colonne, et les scripts de MapReduce embarqués.


» » » » Les données de grandes mines avec ruche