Esta página explica como exportar metadados de Metastore do Dataproc.
O recurso de exportação de metadados permite salvar seus metadados em um armazenamento portátil .
Depois de exportar seus dados, você pode importar os metadados para outro Serviço do Dataproc Metastore ou um metastore Hive autogerenciado (HMS).
Sobre a exportação de metadados
Quando você exporta 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 do 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. Quando
você exporta arquivos Avro, o Dataproc Metastore cria um
arquivo <table-name>.avro
para cada tabela no banco de dados.
Para exportar arquivos Avro, seu serviço 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 MySQL, o Dataproc Metastore cria um único arquivo SQL que contém todas as informações da tabela.
Para exportar arquivos do MySQL, seu serviço Metastore do Dataproc deve usar o tipo de banco de dados MySQL. O tipo de banco de dados do Spanner não é compatível com importações do MySQL.
Antes de começar
- Ative o Dataproc Metastore no seu projeto.
- Como entender os requisitos de rede específicas para seu projeto.
- Crie um serviço do Dataproc Metastore.
Funções exigidas
Para receber as permissões necessárias para exportar metadados para a Metastore do Dataproc, peça ao administrador para conceder a você os seguintes papéis do IAM:
-
Para exportar metadados:
-
Editor do metastore do Dataproc (
roles/metastore.editor
) no serviço Metastore do Dataproc -
Administrador do metastore do Dataproc (
roles/metastore.admin
) no serviço Metastore do Dataproc -
Operador de metadados do metastore do Dataproc (
roles/metastore.metadataOperator
) no serviço Metastore do Dataproc
-
Editor do metastore do Dataproc (
-
Para MySQL e Avro, use o objeto do Cloud Storage para exportação:
conceda o papel de Criador de armazenamento (
roles/storage.objectCreator
) à sua conta de usuário e ao agente de serviço do metastore do Dataproc 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 têm as permissões necessárias para exportar metadados para o metastore do Dataproc. Para conferir as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
As seguintes permissões são necessárias para exportar metadados para o metastore do Dataproc:
-
Para exportar metadados:
metastore.services.export
no serviço metastore -
Para usar o objeto do Cloud Storage para exportação no MySQL e no Avro, conceda à conta de usuário e ao agente de serviço do metastore do Dataproc:
storage.objects.create
no bucket do Cloud Storage
Você também pode conseguir estas permissões com papéis personalizados ou e 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 Dataproc Metastore, por exemplo, alterando definições de configuração. No entanto, você ainda pode usá-lo para operações normais, como usá-lo para acessar os metadados do Dataproc anexado ou clusters autogerenciados.
- O recurso de exportação de metadados só exporta metadados. Dados criados por O Apache Hive em tabelas internas não é replicado na exportação.
Para exportar metadados de um serviço Metastore do Dataproc, execute o etapas a seguir.
Console
No console do Google Cloud, abra a página Metastore do Dataproc:
Na página Metastore do Dataproc, clique no nome do serviço. com os metadados que você quer exportar.
A página Detalhes do serviço é aberta.
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 O URI do Cloud Storage para onde exportar os arquivos.
Também é possível inserir o local do bucket no campo de texto fornecido. Usar o seguinte formato:
bucket/object
oubucket/folder/object
.Para iniciar a exportação, clique em Enviar.
Quando terminar, a exportação vai aparecer em uma tabela nos Detalhes do serviço na guia Importar/Exportar.
Quando a exportação for concluída, o metastore do Dataproc automaticamente retorna ao estado ativo, independentemente de a exportação ter sido bem-sucedida ou não.
CLI da gcloud
Para exportar metadados de um serviço, execute o seguinte comando
gcloud metastore services export gcs
:gcloud metastore services export gcs SERVICE \ --location=LOCATION \ --destination-folder=gs://bucket-name/path/to/folder \ --dump-type=DUMP_TYPE
Substitua:
SERVICE
: o nome do serviço Metastore do Dataproc.LOCATION
: a região do Google Cloud em que seus serviço do Dataproc Metastore.bucket-name/path/to/folder
: o Cloud Storage pasta de destino na qual deseja armazenar sua exportação.DUMP_TYPE
: o tipo de despejo do banco de dados a ser gerados pela exportação. Os valores aceitos incluemmysql
eavro
. O valor padrão émysql
.
Verifique se a exportação foi bem-sucedida.
Quando a exportação é concluída, o Dataproc Metastore retorna automaticamente ao estado ativo, independente 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-sucedida ou não.
Conferir o histórico de exportação
Para acessar o histórico de exportação de um serviço Metastore do Dataproc no Console do Google Cloud, siga estas etapas:
- No console do Google Cloud, 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ção.
O histórico mostra as últimas 25 exportações.
A exclusão de um serviço do Dataproc Metastore também exclui todos os histórico de exportações.
Resolver problemas comuns
Confira alguns problemas comuns:
- 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 receber mais ajuda com a solução de problemas comuns, consulte Cenários de erros de importação e exportação.