Greenplum 6.0 版本介绍

Greenplum 6.0引入了许多PostgreSQL的新特性,包括区间数据类型的增强,支持unnest()函数,列级别的权限,pg_class表的改进,以及jsonb数据类型等。此外,新版本支持Zstandard压缩算法,放宽了指定分布列的规则,新增了全局死锁检测,并引入了DISTRIBUTED REPLICATED分布策略。PL/pgSQL过程语言也得到了增强,包括错误处理、RETURN QUERY EXECUTE等功能。Greenplum 6.0淘汰了gptransfer等工具,不再支持gphdfs,但引入了PXF访问Hadoop。部分旧特性如使用gpfilespace创建表空间不再需要,而一些配置参数被删除或不再推荐使用。
摘要由CSDN通过智能技术生成

获得技术资料内容,请访问Greenplum中文社区网站

新特性

PostgreSQL内核新特性

Greenplum 6结合了许多从PostgreSQL8.4到9.4的新特性

区间数据类型处理

PostgreSQL 8.4依照SQL标准,增强了解析INTERVAL文本。这个改变了对于INTERVAL标记的查询在 5.x和6.x里的输出。

 

$ psql

psql (8.3.23)

Type "help" for help.

 

gpadmin=# select INTERVAL '1' YEAR;

interval

----------

00:00:00

(1 row)

```

``` sql

$ psql

psql (9.2beta2)

Type "help" for help.

 

gpadmin=# select INTERVAL '1' YEAR;

interval

----------

1 year

(1 row)

 

新增的PostgresSQL特性

Greenplum 6.0包含了如下来自PostgreSQL的特性

1. 支持unnest() 数组函数,可以将数组转换成行的集合(PostgreSQL 8.4引入)

2. 支持用户自定义的I/O conversion casts. (PostgreSQL 8.4引入)

3. 支持列级别的权限(PostgreSQL 8.4引入)

4. 增加了pg_db_role_setting系统表,为特定数据库和角色组合的配置提供了支持(PostgreSQL 9.0引入)

5. pg_class系统表里的relkind列的值已改成与PostgreSQL 9.3的条目相同

6. 支持GIN索引方法(PostgreSQL 8.3引入)

7. 支持jsonb数据类型(PostgreSQL 9.4引入)

8. DELETE,INSERT和UPDATE语句支持WITH子句,即CTE (common table expression) (PostgreSQL 9.1引入)

对于WITH子句,RECURSIVE关键字还处于试验阶段

9. 列(column)级别支持指定排序规则和字符集的Collation(PostgreSQL 9.1引入)

Zstandard压缩算法

Greenplum 6.0增加了数据库某些操作和AO表存储的zstd (Zstandard)压缩。

放宽指定分布列的规则

在之前的版本,如果在建表的时候同时指定了分布列和唯一索引,则分布列必须和唯一索引列相同,或者是唯一索引列集的左前缀。Greenplum 6.x里取消了该限制,分布列可以是索引列的任何子集。

这个改变同时影响了Greenplum 6.x选择默认分布键的规则。如果gp_create_table_random_default_distribution是关闭的(默认值),并且建表时未指定DISTRIBUTED BY子句,Greenplum会根据如下规则选择分布键:

1. 如果使用了LIKE或INHERITS,则依照源表或父表的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值