Nesta página, explicamos como exportar metadados do metastore do Dataproc.
O recurso de exportação de metadados permite salvar os metadados em um formato de armazenamento portátil.
Depois de exportar os dados, você pode importar os metadados para outro serviço do metastore do Dataproc ou para um metastore do Hive (HMS) autogerenciado.
Sobre a exportação de metadados
Ao exportar metadados do metastore do Dataproc, o serviço armazena os dados em um dos seguintes formatos de arquivo:
- Um conjunto de arquivos Avro armazenados em uma pasta.
- Um único arquivo dump MySQL armazenado em uma pasta do Cloud Storage.
Avro
As exportações baseadas em Avro são compatíveis apenas com as versões 2.3.6 e 3.1.2 do Hive. Ao
exportar arquivos Avro, o metastore do Dataproc cria um
<table-name>.avro arquivo para cada tabela no banco de dados.
Para exportar arquivos Avro, o serviço do metastore do Dataproc pode usar o tipo de banco de dados MySQL ou Spanner.
MySQL
As exportações baseadas em MySQL são compatíveis com todas as versões do Hive. Ao exportar arquivos MySQL, o metastore do Dataproc cria um único arquivo SQL que contém todas as informações da tabela.
Para exportar arquivos MySQL, o serviço do metastore do Dataproc precisa usar o tipo de banco de dados MySQL. O tipo de banco de dados Spanner não oferece suporte a importações do MySQL.
Antes de começar
- Ative o metastore do Dataproc no seu projeto.
- Entenda os requisitos de rede específicos do seu projeto.
- Crie um serviço Metastore do Dataproc.
Funções exigidas
Para receber as permissões necessárias para exportar metadados para o metastore do Dataproc, peça ao administrador para conceder a você os seguintes papéis do IAM:
-
Para exportar metadados, faça o seguinte:
- Editor do metastore do Dataproc (
roles/metastore.editor) no serviço do metastore do Dataproc - Administrador do metastore do Dataproc (
roles/metastore.admin) no serviço do metastore do Dataproc - Operador de metadados do metastore do Dataproc (
roles/metastore.metadataOperator) no serviço do metastore do Dataproc
- Editor do metastore do Dataproc (
-
Para MySQL e Avro, para usar o objeto do Cloud Storage para exportação:
conceda à sua conta de usuário e ao agente de serviço do Dataproc Metastore o papel de criador de objetos do Storage (
roles/storage.objectCreator) no bucket do Cloud Storage
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Esses papéis predefinidos contêm as permissões necessárias para exportar metadados para o metastore do Dataproc. Para acessar as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
As permissões a seguir são necessárias para exportar metadados para o metastore do Dataproc:
-
Para exportar metadados:
metastore.services.exportno serviço do metastore -
Para MySQL e Avro, para usar o objeto do Cloud Storage para exportação, conceda à sua conta de usuário e ao agente de serviço do Dataproc Metastore:
storage.objects.createno bucket do Cloud Storage
Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.
Para mais informações sobre papéis e permissões específicos do metastore do Dataproc, consulte Visão geral do IAM do metastore do Dataproc.Exportar metadados
Antes de exportar os metadados, observe as seguintes considerações:
- Enquanto uma exportação está em execução, não é possível atualizar um serviço do metastore do Dataproc, por exemplo, alterando as configurações. No entanto, ainda é possível usá-lo para operações normais, como acessar os metadados de clusters autogerenciados ou do Serviço Gerenciado para Apache Spark anexados.
- O recurso de exportação de metadados exporta apenas metadados. Os dados criados pelo Apache Hive em tabelas internas não são replicados na exportação.
Para exportar metadados de um serviço do metastore do Dataproc, siga estas etapas.
Console
No Google Cloud console do, abra a página Metastore do Dataproc:
Na página Metastore do Dataproc, clique no nome do serviço do qual você quer exportar metadados.
A página Detalhes do serviço é aberta.
Página de detalhes do serviço do metastore do Dataproc Na barra de navegação, clique em Exportar.
A página Exportar metadados é aberta.
Na seção Destino, escolha MySQL ou Avro.
No campo URI de destino, clique em Procurar e selecione o URI do Cloud Storage para onde você quer exportar os arquivos.
Também é possível inserir o local do bucket no campo de texto fornecido. Use o seguinte formato:
bucket/objectoubucket/folder/object.Para iniciar a exportação, clique em Enviar.
Quando terminar, a exportação vai aparecer em uma tabela na página Detalhes do serviço na guia Importar/Exportar.
Quando a exportação é concluída, o metastore do Dataproc retorna automaticamente ao estado ativo, independentemente de a exportação ter sido bem-sucedida ou não.
CLI gcloud
Para exportar metadados de um serviço, execute o seguinte
gcloud metastore services export gcscomando:gcloud metastore services export gcs SERVICE \ --location=LOCATION \ --destination-folder=gs://bucket-name/path/to/folder \ --dump-type=DUMP_TYPESubstitua:
SERVICE: o nome do serviço do metastore do Dataproc.LOCATION: a Google Cloud região em que o serviço do metastore do Dataproc reside.bucket-name/path/to/folder: a pasta de destino do Cloud Storage em que você quer armazenar a exportação.DUMP_TYPE: o tipo de despejo de banco de dados a ser gerado pela exportação. Os valores aceitos incluemmysqleavro. O valor padrão émysql.
Verifique se a exportação foi bem-sucedida.
Quando a exportação é concluída, o metastore do Dataproc retorna automaticamente ao estado ativo, independentemente de a exportação ter sido bem-sucedida ou não.
REST
Siga as instruções da API para exportar metadados para um serviço usando o APIs Explorer.
Quando a exportação é concluída, o serviço retorna automaticamente ao estado ativo, independentemente de ter sido bem-sucedido ou não.
Visualizar histórico de exportações
Para visualizar o histórico de exportação de um serviço do metastore do Dataproc no Google Cloud console, siga estas etapas:
- No Google Cloud console do, abra a página Metastore do Dataproc.
Na barra de navegação, clique em Importar/Exportar.
O histórico de exportação aparece na tabela Histórico de exportações.
O histórico mostra as últimas 25 exportações.
A exclusão de um serviço do metastore do Dataproc também exclui todo o histórico de exportação associado.
Resolver problemas comuns
Alguns problemas comuns incluem o seguinte:
- O agente de serviço ou a conta de usuário não tem as permissões necessárias.
- O job falha porque o arquivo do banco de dados é muito grande.
Para mais ajuda na solução de problemas comuns, consulte Cenários de erros de importação e exportação.