当前位置: 首页 > news >正文

Apache Doris 数据类型

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

数值类型​

类型名存储空间(字节)描述
BOOLEAN1布尔值,0 代表 false,1 代表 true。
TINYINT1有符号整数,范围 [-128, 127]。
SMALLINT2有符号整数,范围 [-32768, 32767]。
INT4有符号整数,范围 [-2147483648, 2147483647]
BIGINT8有符号整数,范围 [-9223372036854775808, 9223372036854775807]。
LARGEINT16有符号整数,范围 [-2^127 + 1 ~ 2^127 - 1]。
FLOAT4浮点数,范围 [-3.410^38 ~ 3.410^38]。
DOUBLE8浮点数,范围 [-1.7910^308 ~ 1.7910^308]。
DECIMAL4/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 字节。

日期类型​

类型名存储空间(字节)描述
DATE16日期类型,目前的取值范围是 ['0000-01-01', '9999-12-31'],默认的打印形式是 'yyyy-MM-dd'。
DATETIME16日期时间类型,格式: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'。

字符串类型​

类型名存储空间(字节)描述
CHARM定长字符串,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 类型​

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

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

http://www.lryc.cn/news/501262.html

相关文章:

  • 编译问题 fatal error: rpc/rpc.h: No such file or directory
  • linux 安装composer
  • 数据库公共字段自动填充的三种实现方案
  • 《MySQL 入门:数据库世界的第一扇门》
  • Qt之第三方库QCustomPlot使用(二)
  • JAVA-类与继承
  • SSH连接报错,Corrupted MAC on input 解决方法
  • 【C++】8___继承
  • C# 中的异常处理:构建健壮和可靠的程序
  • 基于智能合约的医院凭证共享中心路径探析
  • vba学习系列(9)--按需求计数单元格数量
  • scale index的计算
  • 鸿蒙实现Web组件开发
  • Linux——linux系统移植
  • 工业摄像头应对复杂环境的策略与解决方案
  • 重生之我在异世界学编程之C语言:深入动态内存管理篇
  • 【经典论文阅读】Latent Diffusion Models(LDM)
  • 智能指针中的weak_ptr(弱引用智能指针)
  • 【电子通识】机电继电器和固态继电器的区别
  • 工业异常检测-CVPR2024-新的3D异常数据合成办法和自监督网络IMRNet
  • 如何创建对话窗口
  • 新手上路,学Go还是Python
  • <!DOCTYPE html>的作用是什么
  • EasyExcel改名为FastExce做了那些改变呢
  • 狗狗的生育周期:关注与呵护
  • ABAP DIALOG屏幕编程2
  • 获取缓存大小与清除 Web 缓存 - 鸿蒙 HarmonyOS Next
  • 在Unreal Engine中,UHT与反射机制
  • SQL项目实战与综合应用——项目设计与需求分析
  • 分布式中的CAP定理和BASE理论与强弱一致性