Cuando habilitas el almacenamiento en caché del clúster de Dataproc, el clúster almacena en caché los datos de Cloud Storage a los que suelen acceder tus trabajos de Spark.
Ventajas
- Rendimiento mejorado: El almacenamiento en caché puede mejorar el rendimiento del trabajo, ya que reduce la cantidad de tiempo que se dedica a recuperar datos del almacenamiento.
- Costos de almacenamiento reducidos: Debido a que los datos activos se almacenan en caché en el disco local, se realizan menos llamadas a la API al almacenamiento para recuperar datos.
Limitaciones y requisitos
- El almacenamiento en caché se aplica solo a trabajos de Spark de Dataproc.
- Solo los datos de Cloud Storage se almacenan en caché.
- El almacenamiento en caché solo se aplica a los clústeres que cumplen con los siguientes requisitos:
- El clúster tiene un trabajador principal y
n
trabajadores (no se admiten clústeres de alta disponibilidad (HA) ni nodo único). - Esta función está disponible en las versiones de imagen
2.0.72+ or 2.1.20+
de Dataproc en Compute Engine. - Cada nodo del clúster debe tener SSD locales conectados a la interfaz NVME (memoria no volátil exprés) (los discos persistentes (PD) no son compatibles). Los datos se almacenan en caché solo en los SSD locales de NVME.
- El clúster usa la cuenta de servicio de VM predeterminada para la autenticación. Las cuentas de servicio de VM personalizadas no son compatibles.
- El clúster tiene un trabajador principal y
Habilita el almacenamiento en caché del clúster
Puedes habilitar el almacenamiento en caché del clúster cuando creas un clúster de Dataproc con Google Cloud CLI o la API de Dataproc.
Consola
Por el momento, no se admite la habilitación del almacenamiento en caché del clúster desde la consola de Google Cloud.
gcloud CLI
Ejecuta el comando gcloud dataproc clusters create de forma local en una ventana de la terminal o en Cloud Shell mediante la propiedad de clúster dataproc:dataproc.cluster.caching=true
.
Ejemplo:
gcloud dataproc clusters create CLUSTER_NAME \ --region=REGION \ --properties dataproc:dataproc.cluster.caching.enabled=true \ --num-master-local-ssds=2 \ --master-local-ssd-interface=NVME \ --num-worker-local-ssds=2 \ --worker-local-ssd-interface=NVME \ other args ...
API de REST
Configura SoftwareConfig.properties para incluir la propiedad de clúster "dataproc:dataproc.cluster.caching": "true"
como parte de una solicitud clusters.create.