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

PostgreSQL

公益是一辈子的事, I'm 德哥@Digoal, Just Do it!

 
 
 
 
 
 

[置顶] PostgreSQL 培训视频&文档汇总(持续更新)

2014-2-22 10:19:30 阅读597 评论17 222014/02 Feb22

为了让跟多的朋友了解PostgreSQL, 我将这些年对PG的使用和研究做成了一些体系的培训视频和一些专题视频.

有兴趣的朋友可以下载培训文档了解一下具体的内容, 挑选合适的观看.

如果要对PG有一个体系的认识, 建议看完管理类的培训内容:

http://www.tudou.com/plcover/QHOjn39ooAI/. (有些图像压缩太严重, 建议下载源文件)

技术在不断的发展, 要走好技术这条路, 坚持不懈的学习很重要.

希望这些视频可以帮到一些朋友.

目前将培训内容分四大类(管理, 开发, 内核, 专题), 每个分类下面有详细的介绍.

一. 管理类

SQL使用基础, MVCC, 日常维护和监控, 优化, 建模, 备份和恢复, 容灾, HA, 大数据等.

二. 开发类

重点讲数据类型, SQL语法和优化, 索引, 函数用法和优化, 丰富的插件, 结合数据库特性和应用场景的讲解等.

三. 内核类

重点讲解内核相关的一些东西, 如跟踪, 插件开发, 各模块的运行机制等.

四. 专题类, 或者叫short chat.

这部分内容大多来自我写过的BLOG, 针对以前写过的一些和PG相关的专题文章细化再以视频的形式演示和讲解方便读者理解, 适合PostgreSQL有足够了解的朋友.

作者  | 2014-2-22 10:19:30 | 阅读(597) |评论(17) | 阅读全文>>

[置顶] 给PostgreSQL爱好者的参考资料

2011-8-21 8:32:39 阅读46522 评论15 212011/08 Aug21

推荐书籍:

概念书籍:

《PostgreSQL Introduction and Concepts》

开发书籍:

《PostgreSQL开发必备参考手册》

管理类书籍:

《PostgreSQL 9 Administration Cookbook》

《PostgreSQL 9.0 High Performance》

《PostgreSQL Server Programming》

《How PostgreSQL Processes a Query》

了解内核 :

http://www.postgresql.org/developer/backend/

http://wiki.postgresql.org/wiki/Backend_flowchart

《数据库查询优化器的艺术:原理解析与SQL性能优化》 - 海翔老师

《 PostgreSQL 内核分析》 - 彭老师

官方手册:

作者  | 2011-8-21 8:32:39 | 阅读(46522) |评论(15) | 阅读全文>>

[置顶] 佛说摩诃般若波罗蜜多心经

2013-7-26 18:04:09 阅读2613 评论2 262013/07 July26

转载自<菩提树下>

http://www.djier.com

般若波罗蜜多心经

观自在菩萨,行深般若波罗蜜多时,照见五蕴皆空,度一切苦厄。

舍利子,色不异空,空不异色,色即是空,空即是色,受想行识,亦复如是。

舍利子,是诸法空相,不生不灭,不垢不净,不增不减。

是故空中无色,无受想行识,无眼耳鼻舌身意,无色声香味触法,无眼界,乃至无意识界。

无无明,亦无无明尽,乃至无老死,亦无老死尽。

无苦集灭道,无智亦无得。

以无所得故,菩提萨埵,依般若波罗蜜多故,心无挂碍,无挂碍故,无有恐怖,远离颠倒梦想,究竟涅磐。

三世诸佛,依般若波罗蜜多故,得阿耨多罗三藐三菩提。

故知般若波罗蜜多,是大神咒,是大明咒,是无上咒,是无等等咒,能除一切苦,真实不虚。

故说般若波罗蜜多咒,即说咒曰:

揭谛揭谛 波罗揭谛 波罗僧揭谛 菩提萨婆诃。

作者  | 2013-7-26 18:04:09 | 阅读(2613) |评论(2) | 阅读全文>>

CitusDB 3.0 release

