Tous les produits
Search
Centre de documentation

Hologres:Data types overview

Dernière mise à jour :Sep 06, 2026

Hologres est nativement compatible avec une large gamme de types de données PostgreSQL et introduit de nouveaux types tels que SPARSEVECTOR. Cette rubrique présente les types de données natifs, les types de tableaux unidimensionnels ainsi que les correspondances de types avec les systèmes en amont, notamment MaxCompute, Flink, MySQL, DLF, Hive, Hudi, Delta Lake, Paimon et Iceberg.

Types de données

Le tableau suivant répertorie l'ensemble des types de données pris en charge par Hologres. La plupart sont compatibles avec PostgreSQL, tandis que RoaringBitmap, RoaringBitmap64 et SPARSEVECTOR sont spécifiques à Hologres. Les noms de types et leurs alias ne sont pas sensibles à la casse dans les instructions SQL, mais sont conventionnellement affichés en majuscules.

Name

Aliases

Storage size

Description

Value range

Example

INTEGER

INT, INT4

4 bytes

Common integer.

-2,147,483,648 to +2 147 483 647

2147483647

BIGINT

INT8

8 bytes

Large-range integer.

-9,223,372,036,854,775,808 to +9 223 372 036 854 775 807

9223372036854775807

SMALLINT

—

2 bytes

Small-range integer.

-32,768 to +32 767

32767

REAL

FLOAT4

4 bytes

Variable-precision floating point, inexact. In the PostgreSQL ecosystem, FLOAT without a specified precision defaults to DOUBLE PRECISION (FLOAT8).

6 decimal digits of precision

123.123

DOUBLE PRECISION

FLOAT8

8 bytes

Variable-precision floating point, inexact.

15 decimal digits of precision

123.123456789123

DECIMAL

NUMERIC

Variable

Exact numeric. Specify both PRECISION (total digits, 0–38) and SCALE (digits after the decimal point, 0–PRECISION). From V4.2, high-precision mode supports up to 76 digits: PRECISION (0–76) and SCALE (0–PRECISION).

Up to 38 digits before and 38 digits after the decimal point. From V4.2, supports up to 76 digits with high precision.

DECIMAL(38, 10)

BOOLEAN

BOOL

1 byte

Boolean.

True / False

True

TEXT

—

Variable

Variable-length string. Prefer TEXT over VARCHAR(n) or CHAR(n) for maximum flexibility.

None

abcdefg

CHAR(n)

—

Fixed, up to n characters

Fixed-length character string. Storage size does not exceed 1 GB.

Up to n characters

abcd

VARCHAR(n)

—

Variable, up to n characters

Variable-length string with a character limit. Storage size does not exceed 1 GB.

Up to n characters

abcdefg

TIMESTAMP WITH TIME ZONE

TIMESTAMPTZ

8 bytes

Timestamp with time zone, stored with millisecond precision. If no time zone offset is specified, the system automatically adds the default time zone to the data.

4713 BC to 294276 AD

2004-10-19 10:23:54+02

TIMESTAMP

—

8 bytes

Timestamp without time zone, stored with microsecond precision.

4713 BC to 5874897 AD

2020-01-01 01:01:01.123456

DATE

—

4 bytes

Date, with day granularity.

4713 BC to 5874897 AD

2004-10-19

TIME

—

8 bytes

Time of day without time zone, with microsecond precision.

00:00:00 to 24:00:00

12:00:00

TIMETZ

—

12 bytes

Time of day with time zone, with microsecond precision.

00:00:00 to 24:00:00

12:00:00+08

INTERVAL

—

16 bytes

Time interval.

-178,000,000 years to 178 000 000 years

interval '1 year'

JSON

—

Variable

JSON type. For details, see .

None

None

JSONB

—

Variable

Binary JSON type. For details, see .

None

None

BYTEA

—

Variable

Variable-length binary string. Storage size does not exceed 1 GB. For details, see Binary Data Types.

None

None

BIT(n)

—

n bits

Fixed-length bit string. Storage size does not exceed 1 GB.

None

None

VARBIT(n)

—

Variable, up to n bits

Variable-length bit string. Storage size does not exceed 1 GB.

None

None

INET

—

Variable

IPv4 or IPv6 host address. For details, see Network address types.

None

192.168.100.128/25

