当前位置:网站首页>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;
边栏推荐
- 阿里云新增三大高性能计算解决方案,助力生命科学行业快速发展
- N1BOOK writeup
- 带你造轮子,自定义一个随意拖拽可吸边的View
- LeetCode Daily 2 Questions 02: Reverse the words in a string (1200 each)
- 艺术与科技的狂欢,阿那亚2022砂之盒沉浸艺术季
- 2022年8月10日:使用 ASP.NET Core 为初学者构建 Web 应用程序--使用 ASP.NET Core 创建 Web UI(没看懂需要再看一遍)
- RecyclerView上下滑动时,不调用onBindViewHolder 导致列表的item不刷新
- 二叉树 | 迭代遍历 | leecode刷题笔记
- 风控逻辑利器---规则引擎
- Power system power flow calculation (Newton-Raphson method, Gauss-Seidel method, fast decoupling method) (Matlab code implementation)
猜你喜欢
高学历毕业生,该学单片机还是plc?
68:第六章:开发文章服务:1:内容梳理;article表介绍;创建【article】文章服务;
68: Chapter 6: Develop article services: 1: Content sorting; article table introduction; creating [article] article services;
数学建模准备知识
带你造轮子,自定义一个随意拖拽可吸边的View
LabVIEW分配多少线程?
《DevOps围炉夜话》- Pilot - CNCF开源DevOps项目DevStream简介 - feat. PMC成员胡涛
消息队列总结
leetcode:355. 设计推特
【640. Solving Equations】
随机推荐
RecyclerView设置缓存大小
pytorch手撕CNN
【MySQL】mysql因为字符集导致left join出现Using join buffer (Block Nested Loop)
3598. 二叉树遍历(华中科技大学考研机试题)
链表中的节点每k个一组翻转
HanLP词性表
双向循环链表-配有视频讲解
EL表达式
y93.第六章 微服务、服务网格及Envoy实战 -- Envoy配置(四)
KRONES克朗斯电源维修0-901-17-350-8技术概论
亲测有效|处理风控数据特征缺失的一种方法
make & cmake
canvas
Fatal error: cstring: No such file or directory
【软件测试】2022年最火的十大测试工具,你掌握了几个
JS学习 2022080
带你造轮子,自定义一个随意拖拽可吸边的View
CIKM2022 | 基于双向Transformers对比学习的序列推荐
德科立科创板上市:年营收7.3亿 市值59亿
LabVIEW分配多少线程?