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

Apache-Beam/Google-Cloud-Dataflow中的排序与限制

樊熠彤
2023-03-14
-----------------------------------------
|   sale_id |   product_id  |   amount  |
|-----------|---------------|-----------|
|     1     |       a       |     1     |
|-----------|---------------|-----------|
|     2     |       b       |     12    |
|-----------|---------------|-----------|
|     3     |       c       |     3     |
|-----------|---------------|-----------|
|     4     |       d       |     100   |
|-----------|---------------|-----------|
|     5     |       e       |     4     |
-----------------------------------------

在apache Beam中是如何做到这一点的?

谢了!

共有1个答案

丁雅惠
2023-03-14

更新:

如果您想尝试的话,BeamSQL[2]支持“按限制排序”。

如果您使用的是Java SDK,那么可以使用内置的TOP transform[1]来按限制排序。TOP transform同时允许DESC和ASC。

 类似资料:
  • 我有一个Beam应用程序,它在本地使用directrunner成功运行,并在本地控制台的代码中提供了所有日志信息。但是当我尝试在google cloud dataflow环境中运行它时,我只在本地控制台上看到这些日志信息,而在google cloud console for dataflow job上没有显示,在StackDriver日志页面中也没有。 下面是我从本地控制台运行数据流运行器代码的操

  • 我在beam.groupbykey()中遇到了一个情况,我加载了一个行数为42.854行的文件。 由于业务规则,我需要执行一个GroupByKey();然而,在完成它的执行后,我注意到我得到了几乎双行。如下所示: GroupByKey()之前的步骤: 向你问好,朱利亚诺·梅德罗斯

  • 我使用的是Beam Java SDK2.9.0,我的工作读自Kafka中的步骤。我的工作在直跑方面很好。当我在Dataflow上部署它时,工作被卡住了,我看不到任何进展。数据流监视UI显示

  • 但是当我将它部署到Google Cloud DataFlow时,我得到了以下错误: 查看出现此错误的源代码,我认为这可能是由于某些名称包含一些奇怪的编码字符,所以我不顾一切地尝试使用代码上看到的,但没有成功。 关于为什么这个管道在本地成功执行,但在数据流运行器上失败,有什么想法吗?

  • 我想知道Apache Beam.Google DataFlow是否足够聪明,能够识别数据流图中的重复转换,并只运行一次。例如,如果我有2个分支: null

  • 这首先与这篇文章高度相关->如何在Dataflow中进行这种类型的测试(在twitter上称为功能测试)? 我们在生产中有一些类似的代码 这是编写可调试的Apache-Beam/Dataflow代码的最佳方式吗?我们可以逐步通过这些代码并轻松地看到我们的bug在哪里? 是否有其他方法可以方便地调试它,因为我怀疑在应用stuff时,“真正的执行”发生在该方法之后? 谢谢,迪恩