MONEY

—

8 bytes

Currency amount with fixed fractional precision. For details, see Currency types.

-92,233,720,368,547,758,08 to +92 233 720 368 547 758,07

12.34 USD

OID

—

4 bytes

Numeric object identifier.

None

1024

UUID

—

16 bytes

Universally unique identifier (UUID), fixed-length 128-bit value. uuid-ossp algorithms are not currently supported.

00000000-0000-0000-0000-000000000000 to ffffffff-ffff-ffff-ffff-ffffffffffff

a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11

SERIAL

—

Variable

Auto-increment sequence. For details, see Séquence d'incrémentation automatique.

None

None

RoaringBitmap

—

Variable

Efficient INT array that supports constant array bitmap operations. For details, see Fonctions RoaringBitmap.

None

None

RoaringBitmap64

—

Variable

Efficient BIGINT array that supports constant array bitmap operations. For details, see Fonctions RoaringBitmap.

None

None

SPARSEVECTOR

—

Variable. Depends on the number of non-zero elements.

Sparse vector type. Stores only the non-zero elements and their index positions, which suits high-dimensional sparse vector workloads such as text retrieval and recommendation systems.

A set of index-value pairs. Index positions are integers that start at 1 and must be smaller than the term_id_limit value of the sparse vector index; values are floating-point numbers.

'{1:0.1, 50:0.8, 200:0.3}'

GEOMETRY and GEOGRAPHY

—

Variable. For details, see Analyse géographique basée sur PostGIS.

PostGIS is a spatial extension of PostgreSQL that provides spatial objects, spatial indexes, spatial operation functions, and spatial operators. Performance is improved from V1.3.

None

None

Disponibilité selon la version : Les types non disponibles dans toutes les versions ont été ajoutés lors de versions spécifiques :

Type

Ajouté dans

DATE, TIMESTAMP, CHAR(n), VARCHAR(n), SERIAL

Hologres V0.8

SMALLINT, JSON, JSONB, BYTEA, BIT(n), VARBIT(n), TIMETZ, TIME, INET, MONEY, OID, UUID

Hologres V0.9

RoaringBitmap

Hologres V0.10

RoaringBitmap64

Hologres V3.1

SPARSEVECTOR

Hologres V5.0

Tous les autres types

Toutes les versions de Hologres

Exemples

Les exemples suivants illustrent des opérations courantes de DDL et de DML pour certains types sélectionnés.

Utilisation et exemples de DECIMAL256

Limites d'utilisation :

  • DECIMAL256 est pris en charge uniquement à partir de Hologres V4.2.

  • DECIMAL256 ne peut pas être utilisé comme clé de distribution, clé de clustering, clé de partition, clé de segment, index bitmap ou colonne avec encodage de dictionnaire.

  • Pris en charge dans les instructions CREATE TABLE et CREATE DYNAMIC TABLE (actualisation complète et incrémentielle).

  • Pris en charge dans le stockage orienté ligne, orienté colonne et hybride ligne-colonne.

  • Fonctions prises en charge : opérations arithmétiques, opérations de comparaison, SUM, AVG, MIN, MAX, CAST et TRY_CAST.

Exemple :

-- Create a table with DECIMAL256 columns
CREATE TABLE financial_transactions (
    id INT PRIMARY KEY,
    -- Standard DECIMAL(38,19): supports up to 38 digits
    amount_standard DECIMAL(38, 19),
    -- DECIMAL256(76,38): supports up to 76 digits
    amount_high_precision DECIMAL(76, 38),
    description TEXT
);
-- Insert high-precision values
INSERT INTO financial_transactions VALUES
(1,
 1234567890123456789.1234567890123456789,  -- 38-digit precision
 '12345678901234567890123456789012345678.12345678901234567890123456789012345678',  -- 76-digit precision
 'High-precision transaction amount'
);

-- Query the data
SELECT * FROM financial_transactions;
 id |             amount_standard             |                             amount_high_precision                             |           description
----+-----------------------------------------+-------------------------------------------------------------------------------+----------------------------------
  1 | 1234567890123456789.1234567890123456789 | 12345678901234567890123456789012345678.12345678901234567890123456789012345678 | High-precision transaction amount
(1 row)

Exemples de types temporels

TIMESTAMPTZ, DATE et DECIMAL :

