当前位置:网站首页>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;
边栏推荐
- MySQL: MySQL Cluster - Principle and Configuration of Master-Slave Replication
- 二叉树 | 代码随想录学习笔记
- BM13 determines whether a linked list is a palindrome
- canvas
- 《DevOps围炉夜话》- Pilot - CNCF开源DevOps项目DevStream简介 - feat. PMC成员胡涛
- 如何成为一名正义黑客?你应该学习什么?
- LeetCode每日两题01:反转字符串 (均1200道)方法:双指针
- MySQL performance schema性能分析实战
- 基于交流潮流的电力系统多元件N-k故障模型研究(Matlab代码实现)【电力系统故障】
- How to be a Righteous Hacker?What should you study?
猜你喜欢
二叉树 | 翻转二叉树 | leecode刷题笔记
MySQL: MySQL Cluster - Principle and Configuration of Master-Slave Replication
RK3399 platform development series explanation (kernel-driven peripherals) 6.35, IAM20680 gyroscope introduction
win系统下pytorch深度学习环境安装
2021IDEA创建web工程
68: Chapter 6: Develop article services: 1: Content sorting; article table introduction; creating [article] article services;
How does the Weiluntong touch screen display the current value of abnormal data while alarming?
Research on multi-element N-k fault model of power system based on AC power flow (implemented by Matlab code) [Power System Fault]
koa框架(一)
开源一夏 | 盘点那些 Golang 标星超过 20 K 的优质项目
随机推荐
RK3399 platform development series explanation (kernel-driven peripherals) 6.35, IAM20680 gyroscope introduction
Distribution Network Expansion Planning: Consider Decisions Using Probabilistic Energy Production and Consumption Profiles (Matlab Code Implementation)
JS学习 2022080
【uniapp】uniapp微信小程序开发:启动微信开发者工具提示no such file or directory错误
实例051:按位与
瑞幸咖啡第二季营收33亿:门店达7195家 更换CFO
高通平台开发系列讲解(应用篇)QCMAP应用框架介绍
"DevOps Night Talk" - Pilot - Introduction to CNCF Open Source DevOps Project DevStream - feat. PMC member Hu Tao
IFIT的架构与功能
fme csmapreprojector转换器使用高程异常模型进行高程基准转换
实例053:按位异或
虎牙自动发弹幕换牌子
DC-7靶场下载及渗透实战详细过程(DC靶场系列)
【Maui正式版】创建可跨平台的Maui程序,以及有关依赖注入、MVVM双向绑定的实现和演示
亲测有效|处理风控数据特征缺失的一种方法
DC-8靶场下载及渗透实战详细过程(DC靶场系列)
2021 IDEA creates web projects
实例055:按位取反
ArcGIS应用基础知识
3598. 二叉树遍历(华中科技大学考研机试题)