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 Dataproc também cria uma preparação do Cloud Storage e um bucket temporário do Cloud Storage no projeto ou reutiliza buckets de preparo e temporários criados pelo Dataproc 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 resultados do comando gcloud dataproc clusters diagnose da CLI do gcloud.
Bucket temporário: usado para armazenar dados temporários de clusters e jobs, como os arquivos de histórico do Spark e do MapReduce.
Se você não especificar um bucket temporário ou de preparo ao criar um cluster, O Dataproc define um local do Cloud Storage nos EUA, na Ásia, ou EU para os buckets de preparo e temporários do seu cluster de acordo com a zona do Compute Engine em que o cluster está implantado. e, em seguida, cria e gerencia esses buckets por local para envolvidos no projeto. Os buckets temporários e de teste criados pelo Dataproc são compartilhados entre clusters na mesma região e criados com uma Retenção de exclusão reversível do Cloud Storage definida como 0 segundo.
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 a seus arquivos de dependência (arquivos com extensão ".jar" localizados na pasta de bucket de preparo) para programar a remoção dos arquivos de dependência quando eles não estiverem mais necessários para os clusters.
Criar seus próprios buckets temporários e de teste
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 Dataproc usará como o bucket de preparo e temporário do cluster.
Comando gcloud
Execute o comando gcloud dataproc clusters create
com as
sinalizações --bucket
e/ou
--temp-bucket
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 campos ClusterConfig.configBucket
e
ClusterConfig.tempBucket
em um clusters.create
para especificar os buckets de preparo e temporários do cluster.
Console
No console do Google Cloud, abra o app Dataproc Criar um cluster página. Selecione o painel "Personalizar cluster" e use o campo "Armazenamento de arquivos" para especificar ou selecionar o bucket de preparo do cluster.
Observação: no momento, não é possível especificar um bucket temporário usando o console do Google Cloud.
O Dataproc usa uma estrutura de pastas definida para os buckets do Cloud Storage anexados aos clusters. O Dataproc também permite anexar mais de um cluster a um bucket do Cloud Storage. A estrutura de pastas usada para salvar a saída do driver do job no Cloud Storage é:
cloud-storage-bucket-name - google-cloud-dataproc-metainfo - list of cluster IDs - list of job IDs - list of output logs for a job
É possível usar a ferramenta de linha de comando gcloud
, a API Dataproc ou
Console do Google Cloud para listar o nome dos buckets de preparo e temporários de um cluster.
Console
- \Veja os detalhes do cluster, que incluem o nome do bucket de preparo do cluster, no Clusters do Dataproc no console do Google Cloud.
- No console do Google Cloud Navegador do Cloud Storage filtre os resultados que contêm "dataproc-temp-".
Comando gcloud
Execute o comando gcloud dataproc clusters describe
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 ...