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], ...>