Recent Posts

数据库选型之 - 大象十八摸 - 致 架构师、开发者

6 minute read

背景 数据库对于一家企业来说,相比其他基础组件占据比较核心的位置。 有很多企业由于最初数据库选型问题,导致一错再错,甚至还有为此付出沉痛代价的。 数据库的选型一定要慎重,但是这么多数据库,该如何选择呢? 我前段时间写过一篇关于数据库选型的文章,可以参考如下 《数据库选型思考》 另外,PostgreSQL...

PostgreSQL MySQL 数据类型映射

5 minute read

背景 通常一家企业会有比较多的数据库品种,最为常见的如MySQL, PostgreSQL。 那么在不同的产品之间,如果有数据的相互同步,就涉及到类型的映射了。 对于PostgreSQL来说,可以使用PostgreSQL的mysql_fdw外部插件来实现同步,产品设计会简化很多。 而对于MySQL来说,可能就...

PostgreSQL 表和列权限(ACL)解读

3 minute read

背景 如何查看数据库中的表的相应权限,已经赋予给哪些用户了。 另外,PostgreSQL还可以针对列进行赋权,还可以适应行安全策略,所以如何查看某张表的某些列的相应权限被赋予给哪些用户了。 还有其他的对象,如视图、函数、语言等,他们的权限被赋予给哪些数据库用户了呢? 这些通过psql \dp很容易实现,但是...

[转自叶大师博文] tpcc-mysql安装、使用、结果解读

2 minute read

背景 很多的MySQL测试都是拿sysbench做的,甚至很多人认为数据库的测试都应该用sysbench来做。但实际上并非如此。 sysbench的test case偏简单,也没有建立什么测试标准,它是一个个人软件,由于MySQL的风靡使得很多人认识了sysbench。 事实上sysbench并不是数据库行业...

PostgreSQL Oracle 兼容性之 - 内核自带的兼容函数

3 minute read

背景 PostgreSQL功能上基本可以和Oracle对齐,只是一些语法或者函数名不一样,所以为了做到兼容,有一些兼容包和兼容函数的出现。 PostgreSQL自带了一些Oracle兼容函数,如果你觉得不够意思,可以通过orafce插件继续扩展PostgreSQL与Oracle的兼容性(本文不涉及orafce包...

PostgreSQL 10.0 preview 流复制增强 - 流式接收端在线压缩redo

3 minute read

背景 虽然现在磁盘已经很廉价,大多数时候不需要压缩了。 但是在一些嵌入式系统,或者一些未扩容的产品环境中,压缩还是非常有必要的。 特别是数据变化大、或者数据增量大的场景,例如物联网(IoT),每天单库可能新增TB级的增量。 比如 《PostgreSQL 如何潇洒的处理每天上百TB的数据增量》 指的就是IoT...

宝剑赠英雄 - 任意组合字段等效查询, 探探PostgreSQL多列展开式B树 (GIN)

26 minute read

背景 很多人小时候都有一个武侠梦,独孤求败更是金庸武侠小说里的一位传奇人物。 纵横江湖三十馀载,杀尽仇寇奸人,败尽英雄豪杰,天下更无抗手,无可奈何,惟隐居深谷,以雕为友。 呜呼,生平求一敌手而不可得,诚寂寥难堪也。 独孤老前辈的佩剑描写非常有意思,从使用的佩剑,可以看出一个人的武功修为。 第一柄是一柄青光闪...