当前位置:网站首页>Apache Doris支持的数据类型详解
Apache Doris支持的数据类型详解
2022-08-10 22:42:00 【Bulut0907】
目录
1. TINYINT
1字节有符号整数,范围:[-128, 127]
2. SMALLINT
2字节有符号整数,范围:[-32768, 32767]
3. INT
4字节有符号整数,范围:[-2147483648, 2147483647]
4. BIGINT
8字节有符号整数,范围:[-9223372036854775808, 9223372036854775807]
5. LARGEINT
16字节有符号整数,范围:[-2^127 + 1 ~ 2^127 - 1]
6. FLOAT
4字节浮点数
7. DOUBLE
8字节浮点数
8. DECIMAL
格式:DECIMAL(M[,D])。默认为DECIMAL(9, 0)
16字节高精度定点数,M 代表一共有多少个有效数字(precision,范围1 ~ 27),D 代表小数位有多少个数字(scale,范围0 ~ 9)。所以整数位数字个数的范围是1 ~ 18
9. BOOLEAN
与TINYINT一样,0代表false,1代表true
10. CHAR
语法:CHAR(M)。默认是CHAR(1)
定长字符串,M代表的是定长字符串的长度。M的范围是1-255
11. VARCHAR(M)
变长字符串,M代表的是变长字符串的字节长度。M的范围是1-65533
变长字符串是以UTF-8编码存储的,因此英文字符占1个字节,中文字符占3个字节
12. STRING
变长字符串,最大支持2147483643字节(2GB-4)。String类型的长度还受BE配置参数 string_type_soft_limit
的影响, 实际能存储的最大长度取两者最小值
String类型只能用在value列,不能用在key列和分区分桶列
变长字符串是以UTF-8编码存储的,因此英文字符占1个字节,中文字符占3个字节
13. DATE
DATE类型:3字节,取值范围是:[‘0000-01-01’, ‘9999-12-31’], 默认的打印形式是’YYYY-MM-DD’
DATE函数:语法是:DATE(expr),表示将输入的类型转化为DATE类型。例如:SELECT DATE('2022-08-01 10:02:03');
14. DATETIME
3字节,日期时间类型,取值范围是:[‘0000-01-01 00:00:00’, ‘9999-12-31 23:59:59’],打印的形式是’YYYY-MM-DD HH:MM:SS’
15. BITMAP
是整型的集合,元素最大支持到2^64 - 1。BITMAP不能作为key列使用,建表时配合聚合类型为BITMAP_UNION。用户不需要指定长度和默认值。长度根据数据的聚合程度系统内控制
并且BITMAP列只能通过配套的bitmap_union_count、bitmap_union、bitmap_hash等函数进行查询或使用
离线场景下使用BITMAP会影响导入速度,在数据量大的情况下查询速度会慢于HLL,并优于Count Distinct
实时场景下BITMAP如果不使用全局字典,使用了bitmap_hash()可能会导致有千分之一左右的误差
查询示例:
select hour, BITMAP_UNION_COUNT(pv) over(order by hour) uv from(
select hour, BITMAP_UNION(device_id) as pv
from metric_table -- 查询每小时的累计UV
where datekey=20220801
group by hour order by 1
) final;
16. HLL(HyperLogLog)
1~16385 个字节。HLL不能作为key列使用,建表时配合聚合类型为HLL_UNION。用户不需要指定长度和默认值。长度根据数据的聚合程度系统内控制
并且HLL列只能通过配套的hll_union_agg、hll_raw_agg、hll_cardinality、hll_hash进行查询或使用
HLL是模糊去重,在数据量大的情况性能优于Count Distinct。HLL的误差通常在1%左右,有时会达到2%
查询示例:
select hour, HLL_UNION_AGG(pv) over(order by hour) uv from(
select hour, HLL_RAW_AGG(device_id) as pv
from metric_table -- 查询每小时的累计UV
where datekey=20220801
group by hour order by 1
) final;
边栏推荐
猜你喜欢
随机推荐
【640. 求解方程】
Splunk中解决数据质量问题常见日期格式化
二叉树 | 递归遍历 | leecode刷题笔记
配电网络扩展规划:考虑使用概率性能源生产和消费概况的决策(Matlab代码实现)
鹏城杯 2022 web/misc writeup
pytorch tear CNN
y93.第六章 微服务、服务网格及Envoy实战 -- Envoy配置(四)
CIKM2022 | 基于双向Transformers对比学习的序列推荐
HanLP词性表
STL-stack
LeetCode每日两题01:反转字符串 (均1200道)方法:双指针
STL-deque
geemap的详细安装步骤及环境配置
canvas
响应式pbootcms模板运动健身类网站
How to be a Righteous Hacker?What should you study?
Pro-test is effective | A method to deal with missing features of risk control data
This visual tool artifact is more intuitive and easy to use!love so much
Nodes in the linked list are flipped in groups of k
学会开会|成为有连接感组织的重要技能