小编Tao*_*iao的帖子

如何让Spark使用Kryo序列化对象?

我想将一个对象从驱动程序节点传递到RDD所在的其他节点,以便RDD的每个分区都可以访问该对象,如下面的代码片段所示.

object HelloSpark {
    def main(args: Array[String]): Unit = {
        val conf = new SparkConf()
                .setAppName("Testing HelloSpark")
                .set("spark.serializer", "org.apache.spark.serializer.KryoSerializer")
                .set("spark.kryo.registrator", "xt.HelloKryoRegistrator")

        val sc = new SparkContext(conf)
        val rdd = sc.parallelize(1 to 20, 4)
        val bytes = new ImmutableBytesWritable(Bytes.toBytes("This is a test"))

        rdd.map(x => x.toString + "-" + Bytes.toString(bytes.get) + " !")
            .collect()
            .foreach(println)

        sc.stop
    }
}

// My registrator
class HelloKryoRegistrator extends KryoRegistrator {
    override def registerClasses(kryo: Kryo) = {
        kryo.register(classOf[ImmutableBytesWritable], new HelloSerializer())
    }
}

//My serializer 
class HelloSerializer extends …
Run Code Online (Sandbox Code Playgroud)

serialization kryo apache-spark

7
推荐指数
1
解决办法
3204
查看次数

Python ftplib:如何在列表中存储`FTP.retrlines`的结果?

我想检索文件的目录名称,然后使用该方法ftplib.retrlines('NLST' + path).

它会在目录中打印所有文件的名称path.但我想将这些文件的名称存储在容器中,例如列表,而不是在控制台中打印它们.怎么做 ?

python ftp ftplib

3
推荐指数
2
解决办法
5223
查看次数

标签 统计

apache-spark ×1

ftp ×1

ftplib ×1

kryo ×1

python ×1

serialization ×1