Mam instancji org.apache.spark.rdd.RDD [MyClass]. Jak można programowo sprawdzić, czy wystąpienie to persist \ inmemory?Jak sprawdzić, czy Spark RDD jest w pamięci?
7
A
Odpowiedz
10
Chcesz RDD.getStorageLevel
. Zwróci ona StorageLevel.None
, jeśli jest pusta. Jest to jednak tylko wtedy, gdy jest zaznaczone do buforowania lub nie. Jeśli chcesz aktualny stan można użyć interfejsu API dla programistów sc.getRDDStorageInfo
lub sc.getPersistentRDD
1
Można zadzwonić rdd.getStorageLevel.useMemory aby sprawdzić, czy jest to w pamięci, czy też nie, co następuje:
scala> myrdd.getStorageLevel.useMemory
res3: Boolean = false
scala> myrdd.cache()
res4: myrdd.type = MapPartitionsRDD[2] at filter at <console>:29
scala> myrdd.getStorageLevel.useMemory
res5: Boolean = true
Thanks Justin na sc. * Funkcje! –