ClickHouse官网定义:ClickHouse是一个用于联机分析(OLAP)的列式数据库管理系统(DBMS)。
1. clickhouse数据库基础
1.1 clickhouse数据类型
1.基础类型
数值:整型int、浮点float(支持正负无穷、非数字表达)、定点数decimal(精度和规模)。
字符串:String、FixedString(定长字符FixedString(N))、UUID(默认值为0)。
时间:DateTime、DateTime64、Date。没有时间戳,精度为秒。时间戳需借助UInt类型
2.复合类型
数组:array,以最小存储代价进行类型推断
元祖:tuple,由1~n个元素组成,支持类型推断
枚举:enum,(String:Int)key/value键值对定义数据,键值不能重复且不能为null,key可以为空串,写入时只写key。优化性能,操作中会使用value计算。
嵌套:nested,支持一级嵌套,本质是多维数组,每个字段都是数组。访问时使用“.”。
3.特殊类型
Nullable:表示可以为null值,只能和基础数据类型搭配使用,不能和数组、元祖复杂类型搭配。如,定义字段 c1 Nullable(Uint8)。(少用,额外生成列文件保存Null值)
Domain:域名分为IPv4(基于UInt32封装,性能更好)和IPv6(基于FixedString16封装)
1.2 clickhouse数据库表
1.数据库引擎Ordinary