Quando você ativa o armazenamento em cache do cluster do Dataproc, o cluster armazena em cache os dados do Cloud Storage acessados com frequência pelos jobs do Spark.
Vantagens
- Melhor desempenho: o armazenamento em cache pode melhorar o desempenho do job reduzindo a quantidade do tempo gasto na recuperação de dados do armazenamento.
- Custos de armazenamento reduzidos: como os dados ativos são armazenados em cache no disco local, menos chamadas de API são feitas para o armazenamento para recuperar dados.
Limitações e requisitos
- A armazenagem em cache se aplica apenas a jobs do Spark do Dataproc.
- Apenas os dados do Cloud Storage são armazenados em cache.
- O armazenamento em cache só se aplica a clusters que atendem aos seguintes requisitos:
- O cluster tem um mestre e
n
workers (Não há suporte para clusters de alta disponibilidade (HA, na sigla em inglês) e de nó único. - Esse recurso está disponível no Dataproc no Compute Engine
versões de imagem
2.0.72+ or 2.1.20+
- Cada nó de cluster precisa ter SSDs locais anexado ao Memória Express não volátil (NVME, na sigla em inglês) interface do usuário (discos permanentes (PDs, na sigla em inglês) não são compatíveis). Os dados são armazenados em cache no NVME somente SSDs locais.
- O cluster usa a conta de serviço de VM padrão para autenticação. Contas de serviço de VM personalizadas não são compatíveis.
- O cluster tem um mestre e
Ativar o armazenamento em cache do cluster
É possível ativar o armazenamento em cache do cluster ao criar um cluster do Dataproc usando o console do Google Cloud, a Google Cloud CLI ou a API Dataproc.
Console do Google Cloud
- Abra o Dataproc Criar um cluster no Compute Engine no console do Google Cloud.
- O painel Configurar cluster está selecionado. Na na seção Melhorias de desempenho do Spark, selecione Ativar o armazenamento em cache do Google Cloud Storage.
- Depois de confirmar e especificar os detalhes do cluster nos painéis de criação, clique em Criar.
CLI da gcloud
Execute o comando gcloud dataproc clusters create
localmente em uma janela de terminal ou no
Cloud Shell
usando a dataproc:dataproc.cluster.caching.enabled=true
cluster property.
Exemplo:
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
Defina SoftwareConfig.properties
incluir o "dataproc:dataproc.cluster.caching.enabled": "true"
propriedade do cluster
como parte de um
clusters.create
solicitação.