CREATE TABLE test_data_type (
  tswtz_column TIMESTAMP WITH TIME ZONE,
  date_column DATE,
  decimal_column DECIMAL(38, 10),
  char_column CHAR(20),
  varchar_column VARCHAR(225)
);

INSERT INTO test_data_type
VALUES ('2004-10-19 08:08:08', '2004-10-19', 123.456, 'abcd', 'a');

SELECT * FROM test_data_type;
      tswtz_column      | date_column | decimal_column |     char_column      | varchar_column
------------------------+-------------+----------------+----------------------+----------------
 2004-10-19 08:08:08+08 | 2004-10-19  | 123.4560000000 | abcd                 | a
(1 row)

BIT, VARBIT et BYTEA :

-- BIT and VARBIT
CREATE TABLE test (a BIT(3), b BIT VARYING(5));
INSERT INTO test VALUES (B'101', B'00');
INSERT INTO test VALUES (B'10', B'101');

ERROR:  bit string length 2 does not match type bit(3)

INSERT INTO test VALUES (B'10'::bit(3), B'101');
SELECT * FROM test;

  a  |  b
-----+-----
 101 | 00
 100 | 101

-- BYTEA (escape output format)
SET bytea_output = 'escape';

SELECT 'abc \153\154\155 \052\251\124'::bytea;
     bytea
----------------
 abc klm *\251T

RESET bytea_output;  -- 'hex' is the default

SELECT 'abc \153\154\155 \052\251\124'::bytea;
          bytea
--------------------------
 \x616263206b6c6d202aa954
(1 row)

Types de tableaux

Hologres prend uniquement en charge les tableaux unidimensionnels. Le tableau suivant présente les types de tableaux pris en charge, ainsi que leur syntaxe de déclaration et d'utilisation.

Type

Description

Déclaration en DDL

Insertion avec le mot-clé ARRAY

Insertion avec la syntaxe {}

Interrogation d'un élément unique

Interrogation d'une plage

int4[]

Tableau d'entiers unidimensionnel

col int4[]

ARRAY[1, 2, 3, 4]

'{1, 2, 3, 4}'

col[3]

col[1:2]

int8[]

Tableau bigint unidimensionnel

col int8[]

ARRAY[1, 2, 3, 4]

'{1, 2, 3, 4}'

col[3]

col[1:2]

float4[]

Tableau real unidimensionnel

col float4[]

ARRAY[1.0, 2.0]

'{1.0, 2.0}'

col[1]

col[1:2]

float8[]

Tableau double precision unidimensionnel

col float8[]

ARRAY[1.0, 2.0, 3.0]

'{1.0, 2.0, 3.0}'

col[1]

col[1:2]

boolean[]

Tableau boolean unidimensionnel

col boolean[]

ARRAY[true, true, false]

'{true, true, false}'

col[1]

col[1:2]

text[]

Tableau text unidimensionnel

col text[]

ARRAY['foo1', 'foo2', 'foo3']

'{"foo1", "foo2", "foo3"}'

col[1]

col[1:2]

Exemple complet :

-- Declare
CREATE TABLE array_example(
  int4_array    int4[],
  int8_array    int8[],
  float4_array  float4[],
  float8_array  float8[],
  boolean_array boolean[],
  text_array    text[]
);

-- Insert using the ARRAY keyword
INSERT INTO array_example(int4_array, int8_array, float4_array, float8_array, boolean_array, text_array)
VALUES (
  ARRAY[1, 2, 3, 4],
  ARRAY[1, 2, 3, 4],
  ARRAY[1.0, 2.0],
  ARRAY[1.0, 2.0, 3.0],
  ARRAY[true, true, false],
  ARRAY['foo1', 'foo2', 'foo3']
);

-- Insert using the {} syntax
INSERT INTO array_example(int4_array, int8_array, float4_array, float8_array, boolean_array, text_array)
VALUES (
  '{1, 2, 3, 4}',
  '{1, 2, 3, 4}',
  '{1.0, 2.0}',
  '{1.0, 2.0, 3.0}',
  '{true, true, false}',
  '{"foo1", "foo2", "foo3"}'
);

-- Query a single element (1-based index)
SELECT int4_array[3] FROM array_example;

-- Query a range
SELECT int4_array[1:2] FROM array_example;

