Github user cloud-fan commented on a diff in the pull request:
https://github.com/apache/spark/pull/19285#discussion_r163526188
--- Diff:
core/src/main/scala/org/apache/spark/storage/memory/MemoryStore.scala ---
@@ -702,6 +645,83 @@ private[spark] class MemoryStore(
}
}
+private trait ValuesHolder[T] {
+ def storeValue(value: T): Unit
+ def estimatedSize(roughly: Boolean): Long
--- End diff --
an example
```
class DeserializedValuesHolder extends ValuesHolder {
...
def getBuilder = new ValuesBuilder {
val valuesArray = vector.toArray
def preciseSize = SizeEstimator.estimate(valuesArray)
def buid = ...
}
}
class SerializedValuesHolder extends ValuesHolder {
...
def getBuilder = new ValuesBuilder {
serializationStream.close()
def preciseSize = bbos.size
def build = ...
}
}
```
---
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]