Introduktion till Hive Drop Table
Nyckelordet "DROP" hänvisar till radering. För att radera data kräver vi att data finns i bikupan.
I Hadoop har vi två funktioner:
- Datalagring
- Databehandling
För datalagring kommer HDFS (Hadoop Distribution File System) in i bilden. När vi säger att vi har data i bikuptabellen betyder det två saker:
- Data finns i HDFS
- Vi har en bikuptabell skapad över den HDFS-filen och vi laddar den HDFS-filens data i bikuptabellen.
Så i princip, för att hive drop tabellen ska ha data, är datafilen en förutsättning. I den här artikeln ska vi se hur man tappar tabeller i bikupan, vad som händer när tabellen tappas och allt som är relaterat till släpptabellen i bikupan.
Typer av dropptabell i bikupa
I bikupan finns det två typer av tabeller:
- Intern tabell eller hanterad tabell
- Extern tabell eller okontrollerad tabell
Hanterad tabell / interntabell:
- I Hive är ” user / hive / warehouse ” standardkatalogen. Interna tabeller lagras som standard i den här katalogen. Vi behöver inte ange platsen manuellt när vi skapar tabellen.
- "Drop tabell" -kommandot raderar data permanent.
- Hive hanterar all säkerhet för hanterade tabeller.
Jag har en tabell som redan finns i katalogen "användare / hive / lager" som heter "koder".
För att kontrollera om den befintliga tabellen hanteras eller inte hanteras, kan vi använda kommandot nedan:
Kommandosyntax:
Beskriv formaterat tabellnamn;
Produktion:
Låt oss se, uppgifterna i tabellen "koder".
Först med hjälp av hive-kommando-
För det andra använder du Hue (Hadoop User Experience a Web UI)
Radera kommando: Släpp tabell tabellnamn;
Produktion:
Om jag nu vill välja data från "koder" kommer det att ge mig ett fel eftersom tabellen raderas.
Kan inte heller se denna tabell i standardkatalogen som är
”User / kupan / lager”
Observera här,
O hanterad tabell / Extern tabell:
- Externa tabeller, vi måste ange sökvägen där vi behöver lagra den tabellen med hjälp av nyckelordet "plats" i skapa tabellkommando.
Till exempel:
SKAPA EXTERNA TABELL stg_s2_json.products
(produkt ingen sträng, produktnamnsträng, beskrivningssträng, aktiv sträng, skapad datumsträng, uppdaterad datumsträng) radformat avgränsade fält avslutade med ', '
LOCATION '/user/data/hive/stg_s2_json.db/products';
- Hive raderar bara metadata. Uppgifterna är permanenta.
- Dessa tabeller kan användas av alla som har tillgång till HDFS, så de måste hantera säkerhet på mappnivå.
För att förstå tappningen av det externa bordet kommer vi att använda tabellen "produkter".
Låt oss kontrollera om tabellen är intern eller extern. Återigen, "beskriv formaterat tabellnamn" -kommando.
Observera “limit 10” i det valda kommandot. Tabellprodukter innehåller nedanstående data:
För att kontrollera det i nyans ser det ut så här:
Låt oss se vad som händer när vi tappar tabellen:
Syntax:
Drop table table_name;
Produktion:
Om det försöker hämta tabellens data kastar det ett fel.
Först med hjälp av kommandot “select” på terminalen kommer det att kasta mig ett fel vilket innebär att metadata för den externa tabellen raderas.
Observera fel här:
För det andra, när du kontrollerar datatillståndet, finns filen "products.json" fortfarande i HDFS vilket innebär att data är permanent.
Slutsats
Jag kommer att göra det enkelt och ge dig nyckelpunkter för båda typerna av bord. Du bestämmer vilken typ som passar dina krav.
Internt tabell |
Extern tabell |
Kallas också "Managed Table" | Kallas också ”Unmanaged table” |
Du behöver inte ange plats, Hive standardkatalog hanterar dessa data | Behöver ange plats |
Raderar tabellens metadata liksom (Data är tillfälliga) | Hive lämnar uppgifterna orörda (data är permanent) |
Bikupan själv styr bordets säkerhet | Behöver hantera säkerhet på mappnivå |
Rekommenderade artiklar
Detta är en guide till Hive Drop Table. Här diskuterar vi introduktionen av Hive Drop Table, typer av Drop Table i Hive längs Syntax. Du kan också gå igenom våra andra föreslagna artiklar för att lära dig mer -
- Vad är en bikupa?
- Hive Arkitektur
- Hive-kommandon
- Vad är Oracle-databasen
- Hive Order by
- Hiveinstallation