Mi informacion de contacto
Correo[email protected]
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Hive admite múltiples tipos de datos, divididos en dos categorías: tipos de datos primitivos y tipos de datos complejos. Los siguientes son los tipos de datos admitidos por Hive:
1. Tipo entero:
pequeñoint: Entero con signo de 1 byte
pequeñoint: Entero con signo de 2 bytes
En t: Entero con signo de 4 bytes
Empezando: Entero con signo de 8 bytes
flotar: Número de coma flotante de precisión simple de 4 bytes
doble: Número de coma flotante de doble precisión de 8 bytes
decimal: Se pueden especificar el tipo de número, la precisión y la escala de alta precisión, como decimal(10,2)
Byte: Una de las unidades de almacenamiento más básicas en las computadoras, 1 byte ocupa 8 bits, rango de datos: rango negativo: -128 a -1, rango positivo: 0 a 127
2. Tipo de cadena:
cadena: cadena de longitud variable
varchar: Una cadena de longitud variable con un límite de longitud máxima, como varchar(255)
carbonizarse: Cadena de longitud fija, como char(10)
3.Tipo de fecha/hora:
marca de tiempo: Marca de tiempo que contiene fecha y hora, con precisión de nanosegundos
fecha: Contiene solo la parte de fecha, no la parte de hora
intervalo: Intervalo de tiempo, utilizado para representar la diferencia entre dos fechas u horas.
4.Tipo booleano:
booleano: Valor booleano, el valor es verdadero o falso
5. Tipo binario:
binario: matriz de bytes de longitud arbitraria
formación<T> : Una lista ordenada que contiene varios elementos del mismo tipo, como una matriz.<int>
mapa<K, V> : Una colección desordenada de pares clave-valor, donde la clave y el valor pueden ser cualquier tipo de datos, como mapa<string, int>
estructura<col1: type1, col2: type2, ...> : Registros que contienen varios campos; cada campo puede ser de un tipo de datos diferente, p.estructura<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>
- );
Los formatos de almacenamiento de Hive se dividen en dos categorías:
Un tipo de archivo de texto sin formato: archivo de texto, que no está comprimido y también es el formato de almacenamiento predeterminado de Hive.
Una categoría es el almacenamiento de archivos binarios:
archivo de secuencia: se comprimirá y los datos no se podrán cargar utilizando el método de carga.
orcfile: se comprimirá y los datos no se podrán cargar utilizando el método de carga.
parquet: se comprimirá y los datos no se podrán cargar utilizando el método de carga.
rcfile: puede comprimir y no cargar datos utilizando el método de carga. Es una configuración baja de orcfile.
Los formatos de almacenamiento de archivos de texto y archivos de secuencia se basan en el almacenamiento de filas; orc y parquet se basan en el almacenamiento de columnas, y rcfile es un almacenamiento mixto de filas y columnas.
Al crear una tabla, puede utilizar almacenado como parquet para especificar el formato de almacenamiento de la tabla, por ejemplo:
- 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;
Modifique el formato de almacenamiento predeterminado de Hive:
- <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