2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Hive prend en charge plusieurs types de données, divisés en deux catégories : les types de données primitifs et les types de données complexes. Voici les types de données pris en charge par Hive :
1. Type entier :
minuscule: Entier signé de 1 octet
petitint: Entier signé sur 2 octets
int: Entier signé de 4 octets
grandint: Entier signé de 8 octets
flotter: Nombre à virgule flottante simple précision sur 4 octets
double: Nombre à virgule flottante double précision sur 8 octets
décimal: Le type de nombre de haute précision, la précision et l'échelle peuvent être spécifiés, tels que décimal (10,2)
Octet : L'une des unités de stockage les plus élémentaires des ordinateurs, 1 octet occupe 8 bits, plage de données : plage négative : -128 à -1, plage positive : 0 à 127
2. Type de chaîne :
chaîne: chaîne de longueur variable
varchar: Une chaîne de longueur variable avec une limite de longueur maximale, telle que varchar(255)
carboniser: Chaîne de longueur fixe, telle que char(10)
3.Type de date/heure :
horodatage: Horodatage contenant la date et l'heure, précis à la nanoseconde près
date: Contient uniquement la partie date, pas la partie heure
intervalle: Intervalle de temps, utilisé pour représenter la différence entre deux dates ou heures
4.Type booléen :
booléen: Valeur booléenne, la valeur est vraie ou fausse
5. Type binaire :
binaire: tableau d'octets de longueur arbitraire
tableau<T> : Une liste ordonnée contenant plusieurs éléments du même type, tel qu'un tableau<int>
carte<K, V> : Une collection non ordonnée de paires clé-valeur, où la clé et la valeur peuvent être n'importe quel type de données, tel qu'une carte<string, int>
structure<col1: type1, col2: type2, ...> : Enregistrements contenant plusieurs champs, chaque champ peut être d'un type de données différent, par ex.structure<name: string, age: int>
- CREATE TABLE example_table (
- tinyint_col tinyint,
- smallint_col smallint,
- int_col int,
- bigint_col bigint,
- float_col float,
- double_col double,
- decimal_col decimal(10, 2),
- string_col string,
- varchar_col varchar(255),
- char_col char(10),
- timestamp_col timestamp,
- date_col date,
- boolean_col boolean,
- binary_col binary,
- array_col array<int>,
- map_col map<string, int>,
- struct_col struct<name: string, age: int>,
- union_col uniontype<int, string>
- );
Les formats de stockage de Hive sont divisés en deux catégories :
Un type de fichier texte brut : fichier texte, qui n'est pas compressé et est également le format de stockage par défaut de Hive.
Une catégorie est le stockage de fichiers binaires :
fichier séquence : sera compressé et les données ne pourront pas être chargées à l’aide de la méthode de chargement.
fichier orc : sera compressé et les données ne pourront pas être chargées à l'aide de la méthode de chargement.
parquet : sera compressé et les données ne pourront pas être chargées à l'aide de la méthode de chargement.
rcfile : Il peut compresser et ne peut pas charger les données en utilisant la méthode de chargement. Il s'agit d'une configuration basse d'orcfile.
Les formats de stockage du fichier texte et du fichier séquence sont basés sur le stockage en lignes ; orc et parquet sont basés sur le stockage en colonnes, et rcfile est un stockage mixte en lignes et en colonnes.
Lors de la création d'un tableau, vous pouvez utiliser stocké comme parquet pour préciser le format de stockage du tableau, par exemple :
- create table if not exists stocks_parquet (
- track_time string,
- url string,
- session_id string,
- referer string,
- ip string,
- end_user_id string,
- city_id string
- )
- stored as parquet;
Modifiez le format de stockage par défaut de la ruche :
- <property>
- <name>hive.default.fileformat</name>
- <value>TextFile</value>
- <description>
- Expects one of [textfile, sequencefile, rcfile, orc].
- Default file format for CREATE TABLE statement. Users can explicitly override it by CREATE TABLE ... STORED AS [FORMAT]
- </description>
- </property>
- 也可以使用set方式修改:
- set hive.default.fileformat=TextFile