külső táblázat a kaptárban

Bevezetés A Kaptár külső táblájába

a külső táblázat olyan táblázat, amely leírja a külső fájlok sémáját vagy metaadatait. Alapvetően kétféle tábla létezik A HIVE által kezelt vagy a belső és a külső táblákban. A külső tábla meghatározásának elsődleges célja a kaptáron kívül tárolt adatok lekérdezéseinek elérése és végrehajtása. Ezeket az adatfájlokat más eszközök, például Pig, Azure storage Volumes (ASV) vagy bármely távoli HDFS-hely tárolhatja. A Hive feltételezi, hogy nem rendelkezik a külső táblák adatainak tulajdonjogával, ezért nem igényli az adatok kezelését, mint a felügyelt vagy a belső táblákban. Ezenkívül a külső táblák esetében az adatok nem törlődnek a táblázat eldobásakor.

külső táblák létrehozása A Hive-ban

alapértelmezés szerint A Hive table könyvtár az adatbázis könyvtár alatt jön létre. A kivétel az alapértelmezett adatbázis. A helyfelhasználó / kaptár / raktár nem rendelkezik könyvtárral, így az alapértelmezett adatbázis-táblák könyvtárát közvetlenül ezen a helyen hozzák létre. Javasoljuk külső táblák létrehozását, ha nem akarjuk használni az alapértelmezett helyet.

indítsa el az ingyenes adattudományi tanfolyamot

Hadoop, Data Science, Statistics & egyéb

általában külső táblázatot használnak, ha az adatok a kaptáron kívül találhatók.

hozzunk létre egy külső táblát a “külső” kulcsszó használatával az alábbi paranccsal.

CREATE EXTERNAL TABLE if not exists students
(
Roll_id Int,
Class Int,
Name String,
Rank Int)
Row format delimited fields terminated by ‘,’
Location ‘/data/students_details’;

kimenet:

egy külső tábla is létrehozható egy meglévő tábla sémájának és adatainak másolásával, az alábbi paranccsal:

CREATE EXTERNAL TABLE if not exists students_v2 LIKE students
Location ‘/data/students_details’;

ha kihagyjuk a külső kulcsszót, akkor az új létrehozott táblázat külső lesz, ha az alaptábla külső. Hasonlóképpen, ha az alaptáblát a külső kulcsszóval kezelik, az új létrehozott tábla külső lesz.

a létrehozott táblázat típusának azonosításához a description formázott záradék használható. A részletes táblázat végén leírás a kimeneti tábla típusa vagy “kezelt táblázat”, vagy”külső táblázat” lesz.

a particionált táblák segítenek az adatok logikai alszegmensekre vagy partíciókra osztásában, hatékonyabbá téve a lekérdezés teljesítményét. A particionált tábla az alábbiak szerint hozható létre.

CREATE EXTERNAL TABLE if not exists students
( roll_id Int,
name String,
Rank Int)
partitioned by (class Int)
Row format delimited fields terminated by ‘\t’

kimenet:

előfordulhatnak olyan esetek, amikor egy külső tábla partíciója vagy szerkezete megváltozik, majd ezzel a paranccsal a metaadatok frissíthetők:

MSCK REPAIR TABLE external_table_name

1. Particionált külső tábla

nem particionált külső tábla létrehozásakor a LOCATION záradék szükséges. De egy particionált külső tábla esetében ez nem szükséges. Az ALTER TABLE utasítás szükséges a partíciók hozzáadásához a LOCATION záradékkal együtt.

ALTER TABLE students ADD PARTITION (class =10)
Location ‘here://master_server/data/log_messages/2012/01/02’;

A Hive v0.8-ból.0-tól kezdve több partíció is hozzáadható ugyanabban a lekérdezésben. A partíció helyét az alábbi lekérdezéssel is meg lehet változtatni anélkül, hogy az adatokat a régi helyről áthelyeznénk vagy törölnénk.

ALTER TABLE students_v2 partition( class = 10)
Set location ‘s2n://buckets/students_v2/10’;

partíció eldobásához a következő lekérdezést kell használni:

