Hvad er en bikube?

Apache Hive er et datavarehussystem designet oven på open source Hadoop platform og bruges til datasammenfatning, forespørgsel om store data, dataanalyse osv.

Hive blev udviklet af Facebook, og på et senere tidspunkt blev det overtaget af Apache Software Foundation, der videreudviklede det som en open source under navnet Apache Hive.

Definition:

Det er ikke en relationsdatabase, og det er derfor ikke egnet til online transaktionsbehandling og realtidsforespørgsler med opdateringer på rækkeniveau. Hive er designet til online analytisk behandling eller OLAP. Det giver også et forespørgselssprog kaldet HiveQL. Det er skalerbart, hurtigt og strækkeligt. Det konverterer forespørgsler, der ligner næsten SQL til MapReduce-job til let udførelse og behandling af en stor mængde data. Apache hive er en af ​​Hadoop-komponenterne, der normalt bruges af dataanalytikere, mens apache-svin også bruges til den samme opgave, men det bruges mere af forskere og programmerere. Apache-hive, der er et open source-datalagringssystem, bruges til at spørge og analysere enorme datasæt, der er gemt i Hadoop-lagring. Hive er bedst egnet til batchjob og ikke til online transaktionsbehandlingsarbejdstyper. Det understøtter heller ikke spørgsmål i realtid. Hive bruger SQL-lignende forespørgselssprog og bruges hovedsageligt til oprettelse af rapporter. Hive er generelt implementeret på serversiden, og det understøtter strukturerede data. Hive understøtter også integration med JDBC og BI-værktøjer.

Forstå Hive:

Nedenfor er de vigtigste komponenter i bikuben:

Meta Store:

Det oplagringssted, der gemmer metadataene kaldes hive-metabutikken. Metadataene består af de forskellige data om tabellerne som deres placering, skema, information om partitionerne, som hjælper med at overvåge forskellige distribuerede dataforløb i klyngen. Det holder også styr på dataene og gentager de data, der giver en sikkerhedskopi i tilfælde af nødsituationer som datatab. Metadatainformationen findes i relationelle databaser og ikke i Hadoop-filsystemet.

Chauffør:

Ved udførelse af Hive-forespørgslens sprogudtalelse modtager driveren erklæringen, og den kontrollerer den i hele eksekveringscyklus. Sammen med udførelsen af ​​erklæringen gemmer driveren også metadata genereret fra udførelsen. Det skaber også sessioner til at overvåge udviklingen og livscyklussen for forskellige henrettelser. Efter afslutningen af ​​den reducerende operation ved hjælp af MapReduce-job indsamler driveren alle data og resultater af forespørgslen

Compiler:

Det bruges til at oversætte Hive-forespørgselssprog til MapReduce-input. Det påberåber sig en metode, der udfører de trin og opgaver, der er nødvendige for at læse HiveQL-output efter behov af MapReduce.

Optimizer:

Optimeringsprogrammets hovedopgave er at forbedre effektiviteten og skalerbarheden ved at skabe en opgave, mens dataene transformeres inden reduktionsoperationen. Det udfører også transformationer som aggregering, rørledningskonvertering ved en enkelt sammenføjning til flere sammenføjninger.

Executor:

Efter kompilering og optimeringstrin er eksekutorens hovedopgave at udføre opgaverne. Eksekutorens hovedopgave er at interagere med Hadoop job tracker til planlægning af opgaver klar til at køre.

UI, Thrift-server og CLI:

Thrift-server bruges af andre klienter til at interagere med Hive-motoren. Brugergrænsefladen og kommandolinjegrænsefladen hjælper med at indsende forespørgsler såvel som procesovervågning og instruktioner, så eksterne brugere kan interagere med bikuben.

Nedenfor er trinnene, der viser interaktion med bikup med Hadoop-rammen:

Udfører forespørgslen:

Forespørgslen sendes til driveren fra hive-grænseflader, såsom kommandolinje eller web-UI. En driver kan være en hvilken som helst databasedriver som JDB eller ODBC osv.

Henter planen:

Syntaks for kravet i forespørgslen eller forespørgselsplanen kan kontrolleres ved hjælp af en forespørgselskompilator, der passerer gennem forespørgslen og kaldes af driveren.

Henter metadata:

Metabutikken kan opholde sig i enhver database, og kompilatoren anmoder om at få adgang til metadataene.

Afsendelse af metadata:

På anmodning fra kompilatoren sender meta-butikken metadataene.

Sender planen:

Compileren sender planen til driveren ved verifikation af kravene, der sendes af compileren. Dette trin afslutter parsning og kompilering af en forespørgsel.

Gennemførelse af planen:

Udførelsesplanen sendes til eksekveringsmotoren af ​​føreren.

Udfører jobbet:

En udførelse af jobbet er et MapReduce-job, der kører i backend. Derefter følger det den normale konvention af Hadoop-rammerne - eksekveringsmotoren sender et job til job tracker, som ligger på navneknudepunktet, og navneknudepunktet tildeler på sin side jobbet til task tracker, der er i datanotat. MapReduce-jobbet udføres her.

