Une introduction à Hive
Upcoming SlideShare
Loading in...5
×
 

Une introduction à Hive

on

  • 1,475 views

A l'occasion de Solution Linux 2013 nous présentons Hadoop à la communauté en France. Ici une introduction à Hive.

A l'occasion de Solution Linux 2013 nous présentons Hadoop à la communauté en France. Ici une introduction à Hive.

Statistics

Views

Total Views
1,475
Views on SlideShare
1,439
Embed Views
36

Actions

Likes
0
Downloads
42
Comments
0

4 Embeds 36

http://www.altic.org 23
http://altic.org 9
http://localhost 3
https://twitter.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution-NonCommercial-NoDerivs LicenseCC Attribution-NonCommercial-NoDerivs LicenseCC Attribution-NonCommercial-NoDerivs License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Une introduction à Hive Une introduction à Hive Presentation Transcript

  • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’UtilisationCommerciale - Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/HUG France SL2013 – Mai 2013Introduction à HIVEHadoop comme Entrepôt de donnéesCharly CLAIRMONTAltic - http://altic.orgcharly.clairmont@altic.org@egwada
  • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/Doù vient Hive ?● Chez Facebook manipulation dune quantitémonstre des données chaque jour● Avoir des alternatives à● MapReduce● Pig● Rentabiliser les ingénieurs qui connaissent etmaîtrisent SQL !
  • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/Cest quoi Hive ?Une infrastructure pour Entrepôt deDonnéeson peut tout simplement le considérercomme un Data Warehouse !
  • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/Comment ça marche ?● Hive a pour fondation Hadoop● Hive stocke ses données dans HDFS● Hive compile des requêtes SQL en jobsMapReduce et les exécute sur le clusterHadoop
  • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/Hive structure la donnée dans un modèle bienconnu : Tables, colonnes, lignes...
  • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/Hive architecture, composantsHDFSDDL QueriesBrowsingMapReduceMetaStoreThrift APISerDeThrift Jute JSON..ExecutionDriverParserPlannerDBWebUIOptimizerJDBC ODBCCLI
  • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/Hive Architecture, détail composants (1)● Interface Externe● fournit deux sortes dinterfaces– utilisateur● commande line (CLI)● WEB– programmation (API)● JDBC, ODBC● Thrift Server expose une API très simple pour exécuter les requêtes HiveQL● Metastore est un catalogue.● Tous les autres composants de Hive interagissent avec le Metastore.
  • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/Hive Architecture, détail composants (2)● DriverGère le cycle de vie des requêtes HiveQL durant leurcompilation, leur optimisation, et leur exécution● CompilerTransforme les requêtes en un plan qui constitue unesuite de DAG de job MapReduceLe Driver soumet les jobs mapReduce individuels depuisle DAG vers le moteur dexécution selon une séquence
  • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/Hive Architecture, détail composants (3)● Le Metastore est un catalogue qui contient lesmetadonnées des tables stockées dans Hive● Database : espace de nom pour les tables● Table : Métadonnées des tables qui contiennent la listedes colonnes, leur types, leurs propriétaires, leuremplacements de stockages et les informations desérialisation● Partition : chaque partition peut avoir ses proprescolonnes, son stockage et sa sérialisation● Buckets : découpage des partitions (optimisation pourles jointures)
  • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/Cycle de vie dune requête● Parser transfome la requête en arbre● Semantic Analyzer transforme larbre en unereprésentation interne de la requête par bloc● Logical Plan Generator convertit la représentationinterne en un plan logique, cest-à-dire un arbredopérations logiques● Optimizer parcourt plusieurs fois le plan logiquedopérations pour le rendre plus performant● Physical Plan Generator convertit le plan logique enun plan physique de DAG de job mapReduce
  • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/HiveQL, SQL pour Hive● HiveQL supporte● DDL (Create, Alter, Drop)● DML (load, Insert,Select)● Fonction utilisateurs● Appel à des programmes externe MapReduce
  • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/Création de tablesSHOW TABLES;CREATE TABLE shakespeare (freq INT, word STRING)ROW FORMATDELIMITED FIELDS TERMINATED BY ‘t’STORED AS TEXTFILE;DESCRIBE shakespeare;
  • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/Chargement de données depuis HDFSLOAD DATA LOCAL INPATH ‘/logs/status_updates’INTO TABLE status_updates PARTITION (ds=’2013-05-28’);
  • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/Sélection / Insertion résultatFROM (SELECT a.status, b.school, b.genderFROM status_updates aJOIN profiles b ON (a.userid = b.userid and a.ds=’2013-05-28’ )) subq1INSERT OVERWRITE TABLE gender_summary PARTITION(ds=’2013-05-28’)SELECT subq1.gender, COUNT(1) GROUP BY subq1.genderINSERT OVERWRITE TABLE school_summary PARTITION(ds=’2009-05-28’)SELECT subq1.school, COUNT(1) GROUP BY subq1.school
  • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’UtilisationCommerciale - Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/HUG France SL2013 – Mai 2013Introduction à HIVEMerci !Charly CLAIRMONTAltic - http://altic.orgcharly.clairmont@altic.org@egwada