Correspondance des types de données entre MaxCompute et Hologres

Le tableau suivant présente la correspondance des types MaxCompute vers les types Hologres lors de la création d'une table externe MaxCompute.

Si une table MaxCompute contient des champs dont le type n'est pas pris en charge, vous pouvez toujours interroger les champs pris en charge, à condition que la requête n'accède pas aux champs non pris en charge.

Type MaxCompute

Type Hologres

Disponible depuis

Notes

JSON

JSONB

Hologres V4.1

—

STRING, VARCHAR

TEXT

Toutes les versions

—

BIGINT

INT8

Toutes les versions

—

INT

INT4, INT

Toutes les versions

—

FLOAT

FLOAT4, REAL

Toutes les versions

—

DOUBLE

FLOAT, FLOAT8

Toutes les versions

—

BOOLEAN

BOOL

Toutes les versions

—

DATETIME

TIMESTAMP WITH TIME ZONE

Toutes les versions

Le type DATETIME de MaxCompute utilise l'heure normale de Chine (UTC+8). Plage : du 1er janvier 0000 au 31 décembre 9999, avec une précision à la milliseconde.

DECIMAL

NUMERIC

Toutes les versions

La précision par défaut est (38,18) lorsqu'elle n'est pas spécifiée. Lorsque vous utilisez IMPORT FOREIGN SCHEMA pour créer une table, le système convertit automatiquement la précision.

TIMESTAMP

TIMESTAMP WITH TIME ZONE

Hologres V0.8

Plage TIMESTAMP de MaxCompute : 0000-01-01 00:00:00.000000000 à 9999-12-31 23:59:59.999999999 (précision à la nanoseconde). Le type TIMESTAMPTZ de Hologres utilise une précision à la milliseconde ; la précision est convertie automatiquement lors de la lecture.

CHAR(n)

CHAR(n) (par défaut) ; TEXT (facultatif)

Hologres V0.8

Type de caractère de longueur fixe ; n représente la longueur, avec un maximum de 255. Rempli d'espaces si la longueur est inférieure à n. Pour mapper vers TEXT, définissez hg_enable_convert_type_for_foreign_table = true et modifiez le type de champ en TEXT lors de la création de la table.

VARCHAR(n)

VARCHAR(n) (par défaut) ; TEXT (facultatif)

Hologres V0.8

Type de caractère de longueur variable ; n varie de 1 à 65 535. Pour mapper vers TEXT, définissez hg_enable_convert_type_for_foreign_table = true et modifiez le type de champ en TEXT lors de la création de la table.

DATE

DATE

Hologres V0.8

—

SMALLINT

INT2 (par défaut) ; INT8 (facultatif)

Toutes les versions (INT4 dans la V0.8, INT2 dans la V0.9)

Pour mapper vers INT8, définissez hg_enable_convert_type_for_foreign_table = true et modifiez le type de champ en INT8 lors de la création de la table.

TINYINT

INT2 (par défaut) ; INT8 (facultatif)

Toutes les versions (INT4 dans la V0.8, INT2 dans la V0.9)

Pour mapper vers INT8, définissez hg_enable_convert_type_for_foreign_table = true et modifiez le type de champ en INT8 lors de la création de la table.

CHAR (sans longueur)

Non pris en charge

Non pris en charge

—

ARRAY\<INT\>

INT4[]

Hologres V0.8

—

ARRAY\<BIGINT\>

INT8[]

Hologres V0.8

—

ARRAY\<FLOAT\>

FLOAT4[]

Hologres V0.8

—

ARRAY\<DOUBLE\>

FLOAT8[]

Hologres V0.8

—

ARRAY\<BOOLEAN\>

BOOLEAN[]

Hologres V0.8

—

ARRAY\<STRING\>

TEXT[]

Hologres V0.8

—

BINARY

BYTEA

Hologres V0.9

—

ARRAY\<TINYINT\>

Non pris en charge

Non pris en charge

—

ARRAY\<SMALLINT\>

Non pris en charge

Non pris en charge

—

Correspondance des types de données entre Blink/Flink et Hologres

Le tableau suivant présente la correspondance entre les types Flink et les types Hologres.

Les tables source Binlog ne prennent en charge qu'un sous-ensemble de types de données. Pour plus d'informations, consultez Consommer le Binlog Hologres en temps réel avec Flink/Blink .

