Greenplum , PostgreSQL pgcrypto 加密算法、mode、PAD的选择 - 与Oracle, MySQL的差异(安全性差异)
背景 PostgreSQL, Greenplum的数据加密插件pgcrypto,用于加密数据。 其中用于PGP对称加密的函数例子: Introduction of PGP encryption, usage of raw encryption functions is discouraged. encryp...
背景 PostgreSQL, Greenplum的数据加密插件pgcrypto,用于加密数据。 其中用于PGP对称加密的函数例子: Introduction of PGP encryption, usage of raw encryption functions is discouraged. encryp...
背景 Greenplum并不支持nulls first或last语法,例如: select * from tbl order by id nulls first; select id, last_value(key) over (partition by gid order by crt_time n...
背景 经营分析、决策支持是现代企业的一个让数据发挥有效价值的分析型系统。 在各个行业中随处可见,例如共享充电宝中,协助销售了解实时的设备租赁情况,销售业绩。在电商中,协助小二和商户发掘目标用户群体。金融行业中,协助输出国民的存款、消费、贷款的画像。 PostgreSQL, Greenplum都是非常适合于经营...
背景 数据库选型 云端生态系统设计 TP、AP、流、图、时序、空间、搜索、系统架构设计 冷热存储设计 安全系统设计 审计系统设计 监控系统设计 网络设计 硬件评估与规划 benchmark 部署 读写分离设计 LB设计 sharding MPP HA multi-master设计 备份 时间点恢复 闪回 容灾 异...
背景 流式统计count, avg, min, max, sum等是一个比较有意思的场景,可用于实时大屏,实时绘制统计图表。 比如菜鸟、淘宝、阿里游戏、以及其他业务系统的FEED日志,按各个维度实时统计输出结果。(实时FEED统计,实时各维度在线人数等) PostgreSQL insert on confli...
背景 对于分布式系统,数据分布存储,例如随机、哈希分布。 Greenplum数据库支持两种数据分布模式: 1、哈希(指定单个、或多个字段) 2、随机分布(无需指定任何字段) 数据分布存储后,面临一些挑战: JOIN,排序,group by,distinct。 1、JOIN涉及非分布键字段 2、排序,...
背景 在PostgreSQL中,目前对于空间对象的索引,采用的是GiST索引方法,空间树结构如下,每个ENTRY都是一个BOX: 如果对象是多边形,那么在索引结构中,会存储这个多边形的bound box。 那么对于非box类型,一定是会出现空间放大的。 另一方面,如果输入条件是个多边形,那么同样会将...
背景 除了传统的基于trigger和rule的分区,PostgreSQL 10开始已经内置了分区功能(目前仅支持list和range),使用pg_pathman则支持hash分区。 从性能角度,目前最好的还是pg_pathman分区。 但是,传统的分区手段,依旧是最灵活的,在其他方法都不奏效时,可以考虑传统方...
背景 求distinct是业务的一个普遍需求,例如每天有多少用户,每个省份有多少用户,每天有多少类目的用户等。 select date,count(dinstinct user) from tbl group by date; select date, province, count(distinct...