问题标签 [scala-pickling]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scala - 由于 OutOfMemory 无法使用 scala-pickling 进行序列化?
我正在编写代码以使用 java.nio 通道通过网络发送对象和数据,并使用 scala-pickling 进行序列化。经过几天的调试,我发现我的代码的某些部分在 JVM 中生成了 OutOfMemory 错误。那么scala-pickling有什么问题?它不能序列化?
但我真的不知道为什么,我什至没有任何来自 sbt 的提示。这是它的错误信息
scala - 在 APACHE SPARK 中通过 KryoSerializer 和 JavaSerializer 使用 Scala Pickling 序列化
在搜索最佳Serialization
技术时,apache-spark
我在下面的链接
https://github.com/scala/pickling#scalapicklingSerialization
中找到了该框架
,其中的状态scala
将更加快速和自动化。
并Scala Pickling
具有以下优点。(参考 - https://github.com/scala/pickling#what-makes-it-different)
所以,我想知道 this Scala Pickling
( PickleSerializer
) 是否可以用于apache-spark
代替KryoSerializer
.
- 如果是,则需要进行哪些必要的更改。(示例会有所帮助)
- 如果没有为什么不。(请解释)
提前致谢。如果我错了,请原谅我。
注意:我正在使用scala
语言来编码apache-spark
(版本。1.4.1)应用程序。
scala - Unpickle/convert pyspark RDD of Rows 到 Scala RDD[Row]
我想要实现的是执行 Scala 代码。将结果 Scala RDD[Row] 转换为 PySparkRDD of Rows。执行一些 python 操作并将 pySpark Rows 的 RDD 转换回 Scala 的 RDD[Row]。为了让 RDD 到 pySpark RDD,我这样做:在 Scala 中,我有这个方法
稍后在 pySpark 中,我创建了新的 RDD 调用
我最终得到了 pySpark Rows 的 RDD。我想恢复那个过程。我可以通过访问 rdd._jrdd 轻松获得 Scala 的 JavaRDD[Array[Byte]]。我的主要问题是我不知道如何将其转换/取消plickle 回 RDD [Row]。我试过了
和
两者都以类似的异常崩溃
我知道我可以轻松地在 Scala 和 Python 之间来回传递 DF,但我的记录没有统一的模式。我正在使用 Row 的 RDD,因为我虽然已经有了一个可以重用的腌制器并且它可以工作,但到目前为止只有一个方向。
python - PicklingError:无法序列化对象:将汇率 API 调用到我的 pyspark 数据帧中时
我是databricks和pyspark的初学者。目前,我有一个包含 3 列的 pyspark 数据框:
- 日期
- 数量
- 货币
我想将金额列转换为欧元并用当天的汇率计算。为此,我使用汇率 API 通过将日期和货币作为参数来查找汇率。
首先,我定义了一个调用 API 来查找汇率的函数
这是我的代码:
然后,我定义了一个 UDF 来在我的数据框中调用这个函数:
当我尝试执行这部分时,我得到了我绝对不明白的酸洗错误......
你能帮我解决这个问题吗?
非常感谢