Type Flink

Type Hologres

Version Hologres prise en charge

Version Flink prise en charge

INT

INT4, INT

Toutes les versions

Toutes les versions

BIGINT

INT8

Toutes les versions

Toutes les versions

VARCHAR

TEXT

Toutes les versions

Toutes les versions

DOUBLE

FLOAT, FLOAT8, DOUBLE PRECISION

Toutes les versions

Toutes les versions

BOOLEAN

BOOL

Toutes les versions

Toutes les versions

DECIMAL

NUMERIC

Toutes les versions

Toutes les versions

DATE

DATE

Hologres V0.8

Toutes les versions

TIMESTAMP

TIMESTAMP WITH TIME ZONE, TIMESTAMPTZ

Toutes les versions

Toutes les versions

FLOAT

FLOAT4, REAL

Toutes les versions

Toutes les versions

TINYINT

SMALLINT

Toutes les versions

Sink : VVR-4.0.13-Flink-1.13 et versions ultérieures. Le mode RPC n'est pas pris en charge. Source : VVR-6.0.3-Flink-1.15 et versions ultérieures. Le mode RPC n'est pas pris en charge. Dimension : VVR-4.0.13-Flink-1.13 et versions ultérieures. Le mode RPC n'est pas pris en charge.

SMALLINT

SMALLINT

Toutes les versions

Sink : Toutes les versions. Source : VVR-6.0.3-Flink-1.15 et versions ultérieures. Le mode RPC n'est pas pris en charge. Dimension : Toutes les versions.

TIME

TIME et TIMETZ

Toutes les versions. À partir de Hologres V2.1.24, Fixed Plan prend en charge TIME et TIMETZ.

Sink : VVR-4.0.13-Flink-1.13 et versions ultérieures. Le mode RPC n'est pas pris en charge. Source : VVR-6.0.3-Flink-1.15 et versions ultérieures. Le mode RPC n'est pas pris en charge. Dimension : VVR-4.0.13-Flink-1.13 et versions ultérieures. Le mode RPC n'est pas pris en charge.

Remarque

Fixed Plan ne prend pas en charge le type TIME ; évitez ce type dans la mesure du possible. Pour plus de détails, consultez Fixed Plan.

VARCHAR

JSONB

Hologres V0.10

Sink : VVR-4.0.12-Flink-1.13 et versions ultérieures. Le mode RPC n'est pas pris en charge. Source : VVR-6.0.3-Flink-1.15 et versions ultérieures. Le mode RPC n'est pas pris en charge. Dimension : VVR-4.0.12-Flink-1.13 et versions ultérieures. Le mode RPC n'est pas pris en charge.

VARCHAR

JSON

Hologres V0.9

Sink : VVR-4.0.12-Flink-1.13 et versions ultérieures. Le mode RPC n'est pas pris en charge. Source : VVR-6.0.3-Flink-1.15 et versions ultérieures. Le mode RPC n'est pas pris en charge. Dimension : VVR-4.0.12-Flink-1.13 et versions ultérieures. Le mode RPC n'est pas pris en charge.

BYTES

RoaringBitmap

Hologres V0.10

Sink : VVR-4.0.12-Flink-1.13 et versions ultérieures. Le mode RPC n'est pas pris en charge. Source : VVR-6.0.3-Flink-1.15 et versions ultérieures. Le mode RPC n'est pas pris en charge. Dimension : VVR-4.0.12-Flink-1.13 et versions ultérieures. Le mode RPC n'est pas pris en charge.

VARCHAR

GEOMETRY et GEOGRAPHY

Toutes les versions. À partir de Hologres V2.1, Fixed Plan prend en charge l'écriture des données GEOMETRY et GEOGRAPHY.

Sink : VVR-4.0.13-Flink-1.13 et versions ultérieures. Le mode RPC n'est pas pris en charge. Source : Non pris en charge. Dimension : Non pris en charge.

ARRAY\<INT\>

int4[]

Hologres V0.8

Sink : Toutes les versions. Source : VVR-6.0.3-Flink-1.15 et versions ultérieures. Le mode RPC n'est pas pris en charge. Dimension : Toutes les versions.

ARRAY\<BIGINT\>

int8[]

Hologres V0.8

