Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google cloud dataflow 在执行文本输入时,有没有办法限制记录?_Google Cloud Dataflow_Apache Beam_Apache Beam Io - Fatal编程技术网

Google cloud dataflow 在执行文本输入时,有没有办法限制记录?

Google cloud dataflow 在执行文本输入时,有没有办法限制记录?,google-cloud-dataflow,apache-beam,apache-beam-io,Google Cloud Dataflow,Apache Beam,Apache Beam Io,我有一个用例,我正在读取数十亿条记录,但我需要限制记录以查看数据行为。我有一个pardo,我正在分析有限的数据,并在此基础上执行一些功能。但我读了整整10亿条记录,然后在Pardo内部应用限制来获得10000条记录。由于我的管道正在读取10亿条记录,因此会影响管道性能。在使用TextIO读取文本文件时,是否有任何方法可以限制记录 您从哪里读取记录?我认为答案取决于此 如果它们都来自同一个文件,那么我认为Beam不支持对其中的一部分进行采样。如果它们是,例如,来自不同的文件,也许您可以设计您使用的

我有一个用例,我正在读取数十亿条记录,但我需要限制记录以查看数据行为。我有一个pardo,我正在分析有限的数据,并在此基础上执行一些功能。但我读了整整10亿条记录,然后在Pardo内部应用限制来获得10000条记录。由于我的管道正在读取10亿条记录,因此会影响管道性能。在使用TextIO读取文本文件时,是否有任何方法可以限制记录

您从哪里读取记录?我认为答案取决于此


如果它们都来自同一个文件,那么我认为Beam不支持对其中的一部分进行采样。如果它们是,例如,来自不同的文件,也许您可以设计您使用的文件匹配模式,以便只读取其中的一些?

您可能必须尝试使用
示例
转换,如
示例.any(10000)
。也许,它会工作得更快。

是的,我对隔离文件使用文件匹配,但在某些情况下,我会使用非共享文件。我正在尝试在非共享文件中进行采样。您能提供更多信息吗?你用哪种语言?您使用哪种方法读取beam?@rmesteves我使用的是使用java的云数据流。我正在使用TextIO.read方法从GCS读取数据。该方法适用于输入PCollection,因为我必须读取所有文件,然后才能应用Sample.any,所以这就是我目前正在做的。而不是读取所有的文件,我希望它是做的同时阅读TextIO。我认为这是不可能的TextIO。根据您的数据知识和分布情况,预处理文件(选择要读取的文件)可能会更容易。