Apache Doris 数据类型

Apache Doris 已支持的数据类型列表如下:

数值类型​

类型名 存储空间(字节) 描述
BOOLEAN 1 布尔值,0 代表 false,1 代表 true。
TINYINT 1 有符号整数,范围 -128, 127。
SMALLINT 2 有符号整数,范围 -32768, 32767。
INT 4 有符号整数,范围 -2147483648, 2147483647
BIGINT 8 有符号整数,范围 -9223372036854775808, 9223372036854775807。
LARGEINT 16 有符号整数,范围 -2\^127 + 1 \~ 2\^127 - 1。
FLOAT 4 浮点数,范围 -3.4*10\^38 \~ 3.4*10\^38。
DOUBLE 8 浮点数,范围 -1.79*10\^308 \~ 1.79*10\^308。
DECIMAL 4/8/16 高精度定点数,格式:DECIMAL(M,D)。其中,M 代表一共有多少个有效数字(precision),D 代表小数位有多少数字(scale)。有效数字 M 的范围是 1, 38,小数位数字数量 D 的范围是 0, precision。0 < precision <= 9 的场合,占用 4 字节。9 < precision <= 18 的场合,占用 8 字节。16 < precision <= 38 的场合,占用 16 字节。

日期类型​

类型名 存储空间(字节) 描述
DATE 16 日期类型,目前的取值范围是 '0000-01-01', '9999-12-31',默认的打印形式是 'yyyy-MM-dd'。
DATETIME 16 日期时间类型,格式:DATETIME(P)。可选参数 P 表示时间精度,取值范围是 0, 6,即最多支持 6 位小数(微秒)。不设置时为 0。 取值范围是 '0000-01-01 00:00:00\[.000000', '9999-12-31 23:59:59.999999']。打印的形式是 'yyyy-MM-dd HH:mm:ss.SSSSSS'。

字符串类型​

类型名 存储空间(字节) 描述
CHAR M 定长字符串,M 代表的是定长字符串的字节长度。M 的范围是 1-255。
VARCHAR 不定长 变长字符串,M 代表的是变长字符串的字节长度。M 的范围是 1-65533。变长字符串是以 UTF-8 编码存储的,因此通常英文字符占 1 个字节,中文字符占 3 个字节。
STRING 不定长 变长字符串,默认支持 1048576 字节(1MB),可调大到 2147483643 字节(2GB)。可通过 BE 配置 string_type_length_soft_limit_bytes 调整。String 类型只能用在 Value 列,不能用在 Key 列和分区分桶列。

半结构类型​

类型名 存储空间(字节) 描述
ARRAY 不定长 由 T 类型元素组成的数组,不能作为 Key 列使用。目前支持在 Duplicate 和 Unique 模型的表中使用。
MAP 不定长 由 K, V 类型元素组成的 map,不能作为 Key 列使用。目前支持在 Duplicate 和 Unique 模型的表中使用。
STRUCT 不定长 由多个 Field 组成的结构体,也可被理解为多个列的集合。不能作为 Key 使用,目前 STRUCT 仅支持在 Duplicate 模型的表中使用。一个 Struct 中的 Field 的名字和数量固定,总是为 Nullable。
JSON 不定长 二进制 JSON 类型,采用二进制 JSON 格式存储,通过 JSON 函数访问 JSON 内部字段。长度限制和配置方式与 String 相同
VARIANT 不定长 动态可变数据类型,专为半结构化数据如 JSON 设计,可以存入任意 JSON,自动将 JSON 中的字段拆分成子列存储,提升存储效率和查询分析性能。长度限制和配置方式与 String 相同。Variant 类型只能用在 Value 列,不能用在 Key 列和分区分桶列。

聚合类型​

类型名 存储空间(字节) 描述
HLL 不定长 HLL 是模糊去重,在数据量大的情况性能优于 Count Distinct。HLL 的误差通常在 1% 左右,有时会达到 2%。HLL 不能作为 Key 列使用,建表时配合聚合类型为 HLL_UNION。用户不需要指定长度和默认值。长度根据数据的聚合程度系统内控制。HLL 列只能通过配套的 hll_union_agg、hll_raw_agg、hll_cardinality、hll_hash 进行查询或使用。
BITMAP 不定长 Bitmap 类型的列可以在 Aggregate 表、Unique 表或 Duplicate 表中使用。在 Unique 表或 Duplicate 表中使用时,其必须作为非 Key 列使用。在 Aggregate 表中使用时,其必须作为非 Key 列使用,且建表时配合的聚合类型为 BITMAP_UNION。用户不需要指定长度和默认值。长度根据数据的聚合程度系统内控制。BITMAP 列只能通过配套的 bitmap_union_count、bitmap_union、bitmap_hash、bitmap_hash64 等函数进行查询或使用。
QUANTILE_STATE 不定长 QUANTILE_STATE 是一种计算分位数近似值的类型,在导入时会对相同的 Key,不同 Value 进行预聚合,当 value 数量不超过 2048 时采用明细记录所有数据,当 Value 数量大于 2048 时采用 TDigest 算法,对数据进行聚合(聚类)保存聚类后的质心点。QUANTILE_STATE 不能作为 Key 列使用,建表时配合聚合类型为 QUANTILE_UNION。用户不需要指定长度和默认值。长度根据数据的聚合程度系统内控制。QUANTILE_STATE 列只能通过配套的 QUANTILE_PERCENT、QUANTILE_UNION、TO_QUANTILE_STATE 等函数进行查询或使用。
AGG_STATE 不定长 聚合函数,只能配合 state/merge/union 函数组合器使用。AGG_STATE 不能作为 Key 列使用,建表时需要同时声明聚合函数的签名。用户不需要指定长度和默认值。实际存储的数据大小与函数实现有关。

IP 类型​

类型名 存储空间(字节) 描述
IPv4 4 字节 以 4 字节二进制存储 IPv4 地址,配合 ipv4_* 系列函数使用。
IPv6 16 字节 以 16 字节二进制存储 IPv6 地址,配合 ipv6_* 系列函数使用。

也可通过SHOW DATA TYPES;语句查看 Apache Doris 支持的所有数据类型。

相关推荐
心随_风动16 小时前
Ubuntu系统安装Apache服务教程
linux·ubuntu·apache
ly76892 天前
Kafka 消费者重试与死信:Spring for Apache Kafka 的边界设计
spring·kafka·apache·并发消费·消费者重试·死信主题·位移提交
HoneyMoose3 天前
Ubuntu Apache 配置多站点提示 SSL 错误
ubuntu·apache·ssl
骑着蜗牛撵大象3273 天前
一套引擎撑起树表双模型:Apache IoTDB 2.0 与 TsFile 的选型答卷
apache·时序数据库·iotdb·tsfile·树模型·表模型
凤山老林3 天前
Spring Boot 集成 Apache CXF 发布与消费 SOAP WebService:WSDL、WS-Security
spring boot·后端·apache·webservice·soap·apache cxf
inquisiter4 天前
KernelGpt的部分尝试
java·前端·apache
十碗饭吃不饱4 天前
Apache POI XWPFTableCell 表格单元格排版踩坑总结
apache
betazhou5 天前
Apache Seatunnel 抽取SQL server实时同步到Oracle-多表同步(五)
数据库·oracle·sqlserver·apache·seatunnel
青企通5 天前
电商小程序购物车与库存扣减:SKU 模型、合并规则与防超卖实践
小程序·apache
李纲明6 天前
WordPress 首页正常、内页全 404:固定链接与伪静态规则排查步骤(Apache / Nginx)
nginx·apache·wordpress