Sink : Toutes les versions. Source : VVR-6.0.3-Flink-1.15 et versions ultérieures. Le mode RPC n'est pas pris en charge. Dimension : Toutes les versions.

ARRAY\<FLOAT\>

float4[]

Hologres V0.8

Sink : Toutes les versions. Source : VVR-6.0.3-Flink-1.15 et versions ultérieures. Le mode RPC n'est pas pris en charge. Dimension : Toutes les versions.

ARRAY\<DOUBLE\>

float8[]

Hologres V0.8

Sink : Toutes les versions. Source : VVR-6.0.3-Flink-1.15 et versions ultérieures. Le mode RPC n'est pas pris en charge. Dimension : Toutes les versions.

ARRAY\<BOOLEAN\>

boolean[]

Hologres V0.8

Sink : Toutes les versions. Source : VVR-6.0.3-Flink-1.15 et versions ultérieures. Le mode RPC n'est pas pris en charge. Dimension : Toutes les versions.

TEXT[]

Hologres V0.8

Sink : Toutes les versions. Source : VVR-6.0.3-Flink-1.15 et versions ultérieures. Le mode RPC n'est pas pris en charge. Dimension : Toutes les versions.

ARRAY\<VARCHAR\>

Hologres V0.8

Sink : Toutes les versions. Source : Hologres V4.0.19 et versions ultérieures, avec le moteur Flink VVR-11,6-JDK11-Flink-1,20. Dimension : Toutes les versions.

CHAR

Non pris en charge

Non pris en charge

Non pris en charge

BINARY

Non pris en charge

Non pris en charge

Non pris en charge

Lors de l'utilisation de CTAS pour synchroniser les données vers Hologres, les clés primaires DECIMAL sont mappées sur TEXT, tandis que les champs DECIMAL non clés primaires sont mappés sur DECIMAL. Pour plus d'informations, consultez Pourquoi la clé primaire d'une table MySQL avec bigint unsigned devient-elle decimal lors de l'enregistrement du catalogue Flink, mais devient-elle text après la synchronisation vers Hologres à l'aide de CTAS ?

Correspondance des types de données entre MySQL et Hologres

Pour un guide de migration, consultez Migrer MySQL vers Hologres.

Type MySQL

Type Hologres

BIGINT

BIGINT

BINARY(n)

BYTEA

BIT

BOOLEAN

CHAR(n), CHARACTER(n)

CHAR(n), CHARACTER(n)

DATE

DATE

DATETIME

TIMESTAMP WITHOUT TIME ZONE

DECIMAL(p,s), DEC(p,s)

DECIMAL(p,s), DEC(p,s)

DOUBLE

DOUBLE PRECISION

FLOAT

REAL

INT, INTEGER

INT, INTEGER

MEDIUMINT

INTEGER

NUMERIC(p,s)

NUMERIC(p,s)

SMALLINT

SMALLINT

TINYBLOB, BLOB, MEDIUMBLOB, LONGBLOB

BYTEA

TINYINT

SMALLINT

TINYTEXT, TEXT, MEDIUMTEXT, LONGTEXT

TEXT

TIME

TIME WITHOUT TIME ZONE

TIMESTAMP

TIMESTAMP WITH TIME ZONE

VARBINARY(n), VARBINARY(max)

BYTEA

VARCHAR(n)

VARCHAR(n)

VARCHAR(max)

TEXT

Correspondance des types de données entre DLF et Hologres

Type DLF

Type Hologres

TINYINT

SMALLINT

SMALLINT

SMALLINT

INT

INT

BIGINT

BIGINT

BOOLEAN

BOOLEAN

FLOAT

REAL

DOUBLE

DOUBLE PRECISION

DATE

DATE

TIMESTAMP

TIMESTAMP WITHOUT TIME ZONE

STRING

TEXT

BINARY

BYTEA

DECIMAL(m,n)

NUMERIC(m,n)

VARCHAR(n)

CHARACTER VARYING(n)

CHAR(n)

CHAR(n)

ARRAY\<type\>

ARRAY\<hologres_data_type\>. Types d'éléments pris en charge : INT, BIGINT, FLOAT, BOOLEAN, DOUBLE, STRING

Correspondance des types de données entre Hive et Hologres

Type Hive

Type Hologres

TINYINT

