Tag: google cloud dataflow

Beam / Dataflow 2.2.0 – 从pcollection中提取前n个元素

有没有办法在梁pcollection中提取前n个元素? 文档似乎没有表明任何此类function。 我认为这样的操作首先需要一个全局元素编号赋值然后一个filter – 拥有这个function会很好。 我使用Google DataFlow Java SDK 2.2.0 。

SortValues转换为仅在hadoop环境中运行的Beam中的Java SDK扩展吗?

我在本地机器上尝试使用DirectRunner进行SortValues转换的示例代码(Windows) PCollection<KV<String, KV>> input = … PCollection<KV<String, Iterable<KV>>> grouped = input.apply(GroupByKey.<String, KV>create()); PCollection<KV<String, Iterable<KV>>> groupedAndSorted = grouped.apply(SortValues.create(BufferedExternalSorter.options())); 但我收到错误PipelineExecutionException: java.lang.NoClassDefFoundError: org/apache/hadoop/io/Writable 。 这是否意味着此转换function仅适用于Hadoop环境?

Apache Beam:无法找到gs的注册商

Beam正在使用Google的自动/价值和自动/服务工具。 我想运行带有Dataflow流水线的管道,数据存储在Google云端存储上。 我添加了一个依赖项: org.apache.beam beam-runners-google-cloud-dataflow-java 2.0.0 org.apache.beam beam-sdks-java-extensions-google-cloud-platform-core 2.0.0 我能够从IntelliJ启动管道。 但是当jar通过mvn package编译并使用java -jar运行时会抛出一个错误: java.lang.IllegalStateException: Unable to find registrar for gs fatjar是包含maven-assembly-plugin 。 GcsFileSystemRegistrar类在jar中。

从Apache Beam中的GCS读取文件

我需要从GCS存储桶中读取文件。 我知道我将不得不使用GCS API /客户端库,但我找不到任何与之相关的示例。 我一直在参考GCS文档中的这个链接: GCS客户端库 。 但实际上并没有成功。 如果有人能提供一个真正有用的例子。 谢谢。