2014-4-17 14:54:50 阅读31 评论0 172014/04 Apr17

CitusDB发布了3.0的版本, 有一些功能上的更新, 例如大表的JOIN, 不在受到个数和大小的限制.

另外整合了9.3.2的一些特性. 如可写外部表.

有兴趣的朋友可以测试一下.

我以前测试过, 主要的缺陷还是在大表的关联上, 不知道改进多少了.

http://blog.163.com/digoal@126/blog/#m=0&t=1&c=fks_084069085087089068081083086095085080082075083081086071084

http://www.citusdata.com/blog/73-citusdb3-0-release-notes

Created on February 25, 2014Written by Sumedh Pathak

We are excited to announce the general availability of CitusDB

作者  | 2014-4-17 14:54:50 | 阅读(31) |评论(0) | 阅读全文>>

pgpool-II performance lossy

2014-4-16 17:06:47 阅读38 评论0 162014/04 Apr16

经常有人问我pgpool-II做连接池合不合适. 这个要结合业务需求来看, 除了PGPOOL-II本身的性能损失, 它的功能还是很强大的.

因为我以前在某项目上用过这个产品, 对性能有一定的损耗, 不知道现在的版本怎么样了?

所以接下来测试一下最新的pgpool-II3.3.3的性能. 对比不使用连接池的性能.

测试方法很简单, 连接到数据库, 执行 select 1;

测试环境 :

pgpool, pgbench所在服务器硬件, 志强8核1.6G.

postgresql 9.3.3所在服务器硬件, 志强8核2.0G.

vi ~/.pgpass

127.0.0.1:9999:digoal:postgres:postgres

172.16.3.39:1999:digoal:postgres:postgres

测试结果如下 :

测试连接数 使用pgpool-II(tps) 直连数据库(tps) 性能损失(%) 8 8850 44526 80% 16 16896 98001 82.7% 32 26780 139980 80.9% 64 28151 138575 79.7%说明pgpool-II本身处理SQL的TPS极限大概在2.8万左右(CPU耗尽).

作者  | 2014-4-16 17:06:47 | 阅读(38) |评论(0) | 阅读全文>>

bizgres project checkout from pgfoundry, you can used research greenplum

2014-4-16 8:33:32 阅读27 评论0 162014/04 Apr16

自打greenplum被EMC收购以后, 版本管理和附加插件是比以前更好了. emc命名为pivotal, gp作为其中的一个组件. pivotal还包含其他的大数据相关组件如HD, CF, SQL Fire, RabbitMQ等.

问题是, gp是闭源的软件, 所以遇到问题要找根源还比较麻烦, 还好在greenplum闭源之前是开源的.

bizgres就是greenplum的开源版本, 但是2006年以后就闭源了, 后面做了哪些改变只有gp自己知道了.

不过有总比没有好, 大家可以去pgfoundry checkout出来. 以后遇到问题的话可以对照bizgres的代码排错.

为了获得更多的错误信息, 可以开启log_error_verbosity=verbose, 如果是在psql端排错的话, 建议打开\set VERBOSITY verbose.

这样能够看到出错的代码位置, 然后对照bizgres进行排错.

checkout bizgres

Anonymous CVS Access

This project's CVS repository can be checked out through anonymous (pserver) CVS with the following instruction set. The module you wish to check out must be specified as the modulename. When prompted

作者  | 2014-4-16 8:33:32 | 阅读(27) |评论(0) | 阅读全文>>

PostgreSQL nodes's estimate bug? when alter column set statistics 0

2014-4-15 14:56:59 阅读22 评论0 152014/04 Apr15

群里的一位兄弟提到的一个问题, 当列的统计信息开关关闭时, 为什么还会走索引?

有些数据库产品在创建索引时, 会自动给对应的列加上统计信息. 为什么PostgreSQL不可以这样呢?

首先我们来看一下第一个问题, 当列的统计信息开关关闭后, 会发生什么?

创建一个普通表, 不关闭列统计信息.

digoal=# create table t(id int, info text);

CREATE TABLE

digoal=# insert into t select 1,'test' from generate_series(1,1000000);

