Greenplum 大数据平台基于MPP(大规模并行处理)架构,具有良好的弹性和线性扩展能力,内置并行存储、并行通讯、并行计算和优化技术,兼容 SQL 标准,具备强大、高效、安全的PB级结构化、半结构化和非结构化数据存储、处理和实时分析能力
一.创建表
-
创建表检查约束
CREATE TABLE products
( product_no integer,
name text,
price numeric CHECK (price > 0) ); -
创建非空约束
CREATE TABLE products
( product_no integer NOT NULL,
name text NOT NULL,
price numeric ); -
创建唯一约束
CREATE TABLE products
( product_no integer UNIQUE,
name text,
price numeric)
DISTRIBUTED BY (product_no); 使用hash-distributed 必须为hash分布 -
主键约束,必须是hash分布
CREATE TABLE products
( product_no integer PRIMARY KEY,name text,
price numeric)
DISTRIBUTED BY (product_no); -
创建append表
CREATE TABLE bar (a int, b text)
WITH (appendonly=true)
DISTRIBUTED BY (a); -
创建列表
CREATE TABLE bar (a int, b text)
WITH (appendonly=true, rientation=column)
DISTRIBUTED BY (a); -
创建压缩表 压缩级别从1到9,quicklz只有默认1的压缩级别
CREATE TABLE foo (a int, b text)
WITH (appendonly=true, compresstype=zlib,
compresslevel=5);
zlib,quicklz,RLE_TYPE 三种压缩格式
9级 1级 4级 -
查看压缩的函数
SELECT get_ao_distribution(‘lineitem_comp’); -
数据块的大小从8192-2097152 但是必须以8k的倍数增长 eg:
C1 char ENCODING (compresstype=quicklz, blocksize=65536)
COLUMN C1 ENCODING (compresstype=quicklz, blocksize=65536)
DEFAULT COLUMN ENCODING (compresstype=quicklz) -
列压缩表
CREATE TABLE T1 (c1 int ENCODING (compresstype=zlib),
c2 char ENCODING (compresstype=quicklz, blocksize=65536),
c3 char)
WITH (appendonly=true, rientation=column);