SMALLINT

SMALLINT

SMALLINT

INT

INT

BIGINT

BIGINT

FLOAT

REAL

DOUBLE

DOUBLE PRECISION

DECIMAL

NUMERIC

NUMERIC

NUMERIC

DATE

DATE

TIMESTAMP

TIMESTAMP WITHOUT TIME ZONE

STRING

TEXT

VARCHAR

VARCHAR

CHAR

CHAR

BINARY

BYTEA

BOOL

BOOLEAN

ARRAY\<type\>

ARRAY\<hologres_data_type\>. Types d'éléments pris en charge : INT, BIGINT, FLOAT, BOOLEAN, DOUBLE PRECISION, STRING

Correspondance des types de données entre Hudi et Hologres

Ce mappage est pris en charge dans Hologres V1.3 et versions ultérieures.

Type Hudi

Type Hologres

IntegerType

INT

LongType

BIGINT

FloatType

REAL

DoubleType

DOUBLE PRECISION

DecimalType

NUMERIC

TimestampType

TIMESTAMP WITHOUT TIME ZONE

DateType

DATE

YearMonthIntervalType

Non pris en charge

DayTimeIntervalType

Non pris en charge

StringType

TEXT

VarcharType

Non pris en charge

CharType

Non pris en charge

BooleanType

BOOL

BinaryType

BYTEA

ByteType

Non pris en charge

ShortType

Non pris en charge

ArrayType(elementType, containsNull)

ARRAY\<hologres_data_type\>. Types d'éléments pris en charge : INT, BIGINT, FLOAT, BOOLEAN, DOUBLE PRECISION, STRING

Correspondance des types de données entre Delta Lake et Hologres

Ce mappage est pris en charge dans Hologres V1.3 et versions ultérieures.

Type Delta Lake

Type Hologres

TINYINT

SMALLINT

SMALLINT

SMALLINT

INT

INT

BIGINT

BIGINT

FLOAT

REAL

DOUBLE

DOUBLE PRECISION

DECIMAL(p,s)

NUMERIC

TIMESTAMP

TIMESTAMP WITHOUT TIME ZONE

DATE

DATE

INTERVAL intervalQualifier

Non pris en charge

STRING

TEXT

BOOLEAN

BOOLEAN

BINARY

BYTEA

ARRAY\<elementType\>

ARRAY\<hologres_data_type\>. Types d'éléments pris en charge : INT, BIGINT, FLOAT, BOOLEAN, DOUBLE PRECISION, STRING

Correspondance des types de données entre Paimon et Hologres

Type Paimon

Type Hologres

TINYINT

SMALLINT

SMALLINT

SMALLINT

INT

INT

BIGINT

BIGINT

FLOAT

REAL

DOUBLE

DOUBLE PRECISION

DECIMAL(p,s)

DECIMAL

TIMESTAMP

TIMESTAMP WITHOUT TIME ZONE

DATE

DATE

CHAR

CHAR

VARCHAR

VARCHAR

BINARY

BYTEA

BLOB

BYTES (pris en charge à partir de V4.2)

ARRAY

ARRAY\<hologres_data_type\>. Types d'éléments pris en charge : INT, BIGINT, FLOAT, BOOLEAN, DOUBLE PRECISION, STRING

Correspondance des types de données entre Iceberg et Hologres

Type Iceberg

Type Hologres

BOOLEAN

BOOLEAN

INT

INTEGER

LONG

BIGINT

FLOAT

REAL

DOUBLE

DOUBLE PRECISION

DECIMAL(P,S)

NUMERIC(P,S)

DATE

DATE

TIME

TEXT (Spark ne prend pas en charge le type TIME. Le type TIME de Flink devient STRING lors de l'écriture dans DLF.)

TIMESTAMP

TIMESTAMP WITHOUT TIME ZONE

TIMESTAMPTZ

Non pris en charge

STRING

TEXT

UUID

Non pris en charge (Flink et Spark ne peuvent pas écrire ce type.)

FIXED(L)

BYTEA

BINARY

BYTEA

LIST

ARRAY\<hologres_data_type\>. Types d'éléments pris en charge : INT, BIGINT, FLOAT, BOOLEAN, DOUBLE PRECISION, STRING

STRUCT

Non pris en charge

MAP

Non pris en charge