首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有没有办法在PySpark中设置pandas_udf的最小批处理大小?

有没有办法在PySpark中设置pandas_udf的最小批处理大小?
EN

Stack Overflow用户
提问于 2019-05-22 05:22:16
回答 1查看 853关注 0票数 3

我正在使用pandas_udf在我的spark集群上应用机器学习模型,并且对预定义通过箭头发送到UDF的最小记录数很感兴趣。

我按照databricks教程学习了大部分的UDF...https://docs.databricks.com/applications/deep-learning/inference/resnet-model-inference-tensorflow.html

在本教程中,我将spark会议设置为具有最大批量大小和启用箭头。我可以很容易地设置最大批处理大小,但是我想知道是否有类似的方法来设置UDF将处理的最小批处理大小?

代码语言:javascript
复制
spark = SparkSession.builder.appName('App').getOrCreate()

spark.conf.set("spark.sql.execution.arrow.enabled", "true")

spark.conf.set('spark.sql.execution.arrow.maxRecordsPerBatch', PyArrowBatchSize)

我运行的是spark版本2.4.3和python 3.6.0。

EN

回答 1

Stack Overflow用户

发布于 2020-05-07 07:24:10

无法在Spark docs中设置最小批处理大小,但在这种情况下,max有点误导。这应该类似于“剩余部分之前的批处理大小”。

例如:如果您的数据集中有100132行,并且maxRecordsPerBatch是10000,那么您将得到10批大小为10000的批次,以及一批大小为10000的批次。(如果您有多个执行者,您可能会有额外的批次和剩余物,这取决于事物的拆分方式。)

您可以知道您的近似min批处理大小取决于您的余数,否则所有批处理大小都将恰好是最小批处理大小。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56246531

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档