gpt4 book ai didi

pandasUDF 和 pyarrow 0.15.0

转载 作者:行者123 更新时间:2023-12-02 07:03:47 27 4
gpt4 key购买 nike

我最近开始在 EMR 集群上运行的许多 pyspark 作业上遇到一堆错误。错误是

java.lang.IllegalArgumentException
at java.nio.ByteBuffer.allocate(ByteBuffer.java:334)
at org.apache.arrow.vector.ipc.message.MessageSerializer.readMessage(MessageSerializer.java:543)
at org.apache.arrow.vector.ipc.message.MessageChannelReader.readNext(MessageChannelReader.java:58)
at org.apache.arrow.vector.ipc.ArrowStreamReader.readSchema(ArrowStreamReader.java:132)
at org.apache.arrow.vector.ipc.ArrowReader.initialize(ArrowReader.java:181)
at org.apache.arrow.vector.ipc.ArrowReader.ensureInitialized(ArrowReader.java:172)
at org.apache.arrow.vector.ipc.ArrowReader.getVectorSchemaRoot(ArrowReader.java:65)
at org.apache.spark.sql.execution.python.ArrowPythonRunner$$anon$1.read(ArrowPythonRunner.scala:162)
at org.apache.spark.sql.execution.python.ArrowPythonRunner$$anon$1.read(ArrowPythonRunner.scala:122)
at org.apache.spark.api.python.BasePythonRunner$ReaderIterator.hasNext(PythonRunner.scala:406)
at org.apache.spark.InterruptibleIterator.hasNext(InterruptibleIterator.scala:37)
at org.apache.spark.sql.execution.python.ArrowEvalPythonExec$$anon$2.<init>(ArrowEvalPythonExec.scala:98)
at org.apache.spark.sql.execution.python.ArrowEvalPythonExec.evaluate(ArrowEvalPythonExec.scala:96)
at org.apache.spark.sql.execution.python.EvalPythonExec$$anonfun$doExecute$1.apply(EvalPythonExec.scala:127)...

它们似乎都发生在 pandas 系列的 apply 函数中。我发现的唯一变化是 pyarrow 已于周六(05/10/2019)更新。测试似乎适用于 0.14.1

所以我的问题是,是否有人知道这是否是新更新的 pyarrow 中的错误,或者是否存在一些重大变化,导致 pandasUDF 将来难以使用?

最佳答案

这不是一个错误。我们在 0.15.0 中进行了一项重要的协议(protocol)更改,使 pyarrow 的默认行为与 Java 中旧版本的 Arrow 不兼容 - 您的 Spark 环境似乎使用的是旧版本。

您的选择是

  • 在使用 Python 的位置设置环境变量 ARROW_PRE_0_15_IPC_FORMAT=1
  • 暂时降级到 pyarrow < 0.15.0。

希望 Spark 社区能够很快将 Java 升级到 0.15.0,这样这个问题就会消失。

这在 http://arrow.apache.org/blog/2019/10/06/0.15.0-release/ 中进行了讨论

关于pandasUDF 和 pyarrow 0.15.0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58273063/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com