udf(用户定义函数)如何在 pyspark 中工作?

ashish14

我想了解 udf 在 pyspark 中的工作原理。每次我们在数据帧上使用 udf 时,python shell 是否会打开?

哈吉特·库马尔

UDF 可以通过两种方式提供给 PySpark。

  1. UDF 可以在 Scala 中定义并使用 PySpark 运行
  2. UDF 可以在 Python 中定义并由 PySpark 运行

在第一种情况下,UDF 将作为 Executor JVM 本身的一部分运行,因为 UDF 本身是在 Scala 中定义的。无需创建python进程。

在第二种情况下,每个执行程序都会启动一个 python 进程。数据将在 executor 和 python 之间序列化和反序列化以进行处理。这会导致大量的性能影响和火花作业的开销。

通常首选使用基于 Scala 的 UDF,因为它们会给你更好的性能。

在 spark 2.x 中有一种叫做 Pandas Udf(矢量化 UDF)的东西。它们是使用 Pandas 实现的(使用 apache 箭头转换数据帧)。基本上你用python编写代码,但该代码被转换并使用pandas运行。这大大提高了python中UDF的性能。我希望这有帮助。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

PySpark SQL中的用户定义的聚合函数

来自分类Dev

如何在用户定义的函数(又名 udf)中返回 Pandas.Series?

来自分类Dev

pyspark mapPartitions函数如何工作?

来自分类Dev

如何在PySpark的UDF中返回“元组类型”?

来自分类Dev

当函数在Pandas数据框中工作时,PySpark udf返回null

来自分类常见问题

pyspark中的熊猫UDF

来自分类Dev

pyspark中的熊猫UDF

来自分类Dev

pySpark 中的 udf for 循环

来自分类Dev

在PySpark中重新加载UDF

来自分类Dev

如何在pyspark中按工作日对数据框进行排序?

来自分类Dev

SPARK中的用户定义函数(UDF)是否以分布式方式工作?

来自分类Dev

如何在pyspark中使用pandas_udf拆分数据帧中的字符串

来自分类Dev

如何在javascript中调用窗口对象的用户定义函数

来自分类Dev

如何在php中编写mysql用户定义函数

来自分类Dev

如何在R中的用户定义函数上应用向量

来自分类Dev

如何在用户定义的函数中避免重复

来自分类Dev

如何在C ++中调用用户定义的函数?

来自分类Dev

如何正确使用 Pyspark 中的 ChiSquareTest 函数?

来自分类Dev

在pyspark中包装Java函数

来自分类Dev

在 pyspark 数据帧中读取 Hive 分区 ORC 表时,逻辑和物理计划如何工作

来自分类Dev

关于在Spark Scala中创建用户定义函数(UDF)

来自分类Dev

VARIABLE =(){函数定义}如何在bash中工作

来自分类Dev

如何在Redshift中创建自定义的聚合UDF函数?

来自分类Dev

如何在Hive中重新加载更新的自定义UDF函数?

来自分类Dev

如何在PySpark中读取Avro文件

来自分类Dev

如何在pyspark中获取Python库?

来自分类Dev

如何在pyspark脚本中访问SparkContext

来自分类Dev

如何在pyspark中拆除CLOB?

来自分类Dev

如何在PySpark中运行.sql文件

Related 相关文章

热门标签

归档