Migre um metastore do MySQL autogerido para o Dataproc Metastore
Esta página mostra como migrar o metastore MySQL autogerido externo para o Dataproc Metastore criando um ficheiro de despejo do MySQL e importando os metadados para um serviço Dataproc Metastore existente.
Antes de começar
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Dataproc Metastore API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles.
Funções necessárias
Para receber as autorizações de que precisa para criar um Dataproc Metastore e importar um metastore do MYSQL, peça ao seu administrador para lhe conceder as seguintes funções do IAM:
-
Para criar um serviço e importar metadados:
-
Editor de Metastore do Dataproc (
roles/metastore.editor
) no projeto -
Administrador de Metastore do Dataproc (
roles/metastore.admin
) no projeto.
-
Editor de Metastore do Dataproc (
-
Para usar o objeto do Cloud Storage (ficheiro de captura SQL) para importação:
-
Visualizador de objetos do Storage (
roles/storage.objectViewer
) no agente de serviço de Metastore do Dataproc. Por exemplo,service-CUSTOMER_PROJECT_NUMBER@gcp-sa-metastore.iam.gserviceaccount.com
. -
Visualizador de objetos de armazenamento (
roles/storage.objectViewer
) na conta de utilizador.
-
Visualizador de objetos do Storage (
Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.
Estas funções predefinidas contêm as autorizações necessárias para criar um Dataproc Metastore e importar um metastore do MYSQL. Para ver as autorizações exatas que são necessárias, expanda a secção Autorizações necessárias:
Autorizações necessárias
São necessárias as seguintes autorizações para criar um Dataproc Metastore e importar um metastore do MYSQL:
-
Para criar um serviço:
metastore.services.create
no projeto. -
Para importar metadados:
metastore.imports.create
no projeto. -
Para usar o objeto do Cloud Storage (ficheiro de captura SQL) para importação:
-
storage.objects.get
no agente de serviço de Metastore do Dataproc. Por exemplo,service-CUSTOMER_PROJECT_NUMBER@gcp-sa-metastore.iam.gserviceaccount.com
-
storage.objects.get
na conta do utilizador.
-
Também pode conseguir estas autorizações com funções personalizadas ou outras funções predefinidas.
Para mais informações sobre as funções e as autorizações específicas do Dataproc Metastore, consulte o artigo Faça a gestão do acesso ao Dataproc com a IAM.Crie um serviço Dataproc Metastore
As instruções seguintes demonstram como criar um serviço Dataproc Metastore para o qual pode migrar o seu ficheiro de despejo de SQL.
Consola
Na Google Cloud consola, abra a página Criar serviço:
A página de criação do serviço do Dataproc Metastore No campo Nome do serviço, introduza
example-service
.Selecione a Localização dos dados. Para obter informações sobre como selecionar uma região, consulte o artigo Localizações na nuvem.
Para outras opções de configuração do serviço, use as predefinições fornecidas.
Para criar e iniciar o serviço, clique no botão Enviar.
O novo serviço é apresentado na lista de serviços.
gcloud
Execute o seguinte comando gcloud metastore services create
para criar um serviço:
gcloud metastore services create example-service \ --location=LOCATION
Substitua LOCATION
pela região do Compute Engine
onde planeia criar o serviço. Certifique-se de que o Dataproc Metastore está disponível
na região.
REST
Siga as instruções da API para criar um serviço através do API Explorer.
Prepare-se para a migração
Agora, tem de preparar os metadados armazenados na base de dados do metastore do Hive para importação criando um ficheiro de despejo do MySQL e colocando-o num contentor do Cloud Storage.
Consulte o artigo Prepare os ficheiros de importação antes da importação para ver os passos de preparação para a migração.
Importe os metadados
Agora que preparou o ficheiro de despejo, importe-o para o serviço Dataproc Metastore.
Consulte o artigo Importe os ficheiros para o Dataproc Metastore
para ver os passos de importação dos metadados para o seu serviço example-service
.
Crie e anexe um cluster do Dataproc
Depois de importar os metadados para o serviço
example-service
do Dataproc Metastore, crie e anexe um cluster do Dataproc
que usa o serviço como o respetivo metastore do Hive.
Limpar
Para evitar incorrer em cobranças na sua Google Cloud conta pelos recursos usados nesta página, siga estes passos.
- In the Google Cloud console, go to the Manage resources page.
- If the project that you plan to delete is attached to an organization, expand the Organization list in the Name column.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Em alternativa, pode eliminar os recursos usados neste tutorial:
Elimine o serviço Dataproc Metastore.
Consola
Na Google Cloud consola, abra a página Dataproc Metastore:
À esquerda do nome do serviço, selecione
example-service
selecionando a caixa.Na parte superior da página Dataproc Metastore, clique em Eliminar para eliminar o serviço.
Na caixa de diálogo, clique em Eliminar para confirmar a eliminação.
O seu serviço já não aparece na lista de serviços.
gcloud
Execute o seguinte comando
gcloud metastore services delete
para eliminar um serviço:gcloud metastore services delete example-service \ --location=LOCATION
Substitua
LOCATION
pela região do Compute Engine onde criou o serviço.REST
Siga as instruções da API para eliminar um serviço através do API Explorer.
Todas as eliminações são bem-sucedidas imediatamente.
Elimine o contentor do Cloud Storage para o serviço Dataproc Metastore.