开发者社区 > 大数据与机器学习 > 人工智能平台PAI > 正文

如下,请问机器学习PAI的这个问题怎么解决?

请教一个flinksql 问题,要求是每来一条输出一次结果,计算一个数值按照group id,现在发现我一次发多条数据的时候,可能会触发一起计算,不是一条条的,有啥办法处理嘛

展开
收起
乐天香橙派 2023-11-14 10:37:36 42 0
1 条回答
写回答
取消 提交回答
  • 在Flink SQL中,可以使用窗口函数(Window Function)来实现每条数据单独计算的需求。具体来说,可以使用ROW_NUMBER()窗口函数为每个分组内的数据分配一个唯一的序号,然后根据这个序号进行计算。

    以下是一个示例:

    SELECT
      id,
      group_id,
      value,
      -- 使用ROW_NUMBER()窗口函数为每个分组内的数据分配一个唯一的序号
      ROW_NUMBER() OVER (PARTITION BY group_id ORDER BY id) AS row_num,
      -- 根据序号计算结果
      value * row_num AS result
    FROM
      your_table;
    

    这样,当有新的数据到来时,Flink会为每个分组内的数据分配一个唯一的序号,并根据这个序号进行计算,从而实现每条数据单独计算的需求。

    2023-11-30 13:48:00
    赞同 展开评论 打赏

热门讨论

热门文章

相关电子书

更多
大规模机器学习在蚂蚁+阿里的应用 立即下载
阿里巴巴机器学习平台AI 立即下载
微博机器学习平台架构和实践 立即下载