INSERT 0 1000000

digoal=# analyze t;

ANALYZE

digoal=# select * from pg_stats where tablename ='t';

schemaname | tablename | attname | inherited | null_frac | avg_width | n_distinct | most_common_vals | most_common_freqs | histogra

m_bounds | correlation | most_common_elems | most_common_elem_freqs | elem_count_histogram

-----------

作者  | 2014-4-15 14:56:59 | 阅读(22) |评论(0) | 阅读全文>>

上一篇BLOG我介绍了一下PostgreSQL 9.4新增的一个功能, 支持自动更新设置了安全栅栏的简单视图.

http://blog.163.com/digoal@126/blog/static/163877040201431475019925/

在文章结尾的时候提到leakproof函数和安全栅栏条件一样, 在重写规则时会放到用户的过滤条件之前执行.

因此, 安全栅栏并不能防止leakproof的攻击(当然, 只有超级用户才能创建leakproof函数, 所以也不能说利用leakproof来攻击了. 因为既然有了超级用户权限, 就不需要这么麻烦来获取数据了, 直接读原表得了.).

另外, 使用leakproof函数需要注意的是它的实际执行成本, 如果实际执行成本很高的函数, 又没有特别的需要让它先执行, 那么最好不要设置为leakproof, 因为它不管其他过滤条件, 都是先执行的.

我们可以拿视图攻击的例子来演示这个攻击 :

普通视图的攻击例子 :

digoal=# create table userinfo(id int, groupid int, username text, age int, addr text, email text, phone text);

作者  | 2014-4-14 10:03:15 | 阅读(29) |评论(0) | 阅读全文>>

PostgreSQL 9.4 Make security barrier views automatically updatable

2014-4-14 9:53:24 阅读24 评论0 142014/04 Apr14

PostgreSQL 9.4新增的一个功能, 允许设置了安全栅栏标签的"简单"视图和未设置"安全栅栏"的视图一样自动更新.

简单视图自动更新引入自9.3版本, 具体可参考

http://blog.163.com/digoal@126/blog/static/16387704020134922356437/

9.4 新增该项功能的简要说明 :

Make security barrier views automatically updatable

Views which are marked as security_barrier must have their quals

applied before any user-defined quals are called, to prevent

user-defined functions from being able to see rows which the

security barrier view is intended to prevent them from seeing.

Remove the restriction on security barrier views being automatically

作者  | 2014-4-14 9:53:24 | 阅读(24) |评论(0) | 阅读全文>>

PostgreSQL 9.4新增了几个相当有实用价值的聚合支持.

Provide moving-aggregate support for a bunch of numerical aggregates.

First installment of the promised moving-aggregate support in built-in

aggregates: count(), sum(), avg(), stddev() and variance() for

assorted datatypes, though not for float4/float8.

In passing, remove a 2001-vintage kluge in interval_accum(): interval

array elements have been properly aligned since around 2003, but

nobody remembered to take out this workaround.  Also, fix a thinko

in the opr_sanity tests for moving-aggregate catalog entries.

David Rowley and Florian Pflug, reviewed by Dean Rasheed

Provide moving-aggregate support for boolean aggregates.

作者  | 2014-4-14 7:26:06 | 阅读(24) |评论(0) | 阅读全文>>

查看所有日志>>

 
 
 
 
 
 
 
 

浙江省 杭州市 狮子座

 发消息  写留言

 
Offer free support for PostgreSQL. 帮助更多人了解PostgreSQL.
 
QQ276732431
E-Mail digoal@126.com
博客等级加载中...
今日访问加载中...
总访问量加载中...
最后登录加载中...
 
 
 
 
 

日志分类

 
 
日志分类列表加载中...
 
 
 
 
 

FlagCounter

 
 
模块内容加载中...
 
 
 
 
 

新浪微博

 
 
模块内容加载中...
 
 
 
 
 
 
 
模块内容加载中...
 
 
 
 
 
 
 
模块内容加载中...
 
 
 
 
 
 
 
心情随笔列表加载中...
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

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

创建博客 登录  
 加关注