Metadata ops:

Under udførelsen af ​​jobbet kan eksekveringsmotoren udføre metadatafunktioner med meta-butikken.

Henter resultatet:

Dataknudepunkterne efter afslutningen af ​​behandlingen overføres resultatet til eksekveringsmotoren.

Sender resultatet

Driveren modtager resultatet fra udførelsesmotoren.

Sendning af resultat:

Endelig modtager Hive-grænsefladerne resultatet fra driveren.

Ved udførelsen af ​​ovennævnte trin finder der således en komplet forespørgseludførelse sted i Hive sted.

Hvordan gør Hive det så let at arbejde?

Hive er et datalagerramme, der er bygget oven på Hadoop, som hjælper brugeren med at udføre dataanalyse, forespørgsel om data og datasammendrag på store mængder datasæt. HiveQL er en unik funktion, der ligner SQL-data gemt i databasen og udfører den omfattende analyse. Jeg var i stand til at læse data i en meget høj hastighed og skrive dataene i datalagerne, såvel som det kan administrere store datasæt fordelt på flere steder. Sammen med denne bikube giver også struktur til de data, der er gemt i databasen, og brugere er i stand til at oprette forbindelse til hive ved hjælp af kommandolinjeværktøj eller JDBC-driver.

Topfirmaer:

Store organisationer, der arbejder med big data, brugte bikive - som facebook, Amazon, Walmart og mange andre.

Hvad kan du gøre med Hive?

Der er mange funktionaliteter i bikuben som dataforespørgsel, datasammendragning og dataanalyse. Hive understøtter et forespørgselssprog kaldet HiveQL eller Hive Query Language. Spørgsmålene til Hive-forespørgsel oversættes til MapReduce-job, der behandles i Hadoop-klyngen. Bortset fra dette reducerer Hiveql også script, der kan føjes til forespørgslerne. På denne måde øger HiveQL skemadesignfleksibiliteten, som også understøtter deserialisering af data og dataserialisering.

Arbejde med Hive:

Nedenfor er nogle af de operationelle detaljer i Hive. Datafiler fra bikub klassificeres bredt i fire typer som angivet nedenfor:

  • Kolonnetyper
  • konstanter
  • Nulle værdier
  • Komplekse typer

1. Kolonnetyper:

