PostgreSQL 计算 任意类型 字段之间的线性相关性
背景 PostgreSQL自带了计算numeric和numeric字段的线性相关性的聚合函数corr(numeric, numeric)。 例如: postgres=# select corr(c1,c2) from (values (1,2),(2,1),(100,90),(13,13),(25,27) )...
背景 PostgreSQL自带了计算numeric和numeric字段的线性相关性的聚合函数corr(numeric, numeric)。 例如: postgres=# select corr(c1,c2) from (values (1,2),(2,1),(100,90),(13,13),(25,27) )...
背景 使用PostgreSQL查询记录时,可以使用offset跳过一些记录,从跳跃点开始取后面的数据。 但是这里有一个问题是这样的: postgres=# create or replace function f() returns void as $$ declare begin raise...
背景 PostgreSQL 如何计算可变参数中有没有重复参数,或者说如何计算多列的排列组合。 计算排列组合时,需要知道参数中是否有重复值。目的是过滤掉重复值。 实现方法很简单,需要创建支持可变参数的函数。 正文 postgres=# CREATE or replace FUNCTION has_dupli...
背景 Oracle GoldenGate支持种类繁多的数据库的同步,功能非常强大。 从mysql, oracle同步到PostgreSQL的又一利器。 开源的从mysql,oracle同步到PostgreSQL软件举例: https://github.com/EnterpriseDB/mysql_fdw ...
背景 阿里云RDS PostgreSQL给的是介于超级用户和普通用户之间的用户权限,在使用pg_hint_plan时与超级用户有些许不同。 使用方法 使用rds_superuser登陆需要安装pg_hint_plan插件的数据库。 postgres=> \du+ ...
背景 前段时间发了一篇关于CentOS 6.x ulimit配置文件变更为/etc/security/limits.d/90-nproc.conf 的文章. 但是如果你的系统中已经存在的进程的nproc是不会被变更过来的. 例如一个数据库服务器. PostgreSQL所有的backend process都是...
背景 前段时间在中华数据库大会遇到一位朋友询问关于如何使用PostgreSQL存储3D建模的数据,应用场景大概是找到最合脚的鞋子。 大概是将生产线上所有鞋子的内部空间数据化,同时将人的脚的三维数据化,存入数据库。找到脚和鞋子最匹配的组合。 这里涉及到3D数据的建模和存储,以及数据的使用。 好在Postgre...
背景 PostgreSQL最低的事务隔离级别是read committed,因此在事务中产生的数据变化,在外部是不可见的,包括auto analyze也是不可见的。 例子: postgres=# show autovacuum; autovacuum ------------ on (1...
背景 在PostgreSQL中直接读写redis。 好处多多,可以降低应用层设计的复杂度,减少交互次数,降低RT。 应用场景举例: 1. 使用redis作为PostgreSQL的二级缓存, 提升数据库的性能。 例如在生产中有多台redis主机或集群,使用redis扩展PG的二级缓存能力,减少对IO的需求。...
背景 PostgreSQL的临时表空间,通过参数temp_tablespaces 进行配置,PostgreSQL允许用户配置多个临时表空间。 配置多个临时表空间时,使用逗号隔开。 如果没有配置temp_tablespaces 参数,临时表空间对应的是默认的表空间。 PostgreSQL的临时表空间用来存储临...