ALTER TABLE students DROP IF EXISTS PARTITION (class = 12);

Ez a parancs törli a kezelt vagy belső táblák partíciójának adatait és metaadatait. A külső táblák esetében azonban az adatok nem törlődnek.

2. Műveletek a külső táblán

az olyan műveletek, mint a SELECT, JOINS, ORDER BY, GROUP BY, CLUSTER BY és mások, külső táblákon kerülnek végrehajtásra. A külső táblák könnyen összekapcsolhatók más táblákkal az összetett adatmanipulációk elvégzéséhez. A Particionálás, a bucketing és az indexelés koncepcióit a külső táblákon is ugyanúgy alkalmazzák, mint a felügyelt vagy a belső táblákat. A Hive összes konfigurációs tulajdonsága külső táblákra is alkalmazható. Például a skip beállításával.fejléc.vonal. Count = 1, kihagyhatjuk a fejléc sort az adatfájlból.

minden fájlformátum, mint az ORC, AVRO, TEXTFILE, SEQUENCE FILE vagy parketta támogatott A Hive belső és külső tábláihoz. Táblázat létrehozásakor a helymeghatározási leképezés az oszlopba történő ADATOK beszúrására szolgál, és ez a sorrend megmarad.

adattípusok külső táblákban: a külső táblákban a gyűjtési adattípusok a primitív adattípusokkal együtt is támogatottak (például egész, karakterlánc, karakter). Meg kell adni a gyűjtemény adattípusok elemeinek határolóit (például tömb, struct, map).

mikor kell külső táblákat használni a Hive – ben?

általában a belső táblákat a Hive hozza létre. De bizonyos esetekben egy külső táblázat hasznos lehet. Ezek a következők:

  1. amikor az adatokat a kaptáron vagy a HDFS helyen kívül helyezik el, egy külső Táblázat létrehozása segít, mivel a többi eszköz, amely esetleg használja a táblázatot, nem zárolja ezeket a fájlokat.
  2. külső tábla hozható létre, ha az adatok nincsenek jelen egyetlen létező táblában sem (azaz a SELECT záradék használatával).
  3. a külső táblát létre kell hozni, ha nem akarjuk, hogy a Hive birtokolja az adatokat, vagy más adatvezérlőkkel rendelkezzen.
  4. a külső tábla megakadályozza az adatok véletlen elvesztését is, mivel egy külső tábla eldobásakor az alapadatok nem törlődnek. Ez biztonsági funkcióként működik a kaptárban. Ez az oka annak, hogy a csonkolás nem fog működni a külső tábláknál sem.

jellemzők

A Hive-ben vannak bizonyos funkciók, amelyek csak felügyelt vagy külső táblákhoz érhetők el. Ezek a következők:

  • az olyan parancsok, mint az ARCHIVE/UNARCHIVE/TRUNCATE/CONCATENATE / MERGE, csak belső tábláknál működnek.
  • az ACID csak felügyelt vagy belső táblákhoz működik.a
  • DROP záradék csak a külső táblák metaadatait törli. A belső táblák mögöttes adatait azonban törli.
  • a Lekérdezési eredmények gyorsítótárazása csak felügyelt táblák esetén lehetséges.
  • A

  • hivatkozási korlátozás csak külső táblákon engedélyezett.
  • a materializált nézetek egyes funkciói csak a felügyelt tábláknál működnek.

következtetés

ebben az oktatóanyagban láttuk, mikor és hogyan kell használni a külső táblákat a Hive-ben. Ennek az oktatóanyagnak a legfontosabb eleme, hogy a kaptáron kívüli kezelt és elemzett adatok kivételével hátteret hozzon létre a táblákon.

ajánlott cikkek

Ez egy útmutató A Hive külső táblázatához. Itt tárgyaljuk a külső táblák bevezetését a kaptárban, valamint a funkciókat és a lekérdezéseket. Azt is megy át a többi kapcsolódó cikkeket, hogy többet –

  1. particionálás Hive
  2. Térkép Csatlakozás Hive
  3. Hive adattípusok
  4. Hive telepítés
  5. útmutató A Hive klaszter
0 részvények

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.