logo

Cos'è HIVE

Hive è un sistema di data warehouse utilizzato per analizzare dati strutturati. È costruito sopra Hadoop. È stato sviluppato da Facebook.

Hive fornisce la funzionalità di lettura, scrittura e gestione di set di dati di grandi dimensioni che risiedono nello spazio di archiviazione distribuito. Esegue query di tipo SQL chiamate HQL (linguaggio di query Hive) che vengono convertite internamente in lavori MapReduce.

Java che ordina un arraylist

Usando Hive, possiamo saltare i requisiti dell'approccio tradizionale di scrivere programmi MapReduce complessi. Hive supporta Data Definition Language (DDL), Data Manipulation Language (DML) e Funzioni definite dall'utente (UDF).

Caratteristiche di Hive

Queste sono le seguenti funzionalità di Hive:

  • Hive è veloce e scalabile.
  • Fornisce query di tipo SQL (ad esempio HQL) che vengono implicitamente trasformate in lavori MapReduce o Spark.
  • È in grado di analizzare set di dati di grandi dimensioni archiviati in HDFS.
  • Consente diversi tipi di archiviazione come testo semplice, RCFile e HBase.
  • Utilizza l'indicizzazione per accelerare le query.
  • Può operare su dati compressi archiviati nell'ecosistema Hadoop.
  • Supporta le funzioni definite dall'utente (UDF) in cui l'utente può fornire le proprie funzionalità.

Limitazioni di Hive

  • Hive non è in grado di gestire dati in tempo reale.
  • Non è progettato per l'elaborazione delle transazioni online.
  • Le query Hive contengono una latenza elevata.

Differenze tra alveare e maiale

Alveare Maiale
Hive è comunemente utilizzato dagli analisti di dati. Pig è comunemente usato dai programmatori.
Segue query di tipo SQL. Segue il linguaggio del flusso di dati.
Può gestire dati strutturati. Può gestire dati semistrutturati.
Funziona sul lato server del cluster HDFS. Funziona sul lato client del cluster HDFS.
L'alveare è più lento del maiale. Il maiale è relativamente più veloce di Hive.