Explicación detallada de las diferencias entre las funciones de caché, persistencia y puntos de control en Spark

inserte la descripción de la imagen aquí

Directorio de artículos

La siguiente es una descripción detallada de las tres funciones y una comparación entre ellas:

  1. cache()

    • cache()Una forma especial de yes persist(), utilizando el método cache(), el nivel de almacenamiento predeterminado es MEMORY_ONLY. Esto significa que los datos del RDD se almacenarán en la memoria del nodo. Si el espacio de memoria no es suficiente para contener todos los datos, algunos de los datos que no se almacenan en la memoria caché se volverán a calcular cuando sea necesario en lugar de guardarse en el disco. Para MEMORY_AND_DISKeste nivel de almacenamiento, si el espacio de memoria no es suficiente para contener todos los datos, la parte desbordada de los datos se guardará en el disco, lo que se puede lograr persist(StorageLevel.MEMORY_AND_DISK)mediante .
    • Cuando se calculan los datos de un RDD, se mantendrán en la memoria del nodo para que se pueda acceder rápidamente a ellos en operaciones posteriores.
    • No corta las dependencias del RDD.
  2. persist(storageLevel: StorageLevel)

    • persist()Permite al usuario seleccionar diferentes niveles de almacenamiento (incluyendo MEMORY_ONLY, MEMORY_AND_DISK, , MEMORY_ONLY_SERetc.).
    • con cache()clase

Supongo que te gusta

Origin blog.csdn.net/m0_47256162/article/details/132380349
Recomendado
Clasificación