首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Presto for循环

Presto for循环
EN

Stack Overflow用户
提问于 2017-06-15 04:28:39
回答 1查看 5.2K关注 0票数 1

我是第一次接触presto,我想知道是否有任何方法可以使用for循环。我有一个按日期聚合数据的查询,当我运行它时,它抛出了一个错误:超过了30 of的最大内存大小。如果循环不是一个选项,我可以使用其他建议。

我使用的查询:

代码语言:javascript
复制
select  dt as DATE_KPI,brand,count(distinct concat(cast(post_visid_high as varchar),
         cast(post_visid_low as varchar)))as kpi_value
from hive.adobe.tbl 
  and dt >= date '2017-05-15'  and dt <= date '2017-06-13' 
group by 1,2
EN

回答 1

Stack Overflow用户

发布于 2017-06-15 13:17:49

假设您使用的是Hive,您可以将源数据写到一个按品牌进行存储桶的表中,然后使用WHERE "$bucket" % 32 = <N>处理存储桶组。

否则,您可以将查询分成n个查询,然后在每个查询中处理1/n的“品牌”。你使用WHERE abs(from_big_endian_64(xxhash64(to_utf8(brand)))) % 32 = <N>来包装这些品牌。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44554180

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档