Apache Presto - Connecteur HIVE

Le connecteur Hive permet d'interroger les données stockées dans un entrepôt de données Hive.

Conditions préalables

  • Hadoop
  • Hive

J'espère que vous avez installé Hadoop et Hive sur votre machine. Démarrez tous les services un par un dans le nouveau terminal. Ensuite, démarrez Hive Metastore à l'aide de la commande suivante,

hive --service metastore

Presto utilise le service de métastore Hive pour obtenir les détails de la table Hive.

Paramètres de configuration

Créer un fichier “hive.properties” sous “etc/catalog”annuaire. Utilisez la commande suivante.

$ cd etc 
$ cd catalog 
$ vi hive.properties  

connector.name = hive-cdh4 
hive.metastore.uri = thrift://localhost:9083

Après avoir effectué toutes les modifications, enregistrez le fichier et quittez le terminal.

Créer une base de données

Créez une base de données dans Hive à l'aide de la requête suivante -

Requete

hive> CREATE SCHEMA tutorials;

Une fois la base de données créée, vous pouvez la vérifier à l'aide du “show databases” commander.

Créer une table

Create Table est une instruction utilisée pour créer une table dans Hive. Par exemple, utilisez la requête suivante.

hive> create table author(auth_id int, auth_name varchar(50), 
topic varchar(100) STORED AS SEQUENCEFILE;

Insérer un tableau

La requête suivante est utilisée pour insérer des enregistrements dans la table de la ruche.

hive> insert into table author values (1,’ Doug Cutting’,Hadoop),
(2,’ James Gosling’,java),(3,’ Dennis Ritchie’,C);

Démarrez Presto CLI

Vous pouvez démarrer Presto CLI pour connecter le plugin de stockage Hive à l'aide de la commande suivante.

$ ./presto --server localhost:8080 --catalog hive —schema tutorials;

Vous recevrez la réponse suivante.

presto:tutorials >

Lister les schémas

Pour répertorier tous les schémas du connecteur Hive, saisissez la commande suivante.

Requete

presto:tutorials > show schemas from hive;

Résultat

default  

tutorials

Tables de liste

Pour lister toutes les tables dans le schéma «tutoriels», utilisez la requête suivante.

Requete

presto:tutorials > show tables from hive.tutorials;

Résultat

author

Récupérer la table

La requête suivante est utilisée pour récupérer tous les enregistrements de la table de la ruche.

Requete

presto:tutorials > select * from hive.tutorials.author;

Résultat

auth_id  |   auth_name    | topic 
---------+----------------+-------- 
       1 | Doug Cutting   | Hadoop 
       2 | James Gosling  | java 
       3 | Dennis Ritchie | C