[ https://issues.apache.org/jira/browse/SPARK-1813?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13996390#comment-13996390 ]
Mridul Muralidharan commented on SPARK-1813: -------------------------------------------- Writing a KryoRegistrator is the only requirement - rest are done as part of initialization anyway. Registering classes with kryo is non trivial except for degenerate cases : for example, we have classes we have to use java read/write Object serialization, which support kyro serialization, which support java's external serialization, generated classes, etc. And we would need a registrator ... ofcourse, it could be argued this is corner case, though I dont think so. > Add a utility to SparkConf that makes using Kryo really easy > ------------------------------------------------------------ > > Key: SPARK-1813 > URL: https://issues.apache.org/jira/browse/SPARK-1813 > Project: Spark > Issue Type: Improvement > Components: Spark Core > Affects Versions: 1.0.0 > Reporter: Sandy Ryza > > It would be nice to have a method in SparkConf that makes it really easy to > use Kryo and register a set of classes. without defining you > Using Kryo currently requires all this: > {code} > import com.esotericsoftware.kryo.Kryo > import org.apache.spark.serializer.KryoRegistrator > class MyRegistrator extends KryoRegistrator { > override def registerClasses(kryo: Kryo) { > kryo.register(classOf[MyClass1]) > kryo.register(classOf[MyClass2]) > } > } > val conf = new SparkConf().setMaster(...).setAppName(...) > conf.set("spark.serializer", "org.apache.spark.serializer.KryoSerializer") > conf.set("spark.kryo.registrator", "mypackage.MyRegistrator") > val sc = new SparkContext(conf) > {code} > It would be nice if it just required this: > {code} > SparkConf.setKryo(Array(classOf[MyFirstClass, classOf[MySecond])) > {code} -- This message was sent by Atlassian JIRA (v6.2#6252)