Hive er et datavarehussystem som brukes til å analysere strukturerte data. Den er bygget på toppen av Hadoop. Den ble utviklet av Facebook.
Hive gir funksjonaliteten til å lese, skrive og administrere store datasett som ligger i distribuert lagring. Den kjører SQL-lignende spørringer kalt HQL (Hive query language) som blir internt konvertert til MapReduce-jobber.
Ved å bruke Hive kan vi hoppe over kravet til den tradisjonelle tilnærmingen til å skrive komplekse MapReduce-programmer. Hive støtter Data Definition Language (DDL), Data Manipulation Language (DML) og brukerdefinerte funksjoner (UDF).
Funksjoner av Hive
Dette er følgende funksjoner i Hive:
int til streng java
- Hive er rask og skalerbar.
- Den gir SQL-lignende spørringer (dvs. HQL) som implisitt transformeres til MapReduce- eller Spark-jobber.
- Den er i stand til å analysere store datasett lagret i HDFS.
- Den tillater forskjellige lagringstyper som ren tekst, RCFile og HBase.
- Den bruker indeksering for å akselerere spørringer.
- Den kan operere på komprimerte data lagret i Hadoop-økosystemet.
- Den støtter brukerdefinerte funksjoner (UDFer) der brukeren kan tilby funksjonaliteten.
Hives begrensninger
- Hive er ikke i stand til å håndtere sanntidsdata.
- Den er ikke designet for online transaksjonsbehandling.
- Hive-søk inneholder høy latenstid.
Forskjeller mellom Hive og Pig
Hive | Gris |
---|---|
Hive brukes ofte av dataanalytikere. | Gris er ofte brukt av programmerere. |
Den følger SQL-lignende spørringer. | Den følger dataflytspråket. |
Den kan håndtere strukturerte data. | Den kan håndtere semistrukturerte data. |
Det fungerer på serversiden av HDFS-klyngen. | Det fungerer på klientsiden av HDFS-klyngen. |
Hive er tregere enn Pig. | Gris er relativt raskere enn Hive. |