绑定完请刷新页面
取消
刷新

分享好友

×
取消 复制
Greenplum创建表
2023-03-06 16:37:40

Greenplum创建表

Greenplum是分布式的关系型数据库系统,创建表需要指定分布键,创建表需要有create的DBA权限,目的子啊与将数据分布到各个segment。选择分布键非常重要,选择错误会导致数据不唯-一,严重的造成sql的性能急剧下降。

一、Greenplum支持字段类型

1、数值类型


2、字符类型


3、时间类型

二、greenplum创建表

1、二维表同样是GP中重要的数据存储对象,为了更好的支持数据仓库海量数据的访问,GP的存储方式可以分为

面向行存储的普通堆积表
面向列存储的AOT表(append only table)
AOT表也可以是按行存储的,但是按列存储必须是AOT表,如经常更新数据,或者较小的维度数据,应该使用普通堆积表存储。
2、普通堆积表创建

create table student(
id character varing(30),
xm character varing(20),
xh character varing(20),
bj character varing(20)
)
distributed by (id);
comment on table student is '学生表';
comment on column student.id is '主键id';
comment on column student.xm is '姓名';
comment on column student.xh is '学号';
comment on column student.bj is '班级';

3、分布键(哈希键)

  • distributed by (id) 指定id字段为分布键
  • distributed randonly 随机分布
注意事项:
  • 未指定分布键,默认表的主键为分布键,若表没有主键,则默认把列当做哈希键。
  • 分布键可以定义为一个或者多个。
  • 分布键必须是唯-一键。
  • 不能修改分布键,且哈希键的列不能update。
  • 一个表只能定义一个唯-一键,且主键和唯-一键必须作为哈希键。
  • 数值重复度低,保证数据均匀分布。
  • 防止数据倾斜,分布键不适合,float、double数据类型也不适合,interger、varchar支持
  • 大表经常做连接时,选择相同的分布键,避免跨节点进行join.
  • 尽量不使用序列号。
4、AOT指定按列分布
  • appendonly=true 指定是否只appenf追加。
  • compresslevel=5 zlib压缩级别 1-9共9个级别 9压缩级别-大
  • orientation=column 指定是否按列存储。
  • compresstyle=zlib GP提供俩种压缩算法:zlib和quicklz。
  • oids =false 对象标识符,不分配。

才华不溢,梦想依旧
唯心沉淀,遨游宇宙




本文来源:https://blog.csdn.net/qq_34552189/article/details/107324150

分享好友

分享这个小栈给你的朋友们,一起进步吧。

Greenplum
创建时间:2022-04-08 15:36:19
Greenplum
展开
订阅须知

• 所有用户可根据关注领域订阅专区或所有专区

• 付费订阅:虚拟交易,一经交易不退款;若特殊情况,可3日内客服咨询

• 专区发布评论属默认订阅所评论专区(除付费小栈外)

技术专家

查看更多
  • itt0918
    专家
戳我,来吐槽~