当前位置: 首页 > 知识库问答 >
问题:

Apache Flink-每小时聚合数据的每日聚合

宗政洋
2023-03-14

我有一个窗口化的每小时聚合的数据流。

Datastream ds=.....

  SingleOutputStreamOperator<HourlyAggregated> hourly =  
  ds.keyBy(HourlyCountersAggregation.KEY_SELECTOR)
             .timeWindow(Time.hours(1))
             .aggregate(new HourlyCountersAggregation());

共有1个答案

商华藏
2023-03-14

我认为您可以尝试分叉作业图,以便在接收器和下一个窗口中都使用每小时聚合数据的输出(这样您就可以在每小时聚合的基础上进行每日聚合,从而节省计算时间)。类似于:

SingleOutputStreamOperator<HourlyAggregated> hourly = ds.keyBy(HourlyCountersAggregation.KEY_SELECTOR)
         .timeWindow(Time.hours(1))
         .aggregate(new HourlyCountersAggregation());

hourly.addSink(...);

SingleOutputStreamOperator<HourlyAggregated> daily = hourly.timeWindow(Time.hours(24))
         .trigger(CountEventTrigger.of(24))
         .aggregate(...);
 类似资料:
  • 问题内容: 我想过滤出字段“ A”等于“ a”的文档,并且我想同时考虑字段“ A”,当然不包括先前的过滤器。我知道您可以将过滤器“置于查询之外”,以便在不应用该过滤器的情况下获得构面,例如: elasticsearch 单反 这非常好,但是如果我有多个滤镜和构面,每个滤镜和构面应该互相排斥,会发生什么?例: 也就是说,对于方面AI,希望保留除A:a以外的所有过滤器,对于方面B希望保留除B:b以外的

  • 我想过滤掉字段'a'等于'a'的文档,同时我想对字段'a'进行刻面处理,当然不包括前面的过滤器。我知道您可以将筛选器放在查询的“外部”,以便在不应用该筛选器的情况下获得方面,例如: 弹性搜索 索尔尔 也就是说,对于方面A,我希望保留除A:A以外的所有过滤器,对于方面B,我希望保留除B:B以外的所有过滤器,以此类推。最明显的方法是执行n个查询(n个方面中的每一个),但我不想这样做。

  • 流处理的教科书示例是一个带有时间戳的单词计数程序。使用以下数据示例 但是,我还没有找到一个在滚动时间窗口上的单词计数程序的例子,即我希望每小时产生一个从时间开始的每个单词的单词计数: 对于Apache Flink或任何其他流处理库,这是可能的吗?谢谢! 编辑: 马里奥,路易吉,马里奥,马里奥,维尔马,弗雷德,鲍勃,鲍勃,马里奥,丹,迪伦,迪伦,弗雷德,马里奥,马里奥,卡尔,班巴姆,萨默,安娜,安娜

  • 使用不同的聚合函数查看数值非常有用。Tableau支持许多不同的聚合类型,例如: 总和 平均 计数 唯一值 中位数 最小值 最大值 方差 总体方差 标准偏差 总体标准差 属性 维度 在Tableau中,您可以创建聚合维度和度量。每当向视图添加度量时,默认情况下会对这些度量应用聚合。使用的聚合类型取决于视图的上下文。 如果您不熟悉数据库,请参阅Tableau手册以获取这些聚合类型的详细定义。默认情况

  • 问题内容: 通常,您需要显示数据库项目的列表以及有关每个项目的特定汇总号。例如,当您在“堆栈溢出”中键入标题文本时,将出现“相关问题”列表。该列表显示了相关条目的标题以及每个标题的响应数量的单个汇总数量。 我有一个类似的问题,但需要多个聚合。我想根据用户选项以3种格式中的任何一种显示项目列表: 我的商品的名称(共15个,我拥有的13个) 我的商品的名称(共15个) 我的商品的名称(我拥有13个)

  • 有人能帮我把这个mongoDB聚合转换成Spring数据mongo吗? 我试图在每个邀请函文件中获得未提醒与会者的电子邮件列表。 让它在mongo shell中运行,但需要在Spring data mongo中运行。 我的shell查询 ) 正如你们所看到的,这是我提出的,它在管道的项目和团队运作中并没有像预期的那样发挥作用。下面给出了生成的查询。 聚合对象创建 它创建以下查询 聚合对象生成的查询