大家好, 我对这种大窗口的滑动窗口有一个思路,我主要使用的是Flink SQL,方法不知道对不对,大家讨论下哈:
1.将24小时窗口,1分钟的滑动,转化为1分钟的滚动窗口,将结果输出,然后输出给24小时滑动窗口1分钟输出。 2.直接的滑动窗口,好像是需要将所有的明细数据都保存在内存中。(这一点不知对不对,大神们帮忙看看) 3.使用滚动窗口,进行预聚合,滚动窗口的数据在窗口输出后,不用保存明细数据,减少了内存使用。 4.如果TPS过高,可以减少滚动窗口的大小,但是需要保证输出到的滑动窗口,一次滑动的窗口大小是滚动窗口的N倍。 祝 顺利 ——————— Johnny.Z 原始邮件 发件人: 戴嘉诚<a773807...@gmail.com> 收件人: user-zh<user-zh@flink.apache.org> 发送时间: 2019年9月4日(周三) 22:51 主题: Re: 如何优化flink内存? 这里我建议你是用key process然后在里面用state来管理和聚集数据,这样会节省很大一部分内存 Yifei Qi <qyf...@gmail.com<mailto:qyf...@gmail.com>>于2019年9月4日 周三20:07写道: > 大家好: > > > > 不知道大家在使用flink时遇到过内存消耗过大的问题么? > > > > 我们最近在用flink算一些实时的统计数据, 但是内存消耗很大, 不知道有没有人知道如何优化? > > > > 具体情况是这样的: > > 准备的测试数据模拟一天时间内3万个用户的5万条数据. 原始数据一共是100M. > > 按照用户进行分组. > > 计算两个滑动窗口任务:一个是近1小时, 每5秒滑动一次的窗口. 一个是近24小时, 每1分钟滑动一次的窗口. > > > > > > flink运行在3个节点后, 内存合计就用了5G. > > > > > > flink如此消耗内存, 不知道是它本来就这么吃内存, 还是我使用的有问题. > > > > > > 顺祝商祺 > > > -- > > > Qi Yifei > [image: https://]about.me/qyf404 > < > https://about.me/qyf404?promo=email_sig&utm_source=product&utm_medium=email_sig&utm_campaign=gmail_api > > >