Postgres2015全国用户大会将于11月20至21日在北京丽亭华苑酒店召开。本次大会嘉宾阵容强大,国内顶级PostgreSQL数据库专家将悉数到场,并特邀欧洲、俄罗斯、日本、美国等国家和地区的数据库方面专家助阵:
- Postgres-XC项目的发起人铃木市一(SUZUKI Koichi)
- Postgres-XL的项目发起人Mason Sharp
- pgpool的作者石井达夫(Tatsuo Ishii)
- PG-Strom的作者海外浩平(Kaigai Kohei)
- Greenplum研发总监姚延栋
- 周正中(德哥), PostgreSQL中国用户会创始人之一
- 汪洋,平安科技数据库技术部经理
- ……
|
云为我们提供了便利,降低了开发和运维的成本。
但是也必须思考一个问题,我们的云组件之间的的网络延迟?
(相比较局域网的服务器和服务器之间)
你可以用各种方法测试验证一下。
以往我们把数据放在数据库,数据库只提供简单的增删改查,大部分的业务逻辑放在应用服务器来完成。
但是在云时代,如果我们还这样的话,应用服务器和数据库间如果多次交互,会浪费大量的时间。
我们应该充分利用数据库的编程能力,例如PostgreSQL,是一个功能非常强大的数据库,我们完全可以把业务逻辑放在数据库处理,
例如使用plv8, plpython, plpgsql, plperl, pltcl等函数语言,
数据类型支持也非常的丰富,例如jsonb, GIS, text, 异构类型,Key-Value类型...等,
索引支持btree, hash, gin , gist, spgist, brin等索引类型,
SQL语法层面支持 窗口查询,递归查询,grouping set, 等高级语法。
JOIN方面,支持hash join , merge join , nestloop join ,
优化器方面,支持自定义成本因子, CBO , 遗传算法等。
另外PostgreSQL更强大之处,可以利用GPU加速运算,包括隐式加速,也可以显示加速。
隐式指数据库自身提供的custom scan provider编程接口,已经有实现了的插件。
显式,指的是过程语言和CUDA的结合,例如PyCUDA。
还可以用Julia来方便的实现并行编程。
PostgreSQL完全可以满足大多数业务的需求。
功能如此强大的数据库,只用来做增删改查,是不是有点浪费呢,充分利用它的功能,当网络是瓶颈的时候,让业务逻辑和数据靠近,可以大大提升效率,降低RT。mapreduce也是这种思想。
当然,另一方面,我们还需要考虑业务和数据的耦合,太耦合了也不好。