Hive - typy danych

W tym rozdziale omówiono różne typy danych w gałęzi Hive, które są zaangażowane w tworzenie tabeli. Wszystkie typy danych w gałęzi Hive są podzielone na cztery typy, podane w następujący sposób:

  • Typy kolumn
  • Literals
  • Wartości zerowe
  • Złożone typy

Typy kolumn

Typ kolumny jest używany jako typy danych kolumn w gałęzi. Są one następujące:

Typy całkowe

Dane typu całkowitego można określić za pomocą integralnych typów danych, INT. Gdy zakres danych przekracza zakres INT, musisz użyć BIGINT, a jeśli zakres danych jest mniejszy niż INT, używasz SMALLINT. TINYINT jest mniejszy niż SMALLINT.

Poniższa tabela przedstawia różne typy danych INT:

Rodzaj Przyrostek Przykład
TINYINT Y 10Y
SMALLINT S 10S
INT - 10
BIGINT L 10l

Typy strun

Typy danych typu łańcuchowego można określić za pomocą apostrofów ('') lub cudzysłowów (""). Zawiera dwa typy danych: VARCHAR i CHAR. Hive podąża za znakami ucieczki typu C.

Poniższa tabela przedstawia różne typy danych CHAR:

Typ danych Długość
VARCHAR 1 do 65355
ZWĘGLAĆ 255

Znak czasu

Obsługuje tradycyjny znacznik czasu UNIX z opcjonalną precyzją nanosekund. Obsługuje format java.sql.Timestamp „RRRR-MM-DD GG: MM: SS.fffffffff” i format „rrrr-mm-dd gg: mm: ss.ffffffffff”.

Daktyle

Wartości DAT są opisane w formacie rok / miesiąc / dzień w postaci {{RRRR-MM-DD}}.

Ułamki dziesiętne

Typ DECIMAL w gałęzi jest taki sam jak format Big Decimal języka Java. Służy do reprezentowania niezmiennej dowolnej precyzji. Składnia i przykład są następujące:

DECIMAL(precision, scale)
decimal(10,0)

Typy związków

Unia to zbiór heterogenicznych typów danych. Możesz utworzyć instancję za pomocącreate union. Składnia i przykład są następujące:

UNIONTYPE<int, double, array<string>, struct<a:int,b:string>>

{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}

Literały

Następujące literały są używane w gałęzi:

Typy zmiennoprzecinkowe

Typy zmiennoprzecinkowe to nic innego jak liczby z kropkami dziesiętnymi. Ogólnie ten typ danych składa się z typu DOUBLE.

Typ dziesiętny

Dane typu dziesiętnego to nic innego jak wartość zmiennoprzecinkowa z wyższym zakresem niż typ danych DOUBLE. Zakres typów dziesiętnych wynosi od około -10-308 do 10 308 .

Wartość zerowa

Brakujące wartości są reprezentowane przez specjalną wartość NULL.

Złożone typy

Złożone typy danych Hive są następujące:

Tablice

Tablice w Hive są używane w taki sam sposób, w jaki są używane w Javie.

Syntax: ARRAY<data_type>

Mapy

Mapy w Hive są podobne do map Java.

Syntax: MAP<primitive_type, data_type>

Struktury

Struktury w gałęzi Hive są podobne do używania złożonych danych z komentarzem.

Syntax: STRUCT<col_name : data_type [COMMENT col_comment], ...>