显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

魂醉的一亩二分地

人在江湖漂,哪能不挨刀

 
 
 
 
 
 
Greenplum在创建表的时候可以选择表存储方式,比如是行存储,还是列存储,是普通的heap表,还是append optimized表。
下面分别介绍以下
行存储是行为单位存储数据,一行中越是靠后的列,那么查询需要的cost相对越大,这个以前oracle做过相应比较,都是一样的道理,行存储更适合OLTP的系统

列存储是以列为单位存储数据,物理上一列会对应一个或者多个数据文件,而且列存储的压缩比比较高,但是如果查询的时候,如果返回的列很多,那么效率不如行存储,列存储更适合对某一列做相关统计,列存储更适合OLAP的系统

堆表,我们普通的创建的表默认都是堆表,适合频繁的更新删除操作的小表,适合OLTP系统

作者  | 2018-4-20 17:40:35 | 阅读(1) |评论(0) | 阅读全文>>

Greenplum分区表维护

2018-4-20 14:44:56 阅读24 评论0 202018/04 Apr20


添加分区
CREATE TABLE sales (trans_id int, date date, amount
decimal(9,2), region text)
DISTRIBUTED BY (trans_id)
PARTITION BY RANGE (date)
SUBPARTITION BY LIST (region)
SUBPARTITION TEMPLATE
( SUBPARTITION usa VALUES ('usa'),
SUBPARTITION asia VALUES ('asia'),
SUBPARTITION europe VALUES ('europe'),
DEFAULT SUBPARTITION other_regions)

作者  | 2018-4-20 14:44:56 | 阅读(24) |评论(0) | 阅读全文>>

Oracle 透明数据加密--表空间加密

2018-3-29 16:00:40 阅读10 评论0 292018/03 Mar29

TDE从11g开始支持加密整个表空间,所有存放在表空间的对像都自动加密,不需要再对表以下进行分割加密.
表空间加密不支持BFILE列的加密

oracle的列加密是从10gR2开始可以使用,表空间加密是从11gR1开始使用

表空间加密算法

3DES168,AES128,AES192,AES256,默认是AES128


加密解密图

作者  | 2018-3-29 16:00:40 | 阅读(10) |评论(0) | 阅读全文>>

Oracle 透明数据加密--列加密

2018-3-29 14:40:55 阅读4 评论0 292018/03 Mar29

我们所需要做的就是把某列声明成加密的,剩下的全部由Oracle完成。当用户插入或者更新数据时,列值会被截获、加密,然后用加密后的格式保存。然后,当这一列被查询时,又会自动对列值进行解密,然后把解密后的文本(明文)返回给用户。用户甚至都不需要知道发生过加密和解密——也就是所谓的透明。全部都是由Oracle代码内部完成,不需要任何触发器或者复杂的过程逻辑。


TDE的目的:用最小的代价加密敏感数据,避免可能的对数据文件的盗窃带来的

作者  | 2018-3-29 14:40:55 | 阅读(4) |评论(0) | 阅读全文>>

两个节点recovering,一个节点SECONDARY,如何恢复为primary

2018-2-26 14:32:46 阅读8 评论0 262018/02 Feb26

replica sets 两个节点意外recovering,一个primary,关闭两个recovering节点后,primary节点变为SECONDARY
用以下步骤恢复到primary

replset:SECONDARY> cfg = rs.conf()
replset:SECONDARY> conf = {_id:cfg._id,version: cfg.version + 1,members: [ cfg.members[2] ]}
replset:SECONDARY> rs.reconfig(conf,{force:true})
其实就是强制reconfig以下
另外原来两个recovering节点,根据需求,要么同步,要么copy数据文件,重新加入replica sets即可

作者  | 2018-2-26 14:32:46 | 阅读(8) |评论(0) | 阅读全文>>

Postgresql null值判断,排序,以及排序后对索引的影响

2018-1-15 14:52:12 阅读17 评论0 152018/01 Jan15

首先null值不会分配空间,这一点与''是本质区别,但是表现形式是一样的
首先null值与任何值做布尔运算,结果都是false

null值判断,is null,is not null
hank=> create table tab1 (a int ,b varchar(20));
CREATE TABLE
hank=> insert into tab1 values(1,'hank');
INSERT 0 1
hank=> insert into tab1 values(1,null);  
INSERT 0 1
hank=> insert into tab1 values(1,'askasdjk');

作者  | 2018-1-15 14:52:12 | 阅读(17) |评论(0) | 阅读全文>>

创建测试表:
hank=> create table t_p (c1 int,c2 varchar(20),c3 timestamp);                 
CREATE TABLE
hank=> create table t_p_1 (like t_p including all) inherits(t_p);
NOTICE:  merging column "c1" with inherited definition
NOTICE:  merging column "c2" with inherited definition

作者  | 2018-1-8 17:44:08 | 阅读(22) |评论(1) | 阅读全文>>

Greenplum copy ... from stdin无法终止session

2017-12-18 17:01:31 阅读10 评论0 182017/12 Dec18

Greenplum数据同步任务失败,导致一直等待stdin的输入,数据库内pg_terminate_backend无效,如下:

gpadmin=# select datname,procpid,sess_id,current_query from pg_stat_activity ;
warehouse |   43828 |  343292 | copy hank from stdin

gpadmin=# select pg_terminate_backend(43828);
 pg_terminate_backend 
----------------------

作者  | 2017-12-18 17:01:31 | 阅读(10) |评论(0) | 阅读全文>>

查看所有日志>>

 
 
 
 
 
 我要留言
 
 
 
留言列表加载中...
 
 
 
 
 
 
 
列表加载中...
 
 
 
 
 
 
 
博友列表加载中...
 
 
 
 
 
 
 
模块内容加载中...
 
 
 
 
 
 
 
心情随笔列表加载中...
 
 
 
 
 
 
 

浙江 杭州 白羊座

 发消息  写留言

 
博客等级加载中...
今日访问加载中...
总访问量加载中...
最后登录加载中...
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018

注册 登录  
 加关注