Nesta página, mostramos como ativar e desativar o PolyBase nas instâncias do Cloud SQL para SQL Server.
Para informações gerais sobre o PolyBase, consulte Suporte do Cloud SQL para SQL Server para PolyBase.
Para saber como definir a configuração, consulte Configurar fontes de dados externas para uso com o PolyBase.
Antes de começar
-
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 role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Cloud SQL, Cloud SQL Admin, and Compute Engine APIs, if any are not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.- Configure sua rede para permitir o tráfego entre o Cloud SQL para SQL Server e sua
fonte de dados externa.
- Se o SQL Server não conseguir estabelecer uma conexão, o comando T-SQL para configurar ou consultar a fonte de dados externa vai falhar.
Seja usando um endereço IP público ou privado, verifique se a instância do Cloud SQL e todos os recursos de suporte do Google Cloud têm acesso à fonte de dados externa no firewall da fonte de dados.
Se você estiver usando o endereço IP público da instância do Cloud SQL, também precisará de acesso à VM do Compute Engine e do endereço IP dela. Como essa VM não é externalizada para os usuários, entre em contato com o suporte doGoogle Cloud para recuperar o endereço IP dela. Esse endereço IP poderá mudar se a instância for recriada.
- Para ativar ou desativar o PolyBase, você precisa das seguintes permissões:
cloudsql.instances.getcloudsql.instances.update
roles/cloudsql.editorroles/cloudsql.admin
Recomendamos usar o princípio de privilégio mínimo ao conceder acesso.
Como alternativa, você também pode atribuir essas permissões a um papel personalizado.
Revise os nomes dos bancos de dados de armazenamento atuais da instância.
Quando o PolyBase é ativado, três novos bancos de dados de data warehouse do PolyBase são criados:
- DWConfiguration
- DWQueue
- DWDiagnostics
Antes da ativação, use uma ferramenta como o SQL Server Management Studio (SSMS) para verificar se já existem bancos de dados com esses nomes. Se sim, entre em contato com o suporte doGoogle Cloud para receber ajuda antes de continuar.
Algumas restrições se aplicam a esses bancos de dados do sistema:
- Não é possível usar o console do Google Cloud , a API Cloud SQL Admin e a CLI gcloud
para realizar determinadas operações em bancos de dados do DW:
- Criar
- Excluir
- Lista
- Importar
- Não é possível acessar bancos de dados DW usando o SQL Server Management Studio (SSMS).
- Se a instância for replicada, os bancos de dados DW não serão copiados para o novo recurso.
- Se a instância for restaurada usando a PITR, os bancos de dados do DW não serão copiados para o novo recurso.
- Os bancos de dados do DW são mantidos mesmo depois que o PolyBase é desativado.
Para saber mais, acesse os recursos a seguir:
Ativação do PolyBase usando flags de banco de dados
É possível ativar o PolyBase com a instância do Cloud SQL para SQL Server usando flags de banco de dados. As flags necessárias variam de acordo com o tipo de fonte de dados externa que você quer usar:
- A flag de banco de dados
polybaseé obrigatória para todas as fontes de dados externas. - Se você estiver usando o Cloud Storage, também precisará aplicar a flag de rastreamento do Microsoft SQL Server,
13702. Ativar essa sinalização também ativa outras sinalizações de rastreamento necessárias para o suporte ao PolyBase.
As seções a seguir mostram como ativar o PolyBase em instâncias novas e atuais.
Criar uma instância com o PolyBase ativado
Para criar uma nova instância com o PolyBase ativado, execute o seguinte comando gcloud:
Oracle
gcloud sql instances create INSTANCE_NAME \
--database-version=VERSION --region=LOCATION \
--root-password=PASSWORD --edition=EDITION \
--cpu=NUMBER_OF_CPUs --memory=MEMORY_SIZE \
--database-flags="DATABASE_FLAG"
Substitua:
- INSTANCE_NAME: o nome da instância do Cloud SQL.
- VERSION: a versão do banco de dados que você quer usar.
- LOCATION: o local da instância do Cloud SQL.
- PASSWORD: a senha da instância do Cloud SQL.
- EDITION: a edição do banco de dados que você quer usar.
- NUMBER_OF_CPUs: o número de CPUs que você quer usar.
- MEMORY_SIZE: a quantidade de memória que você quer usar.
DATABASE_FLAG: o valor da flag de banco de dados necessário para ativar o PolyBase, independentemente do tipo de fonte de dados externa.
Insira
cloud sql enable polybase=on.Para mais informações, consulte Flags de banco de dados.
Cloud Storage
gcloud sql instances create INSTANCE_NAME \
--database-version=VERSION --region=LOCATION \
--root-password=PASSWORD --edition=EDITION \
--cpu=NUMBER_OF_CPUs --memory=MEMORY_SIZE \
--database-flags="DATABASE_FLAG_CLOUD_STORAGE"
Substitua:
- INSTANCE_NAME: o nome da instância do Cloud SQL.
- VERSION: a versão do banco de dados que você quer usar.
- LOCATION: o local da instância do Cloud SQL.
- PASSWORD: a senha da instância do Cloud SQL.
- EDITION: a edição do banco de dados que você quer usar.
- NUMBER_OF_CPUs: o número de CPUs que você quer usar.
- MEMORY_SIZE: a quantidade de memória que você quer usar.
DATABASE_FLAG_CLOUD_STORAGE: os valores de flag de banco de dados necessários para ativar o PolyBase. Se a fonte de dados externa for o Cloud Storage, insira
cloud sql enable polybase=on,13702=on.Para mais informações, consulte Flags de banco de dados.
Ativar o PolyBase em uma instância atual
Para ativar o PolyBase em uma instância, execute o seguinte comando
gcloud:
Oracle
gcloud sql instances patch INSTANCE_NAME \
--database-flags="DATABASE_FLAG"
Substitua:
- INSTANCE_NAME: o nome da instância do Cloud SQL.
- DATABASE_FLAG: o valor da flag de banco de dados necessário para ativar o PolyBase, independentemente do tipo de fonte de dados externa.
Insira cloud sql enable polybase=on.
Este exemplo é apenas para fins ilustrativos. A execução de uma operação patch com
uma configuração de flag de banco de dados específica substitui todas as flags de banco de dados atuais. Inclua
as flags de banco de dados que você quer manter. Se você omitir uma flag de banco de dados definida anteriormente, ela será revertida para o valor padrão.
Para mais informações, consulte Flags de banco de dados.
Cloud Storage
gcloud sql instances patch INSTANCE_NAME \
--database-flags="DATABASE_FLAG_CLOUD_STORAGE"
Substitua:
- INSTANCE_NAME: o nome da instância do Cloud SQL.
- DATABASE_FLAG_CLOUD_STORAGE: o valor da flag de banco de dados necessário para ativar o PolyBase, independentemente do tipo de fonte de dados externa.
Insira cloud sql enable polybase=on,13702=on.
Este exemplo é apenas para fins ilustrativos. A execução de uma operação patch com
uma configuração de flag de banco de dados específica substitui todas as flags de banco de dados atuais. Inclua
as flags de banco de dados que você quer manter. Se você omitir uma flag de banco de dados definida anteriormente, ela será revertida para o valor padrão.
Para mais informações, consulte Flags de banco de dados.
Verificar a configuração da instância
Para verificar se o PolyBase está ativado em uma instância, execute o seguinte comando
gcloud:
gcloud
gcloud sql instances describe INSTANCE_NAME \
--format="value(settings.databaseFlags)"
Substitua:
- INSTANCE_NAME: o nome da instância do Cloud SQL.
Desativar PolyBase
Para desativar o PolyBase em uma instância, execute o seguinte comando gcloud:
gcloud
gcloud sql instances patch INSTANCE_NAME \
--database-flags="cloud sql enable polybase=off"
Substitua:
- INSTANCE_NAME: o nome da instância do Cloud SQL.
Quando o PolyBase é desativado, os seguintes recursos dele não são excluídos:
- Bancos de dados do sistema DW
- Chave mestra do banco de dados (DMK)
- Fontes de dados
- Credenciais com escopo de dados
- Tabelas externas
Esses recursos são mantidos caso você queira reativar o recurso no futuro.