DPF(data partioning feature):


优点:水平扩展,scale out,支持0-999个node。share nothing体系结构。


缺点:

1、上层应用是BI,分析处理,决策支持,数据集市,其SQL语句是复杂的、多样的(毕竟select * from big_table这样的SQL语句只存在于实验环境和教学环境),这对表的分区键的选择带来很大难度,因为不论怎么选择,总有SQL语句的查询谓词不会满足表并置的条件,从而导致,在数据库分区之间大量移动数据(广播连接,定向连接,重分区连接),降低性能。

2、目前对于处理分析大数据(海量数据),有许多平台可选,Hadoop,Spark,DB2的DPF不会是第一选择。

3、即使作为数据仓库,也可用通过水平分库的方式来解决数据容量、性能的问题,也不一定要选DPF。

4、在现在数据量爆发式增长的环境,尤其是电商,有的数据库都是以每天200G的速度增长,DPF可以选择增加node,但是DPF如何解决分区之间数据重新分发的问题。DPF也不能实现“将记录插入到指定的数据库分区”的需求。

5、DPF维护成本高,懂得DB2的人少,懂DB2 DPF的人就更少。DPF的技术本身也不好维护,圈子小,出个什么问题,周围可以询问的人都没有,网络上也找不到相似的问题。

6、DB2 DPF是ESE的特性,收费。


So,Question:你还会选择DPF吗?