Dette er kolonnedatatyperne i bikuben. Disse er klassificeret som nedenfor:

  • Integrerede typer: Heltal-data repræsenteres ved hjælp af integreret datatype. Symbolet er INT. Alle data, der overskrider den øvre grænse for INT, skal tildeles datatype af BIGINT. På samme måde skal alle data under den nedre grænse for INT tildeles SMALLINT. Der er en anden datatype kaldet TINYINT, som endnu er mindre end SMALLINT.
  • Stringtyper: Stringdatatype er repræsenteret i bikuben med et enkelt citat (') eller dobbeltcitater (“). Det kan være af to typer - VARCHAR eller CHAR.
  • Timestamp: Hive timestamp understøtter java.sql.Timestamp format “yyyy-mm-dd hh: mm: ss.ffffffffff” og format “YYYY-MM-DD HH: MM: SS.fffffffff”.
  • Dato: Dato er repræsenteret i bikuben i formatet ÅÅÅÅ-MM-DD, der repræsenterer år-måned-dag.
  • Decimaler : decimaler i en bikube repræsenteres i java store decimalformat og bruges til at repræsentere uforanderlig vilkårlig præcision. Det er repræsenteret i formatet Decimal (præcision, skala).
  • Unionstyper: Union bruges i bikuben til at oprette en samling af en heterogen datatype. Det kan oprettes ved at oprette en fagforening.

Nedenfor er et eksempel:

UNIONTYPE
(0:1)
(1:2.0)
(2:("three", "four"))
(3:("a":5, "b":"five"))
(2:("six", "seven"))
(3:("a":8, "b":"eight"))
(0:9)
(1:10.0)
UNIONTYPE
(0:1)
(1:2.0)
(2:("three", "four"))
(3:("a":5, "b":"five"))
(2:("six", "seven"))
(3:("a":8, "b":"eight"))
(0:9)
(1:10.0)

2. Bogstaver:

Der er få bogstaver, der bruges i bikuben. De er som nedenfor:

  • Flydende punkttype : De er repræsenteret som tal med et decimalpoint. Disse ligner temmelig dobbelt datatype.
  • Decimal type : Denne type data indeholder kun decimaltypedata, men med et højere interval af flydepunktværdi end dobbeltdatatypen. Intervallet for decimaltype er ca. -10 -308 til 10 308.

3. Nul værdi:

Den specielle værdi NULL repræsenterer manglende værdier i bikuben.

4. Komplekse typer:

Nedenfor er de forskellige komplekse typer, der findes i bikuben:

  • Arrays : Arrays er repræsenteret i en bikube i samme form som java. Syntaks er som ARRAY.
  • Kort : Kort er repræsenteret i bikuben i samme form som java. Syntaks er som MAP
  • .
  • Strukturer : Strukturer i bikuben er repræsenteret som komplekse data med kommentarer. Syntaks er som STRUCT.

Udover alt dette kan vi oprette databaser, tabeller, opdele dem og mange andre funktioner.

  • Databaser: Det er navneområdet, der indeholder en samling af tabeller. Nedenfor er syntaks for at oprette en database i en bikube.

CREATE DATABASE (IF NOT EXISTS) sampled;

Databaserne kan også slettes, hvis det ikke er nødvendigt mere. Nedenfor er syntaks for at slippe en database.

DROP DATABASE (IF EXISTS) sampled;

  • Tabeller: De kan også oprettes i bikuben for at gemme data. Nedenfor er syntaks for oprettelse af en tabel.

CREATE (TEMPORARY) (EXTERNAL) TABLE (IF NOT EXISTS) (db_name.) table_nam
((col_name data_type (COMMENT col_comment), …)) (COMMENT table_comment
(ROW FORMAT row_format) (STORED AS file_format)

En tabel kan også droppes, hvis det ikke er nødvendigt mere. Nedenfor er syntaks for at tabe en tabel.

DROP TABLE (IF EXISTS) table_name;

Fordele

Den største fordel ved Apache Hive er for dataspørgsmål, resumé og analyse. Hive er designet til bedre produktivitet hos udvikleren og leveres også med omkostningerne ved at øge latenstid og reducere effektiviteten. Apache Hive giver et bredt udvalg af brugerdefinerede funktioner, der kan forbindes med andre Hadoop-pakker som RHipe, Apache Mahout osv. Det hjælper udviklere i vid udstrækning, når de arbejder med kompleks analytisk behandling og flere dataformater. Det bruges hovedsageligt til datalagring, hvilket betyder et system, der bruges til rapportering og dataanalyse.

Det involverer rensning, transformering og modellering af data for at give nyttige oplysninger om forskellige forretningsaspekter, som kan hjælpe med at producere en fordel for en organisation. Dataanalyse en masse forskellige aspekter og tilgange, der omfatter forskellige teknikker med forskellige navne i forskellige forretningsmodeller, samfundsvidenskabelige domæner osv. Hive er meget brugervenlig og giver brugerne mulighed for samtidig at få adgang til dataene og øge responstiden. Sammenlignet med den anden type forespørgsler på enorme datasæt er bikubens responstid meget hurtigere end andre. Det er også meget fleksibelt med hensyn til ydeevne, når du tilføjer flere data og ved at øge antallet af noder i klyngen.

Hvorfor skal vi bruge Hive?

Sammen med dataanalyse giver hive en bred vifte af muligheder for at gemme dataene i HDFS. Hive understøtter forskellige filsystemer som en flad fil eller tekstfil, sekvensfil bestående af binære nøgleværdipar, RC-filer, der gemmer kolonne i en tabel i en kolonnedatabase. I dag er den fil, der er bedst egnet til Hive, kendt som ORC-filer eller Optimized Row Columnar-filer.

Hvorfor har vi brug for Hive?

I nutidens verden er Hadoop forbundet med de mest spredte teknologier, der bruges til big data-behandling. Den meget rige samling af værktøjer og teknologier, der bruges til dataanalyse og anden big data-behandling.

Hvem er det rigtige publikum til at lære Hive-teknologier?

De fleste mennesker, der har baggrund som udviklere, Hadoop-analyse, systemadministratorer, datalagring, SQL-professional og Hadoop-administration, kan mestre hive.

Hvordan denne teknologi vil hjælpe dig i karrierevækst?

Hive er en af ​​de hote færdigheder på markedet i dag, og det er et af de bedste værktøjer til dataanalyse i big data Hadoop-verdenen. Store virksomheder, der laver analyse over store datasæt, er altid på udkig efter mennesker med rettigheder til færdigheder, så de kan administrere og forespørge enorme mængder data. Hive er et af de bedste værktøjer, der findes på markedet for big datateknologier de seneste dage, der kan hjælpe en organisation rundt om i verden med deres dataanalyse.

Konklusion:

Bortset fra ovenstående funktioner har hive meget mere avancerede funktioner. Hive-kraften til at behandle et stort antal datasæt med stor nøjagtighed gør hive til det bedste værktøj, der bruges til analyse i big data-platformen. Desuden har det også et stort potentiale til at dukke op som et af de førende værktøjer til analyse af big data i de kommende dage på grund af periodisk forbedring og brugervenlighed for slutbrugeren.

Anbefalede artikler

Dette har været en guide til Hvad er Hive. Her diskuterede vi arbejdet, færdighederne, karrierevæksten, fordelene ved Hive og de bedste virksomheder, der implementerer denne teknologi. Du kan også gennemgå vores andre foreslåede artikler for at lære mere -

  1. Hive-kommandoer
  2. Spørgsmål om Hive-interview
  3. Hvad er Azure?
  4. Hvad er Big Data Technology?
  5. Hive Arkitektur | Definition
  6. Brug af ORDER BY-funktion i Hive

Kategori: