Il existe deux types. Table gérée et table externe. Dans la table gérée, les données et le schéma sont sous le contrôle de la ruche, mais dans la table externe, seul le schéma est sous le contrôle de la ruche.

No Hive ne fournit pas d'insertion et de mise à jour au niveau de la ligne. Donc, il ne convient pas au système OLTP.

Modifier la table nom_table RENAME TO nouveau_nom

Utilisation de l'option de colonne REMPLACER

ALTER TABLE nom_table REPLACE COLUMNS ……

C'est une base de données relationnelle stockant les métadonnées des tables Hive, des partitions, des bases de données Hive, etc.

Selon la nature des données dont dispose l'utilisateur, le SerDe intégré peut ne pas satisfaire le format des données. Les utilisateurs SO doivent écrire leur propre code java pour satisfaire leurs exigences de format de données.

Hive est un outil de l'écosystème Hadoop qui fournit une interface pour organiser et interroger les données dans une base de données comme la mode et écrire des requêtes de type SQL. Il convient à l'accès et à l'analyse des données dans Hadoop à l'aide de la syntaxe SQL.

hdfs: // serveur_namenode / utilisateur / ruche / entrepôt

  • Mode local
  • Mode distribué
  • Mode pseudo-distribué

Oui. Les types de données TIMESTAMP stockent la date au format java.sql.timestamp

Il existe trois types de données de collecte dans Hive.

  • ARRAY
  • MAP
  • STRUCT

Oui, en utilisant le! marque juste avant la commande.

Par exemple! Pwd à l'invite de la ruche listera le répertoire actuel.

La variable hive est une variable créée dans l'environnement Hive qui peut être référencée par des scripts Hive. Il est utilisé pour transmettre certaines valeurs aux requêtes Hive lorsque la requête commence à s'exécuter.

Utilisation de la commande source.

Example −

Hive> source /chemin/to/file/file_with_query.hql

Il s'agit d'un fichier contenant la liste des commandes à exécuter au démarrage de l'interface de ligne de commande de la ruche. Par exemple, définir le mode strict sur true, etc.

Le délimiteur d'enregistrement par défaut est - \ n

Et les délimiteurs classés sont - \ 001, \ 002, \ 003

Le schéma est validé avec les données lors de la lecture des données et n'est pas appliqué lors de l'écriture des données.

AFFICHER LES BASES DE DONNÉES COMME «p. *»

Avec la commande use, vous fixez la base de données sur laquelle toutes les requêtes ruche suivantes seront exécutées.

Vous ne pouvez en aucun cas supprimer DBPROPERTY.

Il définit les travaux mapreduce en mode strict, de sorte que les requêtes sur les tables partitionnées ne peuvent pas s'exécuter sans une clause WHERE. Cela empêche l'exécution de très gros travaux pendant une longue période.

Cela peut être fait avec la requête suivante

SHOW PARTITIONS table_name PARTITION(partitioned_column=’partition_value’)

org.apache.hadoop.mapred.TextInputFormat

org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat

Lorsque nous émettons la commande DROP TABLE IF EXISTS nom_table

Hive renvoie une erreur si la table supprimée n'existe pas en premier lieu.

Les données restent dans l'ancien emplacement. Il doit être déplacé manuellement.

ALTER TABLE table_name
CHANGE COLUMN new_col  INT
BEFORE x_col

Non. Cela ne fait que réduire le nombre de fichiers, ce qui devient plus facile à gérer pour namenode.

En utilisant la clause ENABLE OFFLINE avec une instruction ALTER TABLE.

En omettant la CLAUSE LOCALE dans l'instruction LOAD DATA.

Les nouveaux fichiers entrants sont simplement ajoutés au répertoire cible et les fichiers existants sont simplement écrasés. Les autres fichiers dont le nom ne correspond à aucun des fichiers entrants continueront d'exister.

Si vous ajoutez la clause OVERWRITE, toutes les données existantes dans le répertoire seront supprimées avant l'écriture de nouvelles données.

Il crée une partition sur les employés de la table avec des valeurs de partition provenant des colonnes de la clause select. C'est ce qu'on appelle l'insertion de partition dynamique.

Une fonction de génération de table est une fonction qui prend une seule colonne comme argument et la développe en plusieurs colonnes ou lignes. Exemple exploe ()

Si nous définissons la propriété hive.exec.mode.local.auto sur true, hive évitera mapreduce pour récupérer les résultats de la requête.

L'opérateur LIKE se comporte de la même manière que les opérateurs SQL standard utilisés dans les requêtes de sélection. Exemple -

street_name comme '% Chi'

Mais l'opérateur RLIKE utilise des expressions régulières plus avancées qui sont disponibles en java

Exemple - street_name RLIKE '. * (Chi | Oho). *' Qui sélectionnera n'importe quel mot contenant chi ou oho.

Non, car ce type de jointure ne peut pas être implémenté dans mapreduce

Dans une requête de jointure, la plus petite table à prendre en première position et la plus grande table à prendre en dernière position.

Il contrôle la réduction de la sortie de la carte parmi les réducteurs. Il est utile en cas de streaming de données

Sélectionnez le casting (prix comme FLOAT)

Hive retournera NULL

Non. Le nom d'une vue doit être unique par rapport à toutes les autres tables et vues présentes dans la même base de données.

Non. Une vue ne peut pas être la cible d'une instruction INSERT ou LOAD.

Les index occupent de l'espace et il y a un coût de traitement pour organiser les valeurs de la colonne sur laquelle l'index est créé.

SHOW INDEX ON nom_table

Cela listera tous les index créés sur l'une des colonnes de la table nom_table.

Les valeurs d'une colonne sont hachées dans un certain nombre de compartiments définis par l'utilisateur. C'est un moyen d'éviter trop de partitions ou de partitions imbriquées tout en optimisant la sortie des requêtes.

C'est un conseil de requête pour diffuser une table en mémoire avant d'exécuter la requête. C'est une technique d'optimisation des requêtes.

Oui. Une partition peut être archivée. L'avantage est qu'il diminue le nombre de fichiers stockés dans namenode et que le fichier archivé peut être interrogé à l'aide de la ruche. L'inconvénient est que cela entraînera une requête moins efficace et n'offrira aucune économie d'espace.

Il s'agit d'un UDF qui est créé à l'aide d'un programme java pour répondre à certains besoins spécifiques non couverts par les fonctions existantes dans Hive. Il peut détecter le type d'argument d'entrée par programme et fournir une réponse appropriée.

Le chemin d'accès local doit contenir un fichier et non un répertoire. $ Env: HOME est une variable valide disponible dans l'environnement de la ruche.

La clause TBLPROPERTIES est utilisée pour ajouter le nom du créateur lors de la création d'une table.

Le TBLPROPERTIES est ajouté comme -

TBLPROPERTIES(‘creator’= ‘Joan’)