Quando você cria um cluster, o HDFS é usado como o sistema de arquivos padrão. É possível modificar esse comportamento definindo "defaultFS" como um bucket do Cloud Storage. Por padrão, o Serviço Gerenciado para Apache Spark também cria um preparo do Cloud Storage e um bucket temporário do Cloud Storage no projeto ou reutiliza buckets atuais de preparo e temporários criados pelo Serviço Gerenciado para Apache Spark a partir de solicitações de criação de cluster anteriores.
Intervalo de preparação: usado para preparar dependências de jobs de cluster, saída do driver de jobs, e arquivos de configuração de cluster. Também recebe a saída da coleta de dados de diagnóstico de snapshot.
Bucket temporário: usado para armazenar dados temporários de clusters e jobs, como os arquivos de histórico do Spark e do MapReduce. Também armazena dados de diagnóstico de checkpoint coletados durante o ciclo de vida de um cluster.
Se você não especificar um bucket de preparo ou temporário ao criar um cluster, o Serviço Gerenciado para Apache Spark definirá um local do Cloud Storage nos EUA, na ÁSIA, ou na UE para os buckets de preparo e temporários do cluster de acordo com a zona do Compute Engine em que o cluster é implantado e, em seguida, cria e gerencia esses buckets por projeto. Os buckets de preparo e temporários criados pelo Serviço Gerenciado para Apache Spark são compartilhados entre clusters na mesma região e são criados com uma duração de retenção de exclusão reversível do Cloud Storage definida como 0 segundos. Se você especificar seus próprios buckets de preparo e temporários, considere ajustar a retenção de exclusão reversível para reduzir os custos de armazenamento incorridos por objetos excluídos de maneira reversível.
O bucket temporário contém dados temporários e tem um TTL de 90 dias. O bucket de preparo, que pode conter dados de configuração e arquivos de dependência necessários para vários clusters, não tem um TTL. No entanto, é possível aplicar uma regra de ciclo de vida aos arquivos de dependência (arquivos com uma extensão de nome de arquivo ".jar" localizados na pasta do bucket de preparo) para programar a remoção dos arquivos de dependência quando eles não forem mais necessários para os clusters.
Criar seus próprios buckets de preparo e temporários
Em vez de depender da criação de um bucket de preparo padrão e temporário, especifique os buckets atuais do Cloud Storage que o Serviço Gerenciado para Apache Spark usará como o bucket de preparo e temporário do cluster.
Google Cloud Console do
Para especificar ou selecionar o bucket de preparo do cluster:
- Abra a página Criar cluster.
- Clique em Configuração adicional para expandir essa seção.
- Edite Personalização e outros.
- No painel que é aberto, na seção Bucket de preparo do Cloud Storage, especifique um bucket.
Observação: não é possível especificar um bucket temporário usando o Google Cloud console não é compatível.
CLI gcloud
Execute o comando gcloud dataproc clusters create com as
--bucket
e/ou
--temp-bucket
sinalizações localmente em uma janela do terminal ou no
Cloud Shell
para especificar o bucket de preparo e/ou temporário do cluster.
gcloud dataproc clusters create cluster-name \ --region=region \ --bucket=bucket-name \ --temp-bucket=bucket-name \ other args ...
API REST
Use os ClusterConfig.configBucket e
ClusterConfig.tempBucket
campos
em um clusters.create
para especificar os buckets de preparo e temporários do cluster.
O Serviço Gerenciado para Apache Spark usa uma estrutura de pastas definida para os buckets do Cloud Storage anexados aos clusters e também oferece suporte à anexação de mais de um cluster a um bucket. A estrutura de pastas usada para salvar a saída do driver do job no Cloud Storage é a seguinte:
cloud-storage-bucket-name
- google-cloud-dataproc-metainfo
- list of cluster IDs
- list of job IDs
- list of output logs for a job
Use a ferramenta de linha de comando gcloud, a API Dataproc ou
Google Cloud console para listar o nome dos buckets temporários e de preparo de um cluster.
Google Cloud Console do
- É possível conferir os detalhes do cluster, que incluem o nome do bucket de preparo do cluster, na página " Clusters " no Google Cloud console.
- Na página Google Cloud console Navegador do Cloud Storage, filtre os resultados que contêm "dataproc-temp-".
CLI gcloud
Execute o
gcloud dataproc clusters describe
comando localmente em uma janela de terminal ou no
Cloud Shell.
Os buckets de preparo e temporários associados ao cluster são listados na
saída.
gcloud dataproc clusters describe cluster-name \
--region=region \
...
clusterName: cluster-name
clusterUuid: daa40b3f-5ff5-4e89-9bf1-bcbfec ...
config:
configBucket: dataproc-...
...
tempBucket: dataproc-temp...
API REST
Chame clusters.get para listar os detalhes do cluster, incluindo o nome dos buckets temporários e de preparo do cluster.
{
"projectId": "vigilant-sunup-163401",
"clusterName": "cluster-name",
"config": {
"configBucket": "dataproc-...",
...
"tempBucket": "dataproc-temp-...",
}
defaultFS
É possível definir core:fs.defaultFS como um local de bucket no Cloud Storage (gs://defaultFS-bucket-name) para definir o Cloud Storage como o sistema de arquivos padrão. Isso também define core:fs.gs.reported.permissions, a permissão relatada pelo conector do Cloud Storage para todos os arquivos, como 777.
Se o Cloud Storage não estiver definido como o sistema de arquivos padrão, o HDFS será usado, e a propriedade core:fs.gs.reported.permissions retornará 700, o valor padrão.
gcloud dataproc clusters create cluster-name \ --properties=core:fs.defaultFS=gs://defaultFS-bucket-name \ --region=region \ --bucket=staging-bucket-name \ --temp-bucket=temp-bucket-name \ other args ...