diff options
author | Kan Zhang <kzhang@apache.org> | 2014-06-16 23:31:31 -0700 |
---|---|---|
committer | Patrick Wendell <pwendell@gmail.com> | 2014-06-16 23:31:31 -0700 |
commit | d81c08bac9756045865ed6490252fbb3f7591142 (patch) | |
tree | ed0810ddff7a28bd45bc39ebc463b03d8876eebb /python | |
parent | 7afa912e747c77ebfd10bddf7bda2e3190fdeb9c (diff) | |
download | spark-d81c08bac9756045865ed6490252fbb3f7591142.tar.gz spark-d81c08bac9756045865ed6490252fbb3f7591142.tar.bz2 spark-d81c08bac9756045865ed6490252fbb3f7591142.zip |
[SPARK-2130] End-user friendly String repr for StorageLevel in Python
JIRA issue https://issues.apache.org/jira/browse/SPARK-2130
This PR adds an end-user friendly String representation for StorageLevel
in Python, similar to ```StorageLevel.description``` in Scala.
```
>>> rdd = sc.parallelize([1,2])
>>> storage_level = rdd.getStorageLevel()
>>> storage_level
StorageLevel(False, False, False, False, 1)
>>> print(storage_level)
Serialized 1x Replicated
```
Author: Kan Zhang <kzhang@apache.org>
Closes #1096 from kanzhang/SPARK-2130 and squashes the following commits:
7c8b98b [Kan Zhang] [SPARK-2130] Prettier epydoc output
cc5bf45 [Kan Zhang] [SPARK-2130] End-user friendly String representation for StorageLevel in Python
Diffstat (limited to 'python')
-rw-r--r-- | python/pyspark/rdd.py | 3 | ||||
-rw-r--r-- | python/pyspark/storagelevel.py | 9 |
2 files changed, 12 insertions, 0 deletions
diff --git a/python/pyspark/rdd.py b/python/pyspark/rdd.py index ddd22850a8..bb4d035edc 100644 --- a/python/pyspark/rdd.py +++ b/python/pyspark/rdd.py @@ -1448,9 +1448,12 @@ class RDD(object): def getStorageLevel(self): """ Get the RDD's current storage level. + >>> rdd1 = sc.parallelize([1,2]) >>> rdd1.getStorageLevel() StorageLevel(False, False, False, False, 1) + >>> print(rdd1.getStorageLevel()) + Serialized 1x Replicated """ java_storage_level = self._jrdd.getStorageLevel() storage_level = StorageLevel(java_storage_level.useDisk(), diff --git a/python/pyspark/storagelevel.py b/python/pyspark/storagelevel.py index 7b6660eab2..3a18ea54ea 100644 --- a/python/pyspark/storagelevel.py +++ b/python/pyspark/storagelevel.py @@ -36,6 +36,15 @@ class StorageLevel: return "StorageLevel(%s, %s, %s, %s, %s)" % ( self.useDisk, self.useMemory, self.useOffHeap, self.deserialized, self.replication) + def __str__(self): + result = "" + result += "Disk " if self.useDisk else "" + result += "Memory " if self.useMemory else "" + result += "Tachyon " if self.useOffHeap else "" + result += "Deserialized " if self.deserialized else "Serialized " + result += "%sx Replicated" % self.replication + return result + StorageLevel.DISK_ONLY = StorageLevel(True, False, False, False) StorageLevel.DISK_ONLY_2 = StorageLevel(True, False, False, False, 2) StorageLevel.MEMORY_ONLY = StorageLevel(False, True, False, True) |