[
https://issues.apache.org/jira/browse/BEAM-6021?focusedWorklogId=167224&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-167224
]
ASF GitHub Bot logged work on BEAM-6021:
----------------------------------------
Author: ASF GitHub Bot
Created on: 18/Nov/18 08:47
Start Date: 18/Nov/18 08:47
Worklog Time Spent: 10m
Work Description: aviemzur commented on issue #6998: [BEAM-6021]
Registred more internal classes for kryo serialization
URL: https://github.com/apache/beam/pull/6998#issuecomment-439677038
M2C: We made sure that everywhere that we need to serialize **data** we
didn’t let Spark do it with its serializer, which defaults to Java unless
configured otherwise by Spark's `spark.serializer` configuration. Spark users
often configure this to be Kryo instead of Java, so we made sure to encode the
data using Beam’s encoders, then passed Byte[] so when Spark serializes data
before it is transmitted to other machines, it uses its serializer (default
Kryo) to serialize a `Byte[]` which is always serializable by the serializer
(Whether Java or Kryo).
If other classes, which are not the user's data are serialized by Kryo, and
we're sure that they are always serializable by Kryo, that's fine.
I'm not sure this change actually makes the classes registered to be
serialized by Kryo. Do we have tests to show this?
IIRC this is controlled by the `spark.serializer` configuration.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
Issue Time Tracking
-------------------
Worklog Id: (was: 167224)
Time Spent: 1h 10m (was: 1h)
> Use Kryo spark.serializer instead of JavaSerializer
> ---------------------------------------------------
>
> Key: BEAM-6021
> URL: https://issues.apache.org/jira/browse/BEAM-6021
> Project: Beam
> Issue Type: Improvement
> Components: runner-spark
> Affects Versions: 2.8.0
> Reporter: Marek Simunek
> Assignee: Marek Simunek
> Priority: Major
> Fix For: 2.9.0
>
> Time Spent: 1h 10m
> Remaining Estimate: 0h
>
> By default is set spark.serializer=org.apache.spark.serializer.JavaSerializer.
> Because all objects from user are using Beam coders it will affect only
> internal objects for spark translation.
> So why not use more optimal {{org.apache.spark.serializer.KryoSerializer}}
> and force spark runner contributors to register classes in
> {{BeamSparkRunnerRegistrator}} by setting
> {{spark.kryo.registrationRequired=true)}}.
> More information about benefits of [kryo
> serialization|https://spark.apache.org/docs/latest/tuning.html#data-serialization]
> over java serializer.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)