Lorsque vous activez le cache du cluster Dataproc, le cluster met en cache les données Cloud Storage auxquelles vos tâches Spark accèdent fréquemment.
Avantages
- Amélioration des performances : la mise en cache peut améliorer les performances des tâches en réduisant le temps consacré à la récupération des données à partir du stockage.
- Coûts de stockage réduits:étant donné que les données "chaudes" sont mises en cache sur un disque local, moins d'appels d'API sont effectués dans le stockage pour récupérer des données.
Limites et exigences
- Le cache ne s'applique qu'aux jobs Spark Dataproc.
- Seules les données Cloud Storage sont mises en cache.
- La mise en cache ne s'applique qu'aux clusters qui répondent aux exigences suivantes :
- Le cluster comporte un maître et
n
nœuds de calcul (les clusters haute disponibilité et à nœud unique ne sont pas acceptés). - Cette fonctionnalité est disponible dans Dataproc sur Compute Engine.
versions d'image
2.0.72+ or 2.1.20+
- Chaque nœud de cluster doit être associé à des SSD locaux avec l'interface NVMe (Non-Volatile Memory Express) (les disques persistants ne sont pas compatibles). Les données sont mises en cache dans NVME SSD locaux uniquement.
- Le cluster utilise default VM service account (Compte de service de VM par défaut) pour l'authentification. Comptes de service de VM personnalisés ne sont pas acceptés.
- Le cluster comporte un maître et
Activer la mise en cache du cluster
Vous pouvez activer la mise en cache des clusters lorsque vous créez un cluster Dataproc à l'aide de la console Google Cloud, de Google Cloud CLI ou de l'API Dataproc.
console Google Cloud
- Ouvrez la page Dataproc Créer un cluster sur Compute Engine dans la console Google Cloud.
- Le panneau Configurer le cluster est sélectionné. Dans la section Améliorations des performances de Spark, sélectionnez Activer le cache Google Cloud Storage.
- Après avoir confirmé et spécifié les détails du cluster dans les panneaux de création de cluster, cliquez sur Créer.
CLI gcloud
Exécutez la commande gcloud dataproc clusters create en local dans une fenêtre de terminal ou dans Cloud Shell à l'aide de la propriété de cluster dataproc:dataproc.cluster.caching.enabled=true
.
Exemple :
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 REST
Définissez SoftwareConfig.properties pour inclure la propriété de cluster "dataproc:dataproc.cluster.caching.enabled": "true"
dans le cadre d'une requête clusters.create.