Quando cria um cluster, o HDFS é usado como o sistema de ficheiros predefinido. Pode substituir este comportamento definindo o defaultFS como um contentor do Cloud Storage. Por predefinição, o Dataproc também cria um contentor de preparação do Cloud Storage e um contentor temporário do Cloud Storage no seu projeto ou reutiliza os contentores de preparação e temporários criados pelo Dataproc a partir de pedidos de criação de clusters anteriores.
Recipiente de preparação: usado para preparar dependências de tarefas de cluster, saída do controlador de tarefas, e ficheiros de configuração do cluster. Também recebe resultados da recolha de dados de diagnóstico de instantâneos.
Recipiente temporário: usado para armazenar dados de tarefas e clusters efémeros, como ficheiros do histórico do Spark e do MapReduce. Também armazena dados de diagnóstico de pontos de verificação recolhidos durante o ciclo de vida de um cluster.
Se não especificar um contentor de preparação ou temporário quando cria um cluster, o Dataproc define uma localização do Cloud Storage nos EUA, na Ásia ou na UE para os contentores de preparação e temporários do cluster de acordo com a zona do Compute Engine onde o cluster está implementado e, em seguida, cria e gere estes contentores ao nível do projeto por localização. Os contentores de preparação e temporários criados pelo Dataproc são partilhados entre clusters na mesma região e são criados com uma duração de retenção de eliminação reversível do Cloud Storage definida como 0 segundos. Se especificar os seus próprios contentores de preparação e temporários, considere ajustar a retenção de eliminação reversível para reduzir os custos de armazenamento incorridos por objetos eliminados reversivelmente.
O contentor temporário contém dados efémeros e tem um TTL de 90 dias. O contentor de preparação, que pode conter dados de configuração e ficheiros de dependência necessários para vários clusters, não tem um TTL. No entanto, pode aplicar uma regra do ciclo de vida aos seus ficheiros de dependência (ficheiros com uma extensão do nome de ficheiro ".jar" localizados na pasta do segmento de preparação) para agendar a remoção dos seus ficheiros de dependência quando já não forem necessários pelos seus clusters.
Crie os seus próprios contentores de preparação e temporários
Em vez de depender da criação de um contentor de preparação e temporário predefinido, pode especificar contentores do Cloud Storage existentes que o Dataproc vai usar como contentor de preparação e temporário do cluster.
comando gcloud
Execute o comando gcloud dataproc clusters create
com as flags
--bucket
e/ou
--temp-bucket
localmente numa janela de terminal ou no
Cloud Shell
para especificar o contentor de preparação 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
num pedido clusters.create
para especificar os contentores de preparação e temporários do cluster.
Consola
Na Google Cloud consola, abra a página do Dataproc Criar um cluster. Selecione o painel Personalizar cluster e, de seguida, use o campo Armazenamento de ficheiros para especificar ou selecionar o contentor de preparação do cluster.
Nota: atualmente, a especificação de um bucket temporário através da Google Cloud consola não é suportada.
O Dataproc usa uma estrutura de pastas definida para contentores do Cloud Storage anexados a clusters. O Dataproc também suporta a associação de mais de um cluster a um contentor do Cloud Storage. A estrutura de pastas usada para guardar a saída do controlador de tarefas 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
Pode usar a ferramenta de linha de comandos gcloud
, a API Dataproc ou a consolaGoogle Cloud para listar o nome dos contentores de preparação e temporários de um cluster.
Consola
- \Veja os detalhes do cluster, que incluem o nome do contentor de preparação do cluster, na página Clusters do Dataproc na consola Google Cloud .
- Na página Google Cloud consola Navegador do Cloud Storage, filtre os resultados que contêm "dataproc-temp-".
comando gcloud
Execute o comando
gcloud dataproc clusters describe
localmente numa janela de terminal ou no
Cloud Shell.
Os contentores de preparação e temporários associados ao seu cluster estão listados no resultado.
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 contentores de preparação e temporários do cluster.
{ "projectId": "vigilant-sunup-163401", "clusterName": "cluster-name", "config": { "configBucket": "dataproc-...", ... "tempBucket": "dataproc-temp-...", }
defaultFS
Pode definir core:fs.defaultFS
para uma localização de contentor no Cloud Storage (gs://defaultFS-bucket-name
) para definir o Cloud Storage como o sistema de ficheiros predefinido. Isto também define core:fs.gs.reported.permissions
, a autorização comunicada devolvida pelo conector do Cloud Storage para todos os ficheiros, como 777
.
Se o Cloud Storage não estiver definido como o sistema de ficheiros predefinido, é usado o HDFS e a propriedade core:fs.gs.reported.permissions
devolve 700
, o valor predefinido.
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 ...