Cloudera的集群:26个节点,每个节点256GB的内存
当前的查询很简单:
select * from order_detail
where
cast(trd_date as timestamp) > cast ('2014-10-30' as timestamp) and
cast(trd_date as timestamp) < cast ('2015-01-01' as timestamp) and
cat = 'FUSION' and DEST in ('XCBF','XCBG','XDVF','CBF')
1. 有没有可能把这个
cast(trd_date as timestamp) > cast ('2014-10-30' as timestamp) and
cast(trd_date as timestamp) < cast ('2015-01-01' as timestamp)
时间段的数据先过滤到一个临时表里面,然后从这个小得多的临时的表再继续过滤得出结果?
2. 如果没有建临时表的权限(我只是管理人员,用户是完全分开的,用户一般是只读权限),是不是除了加内存外就没解了?
3. 数据库里还有20多个类似的表,以后肯定还要加入一些join,想想都头疼。不知道有没有可能run得出来?时间都好说,花个几个小时甚至一天都是可以理解的。
4. 我其实刚刚发了我的第一个贴,可是不知道是什么缘故没有显示出来,所以重发一遍,对不起啊。
非常感谢。