Associar o Looker (Google Cloud Core) à sua base de dados

Assim que a instância do Looker (Google Cloud core) for aprovisionada, é apresentada na página Instâncias do seu Google Cloud projeto. Clique no URL da instância para aceder e autenticar na instância.

Depois de iniciar sessão na sua instância do Looker (essencial para o Google Cloud), pode configurar uma ligação à base de dados à sua instância do Looker (essencial para o Google Cloud).

Configure uma ligação à base de dados

O Looker (Google Cloud core) tem de estar ligado a uma base de dados para permitir a exploração de dados. Consulte a lista de dialetos suportados para saber que dialetos são suportados pelo Looker (Google Cloud core).

Pode criar uma ligação à base de dados numa instância do Looker (Google Cloud core) se tiver uma das seguintes autorizações:

Pode seguir o guia Configurar o Looker que aparece dinamicamente na instância do Looker (Google Cloud core) para associar a sua base de dados ou seguir os passos indicados nas páginas de documentação específicas do dialeto. A maioria das definições é comum à maioria dos dialetos de bases de dados. Consulte a página de documentação Associar o Looker à sua base de dados para obter informações sobre os campos comuns na janela de configuração da associação do Looker.

Existem passos adicionais se quiser configurar a sua ligação do Looker (Google Cloud core) com qualquer uma das seguintes opções:

Usar credenciais padrão da aplicação para estabelecer ligação a uma base de dados do BigQuery

As instâncias do Looker (Google Cloud core) podem usar as credenciais predefinidas da aplicação (ADC) para autenticar quando configura uma ligação a uma base de dados SQL padrão do BigQuery. Quando usa a ADC, a ligação é autenticada na base de dados através das credenciais da conta de serviço do projeto do Looker (essencial para o Google Cloud).

Para usar o ADC com uma base de dados do BigQuery, selecione Credenciais predefinidas da aplicação no campo Autenticação da página Definições de ligação da instância do Looker. Para ver o procedimento completo, consulte a documentação sobre como associar o Looker a uma base de dados do BigQuery.

Se a sua instância do Looker (Google Cloud core) usar tabelas derivadas persistentes com um conjunto de dados do BigQuery, também tem de conceder à conta de serviço do Looker a função do IAM Editor de dados do BigQuery.

Se estiver a estabelecer ligação a uma base de dados do BigQuery que se encontra num projeto diferente da sua instância do Looker (Google Cloud core), é necessária alguma configuração adicional. Consulte a secção Usar as Credenciais padrão da aplicação com uma base de dados do BigQuery num Google Cloud projeto diferente.

Simulação de identidade de conta de serviço

Se quiser autenticar na base de dados do BigQuery através de uma conta de serviço que não seja a conta de serviço do projeto do Looker (Google Cloud core), pode criar um fluxo de pedidos delegados introduzindo outra conta de serviço ou uma cadeia de contas de serviço separadas por vírgulas no campo Conta de serviço representada. A conta de serviço do Looker (essencial para o Google Cloud) é usada automaticamente como a primeira conta de serviço na cadeia e não precisa de ser adicionada ao campo. A última conta de serviço na cadeia (também conhecida como a conta de serviço roubada) é a que se autentica com a base de dados.

Quando usar a simulação da conta de serviço, faça o seguinte:

Usar credenciais padrão da aplicação com uma base de dados do BigQuery num Google Cloud projeto diferente

Os passos para usar a ADC para uma base de dados SQL padrão do BigQuery que esteja fora do projeto que aloja a sua instância do Looker (essencial para o Google Cloud) são os mesmos que os passos para configurar uma ligação no mesmo projeto. No entanto, antes de configurar a ligação na sua instância do Looker (essencial para o Google Cloud), a conta de serviço do projeto do Looker (essencial para o Google Cloud) tem de ter as seguintes funções do IAM:

Se a conta de serviço do Looker (Google Cloud core) ainda não tiver funções do IAM no projeto que contém o conjunto de dados do BigQuery, use o endereço de email da conta de serviço ao conceder funções nesse projeto. Para encontrar o endereço de email da conta de serviço, aceda à página IAM na Google Cloud consola e selecione a caixa de verificação Incluir concessões de funções fornecidas pela Google. O email tem o formato service-<project number>@gcp-sa-looker.iam.gserviceaccount.com. Use esse email para conceder as funções adequadas à conta de serviço.

Assim que as funções adequadas forem concedidas, siga os passos para usar o ADC.

Agora, pode usar a ADC com esta base de dados SQL padrão do BigQuery. O projeto associado à conta de serviço especificada na página Definições de ligação vai ser usado para a faturação e também vai funcionar como o projeto predefinido.

Usar credenciais padrão da aplicação para ligar a uma base de dados do Cloud SQL

As instâncias do Looker (Google Cloud core) podem usar o ADC para autenticar uma ligação a uma base de dados do Cloud SQL (Cloud SQL para PostgreSQL ou Cloud SQL para MySQL). Quando usa o ADC para autenticar na sua base de dados do Cloud SQL, o Google Cloud projeto onde a base de dados do Cloud SQL está a ser executada é o projeto que é faturado pelas consultas do Looker.

Para ligações do Looker ao Cloud SQL que usam o ADC, o ADC faz-se passar por uma conta de serviço ou uma cadeia de contas de serviço para aceder à sua base de dados. Quando cria a ligação do Looker à sua base de dados, usa o campo nomes de utilizador da base de dados da IAM para especificar a conta de serviço ou a cadeia de contas de serviço que o ADC vai representar. A conta de serviço do Looker que foi criada automaticamente quando criou a instância do Looker (essencial para o Google Cloud) é usada automaticamente como a primeira conta de serviço na cadeia e não precisa de ser adicionada ao campo.

Se quiser autenticar a sua base de dados do Cloud SQL através de uma conta de serviço que não seja a conta de serviço do Looker, pode criar um fluxo de pedidos delegados introduzindo outra conta de serviço ou uma cadeia de contas de serviço separadas por vírgulas no campo Nomes de utilizador da base de dados do IAM.

A última conta de serviço na cadeia (também conhecida como a conta de serviço representada) é a que se autentica com a base de dados, e esta conta tem de ser adicionada como um utilizador na sua base de dados do Cloud SQL. Se estiver a usar a conta de serviço do Looker como a última conta de serviço na cadeia (deixando o campo Nomes de utilizador da base de dados do IAM em branco), tem de adicionar a conta de serviço do Looker como um utilizador na sua base de dados do Cloud SQL.

Seguem-se os passos gerais para ligar uma base de dados do Cloud SQL para PostgreSQL ou do Cloud SQL para MySQL ao Looker através da ADC:

  1. Adicione a conta de serviço simulada à sua base de dados do Cloud SQL.
  2. Configure a representação da conta de serviço na sua base de dados do Cloud SQL.
  3. Estabeleça ligação à sua base de dados para executar comandos de configuração adicionais para o Cloud SQL para PostgreSQL ou o Cloud SQL para MySQL.
  4. Crie a ligação do Looker à sua base de dados.

Adicione a conta de serviço simulada à sua base de dados do Cloud SQL

Quando cria a ligação do Looker à sua base de dados, usa o campo Nomes de utilizador da base de dados do IAM para especificar a conta de serviço ou a cadeia de contas de serviço que o ADC vai roubar a identidade para realizar ações na sua base de dados. A última conta de serviço na cadeia de roubo de identidade é considerada a conta de serviço simulada.

Para usar o ADC com o Cloud SQL, tem de adicionar a conta de serviço roubada à sua base de dados do Cloud SQL:

  • No caso predefinido, se deixar o campo Nomes de utilizador da base de dados da IAM em branco, o ADC vai roubar a identidade da conta de serviço do Looker. Neste caso, a conta de serviço do Looker é a conta de serviço simulada, pelo que tem de adicionar a conta de serviço do Looker à sua base de dados do Cloud SQL. Consulte a página de documentação Crie uma instância do Looker (Google Cloud core) para ver informações sobre a conta de serviço do Looker e o procedimento para ver o endereço de email da conta de serviço do Looker.
  • Se especificar uma conta de serviço diferente da conta de serviço do Looker ou especificar uma cadeia de contas de serviço no campo Nomes de utilizador da base de dados do IAM, tem de adicionar a última conta de serviço na cadeia de roubo de identidade à sua base de dados do Cloud SQL.

Para adicionar uma conta de serviço à sua base de dados do Cloud SQL, tem de ter a função do IAM Administrador do Cloud SQL.

Siga o procedimento "Adicione um utilizador ou uma conta de serviço do IAM à instância da base de dados" para o dialeto da base de dados para adicionar a conta de serviço roubada à base de dados do Cloud SQL:

Configure o roubo de identidade da conta de serviço na sua base de dados do Cloud SQL

Depois de criar o utilizador do Cloud SQL na sua base de dados, tem de configurar a base de dados do Cloud SQL para a representação de serviço através dos seguintes passos:

  1. Siga o procedimento para ativar a API Admin do Cloud SQL.
  2. Certifique-se de que todas as contas de serviço na cadeia, incluindo a conta de serviço do Looker, têm as autorizações do IAM adequadas.
  3. Siga o procedimento para conceder uma única função na Google Cloud consola. Conceda as seguintes funções do Cloud SQL à conta de serviço roubada que adicionou à sua base de dados do Cloud SQL:

    Se especificar uma conta de serviço que não seja a conta de serviço do Looker ou se especificar uma cadeia de contas de serviço no campo Nomes de utilizador da base de dados do IAM, conceda a cada conta de serviço na cadeia a seguinte autorização:

Comandos de configuração adicionais para o Cloud SQL para MySQL

Para o Cloud SQL para MySQL, tem de ligar-se à instância da base de dados e executar o seguinte comando na base de dados do Cloud SQL para MySQL:

GRANT ALL on DATABASE_NAME.* to 'DATABASE_USER'@'%'

Substitua o seguinte:

  • DATABASE_NAME: O nome da sua base de dados.
  • DATABASE_USER: o nome de utilizador da conta de serviço truncado da conta de serviço roubada que adicionou à sua base de dados do Cloud SQL. A conta de serviço tem o formato service-<project number>@gcp-sa-looker.iam.gserviceaccount.com. Trunque o nome de utilizador removendo o @ e tudo o que se segue. Após a truncagem, o nome de utilizador teria o seguinte aspeto: service-<project number>.

Por exemplo, se o nome de utilizador da conta de serviço for service-12345678901@gcp-sa-looker.iam.gserviceaccount.com e o nome da base de dados for looker-test, o comando seria o seguinte:

GRANT ALL on looker-test.* to 'service-12345678901'@'%'

Comandos de configuração adicionais para o Cloud SQL para PostgreSQL

Para o Cloud SQL para PostgreSQL, tem de estabelecer ligação à instância da base de dados e executar alguns comandos de configuração na base de dados do Cloud SQL para PostgreSQL:

  • Conceda autorizações ao utilizador na sua base de dados, conforme descrito na secção Utilizadores e segurança da página de documentação do PostgreSQL.
  • Defina o caminho de pesquisa que o SQL Runner do Looker deve usar para obter metadados da sua base de dados, conforme descrito na secção Definir search_path da página do PostgreSQL da documentação do Looker.

Crie a ligação do Looker (essencial para o Google Cloud) à sua base de dados do Cloud SQL

Para criar a ligação do Looker à sua base de dados, siga estes passos:

  1. Na secção Administração do Looker, selecione Ligações e, de seguida, clique em Adicionar ligação.
  2. No menu pendente Dialeto, selecione Google Cloud PostgreSQL ou, para o Cloud SQL para MySQL, selecione Google Cloud SQL.
  3. Na secção Autenticação, clique na opção Credenciais padrão da aplicação.
  4. No campo Nomes de utilizador da base de dados de IAM, especifique a conta de serviço ou a cadeia de contas de serviço que quer que o ADC se faça passar por para realizar ações na sua base de dados:

  5. Preencha os restantes detalhes da associação. A maioria das definições é comum à maioria dos dialetos de bases de dados. Consulte a página de documentação Associar o Looker à sua base de dados para ver informações.

  6. Para verificar se a associação foi bem-sucedida, clique em Testar. Consulte a página de documentação Testar a conetividade da base de dados para ver informações de resolução de problemas.

  7. Para guardar estas definições, clique em Associar.

Assim que uma ligação à base de dados estiver configurada, pode configurar um projeto do LookML.

Configurar a autenticação OAuth com o BigQuery

Para configurar a autenticação OAuth para associações a uma base de dados do BigQuery numa instância do Looker (Google Cloud core), siga estes passos:

  1. Em Autenticação, selecione OAuth. Por predefinição, o Looker (essencial para o Google Cloud) usa as credenciais da aplicação OAuth que o administrador do Looker usou quando criou a instância do Looker (essencial para o Google Cloud). Não precisa de criar nem introduzir manualmente um ID de cliente e um segredo.
  2. Adicione um URI de redirecionamento adicional ao campo URIs de redirecionamento autorizados no cliente OAuth da instância (ou crie um novo cliente OAuth com as credenciais e adicione um URI de redirecionamento). O URI de redirecionamento tem de usar o URL da instância do Looker seguido de /external_oauth/redirect. Para informações gerais, consulte a documentação sobre a geração de credenciais OAuth para o BigQuery.

Se quiser introduzir manualmente credenciais OAuth diferentes para esta associação, ative o botão Configurar manualmente as credenciais OAuth e, em seguida, preencha os campos ID de cliente OAuth e Segredo do cliente OAuth. Se introduzir manualmente credenciais OAuth, estas não alteram nem atualizam as credenciais usadas quando a instância do Looker (Google Cloud core) foi criada. Siga os passos na documentação Configurar um projeto de base de dados do BigQuery para OAuth para criar e usar credenciais diferentes.

Dialetos suportados para o Looker (Google Cloud Core)

A tabela seguinte mostra o suporte do Looker (Google Cloud Core) para dialetos de bases de dados:

Dialeto Compatível?
Actian Avalanche
Não
Amazon Athena
Sim
Amazon Aurora MySQL
Sim
Amazon Redshift
Sim
Amazon Redshift 2.1+
Sim
Amazon Redshift Serverless 2.1+
Sim
Apache Druid
Não
Apache Druid 0.13+
Não
Apache Druid 0.18+
Sim
Apache Hive 2.3+
Não
Apache Hive 3.1.2+
Sim
Apache Spark 3+
Sim
ClickHouse
Sim
Cloudera Impala 3.1+
Sim
Cloudera Impala 3.1+ with Native Driver
Não
Cloudera Impala with Native Driver
Não
DataVirtuality
Não
Databricks
Sim
Denodo 7
Não
Denodo 8 & 9
Sim
Dremio
Não
Dremio 11+
Sim
Exasol
Não
Firebolt
Não
Google BigQuery Legacy SQL
Sim
Google BigQuery Standard SQL
Sim
Google Cloud PostgreSQL
Sim
Google Cloud SQL
Sim
Google Spanner
Sim
Greenplum
Não
HyperSQL
Não
IBM Netezza
Sim
MariaDB
Sim
Microsoft Azure PostgreSQL
Sim
Microsoft Azure SQL Database
Sim
Microsoft Azure Synapse Analytics
Sim
Microsoft SQL Server 2008+
Não
Microsoft SQL Server 2012+
Não
Microsoft SQL Server 2016
Não
Microsoft SQL Server 2017+
Sim
MongoBI
Não
MySQL
Não
MySQL 8.0.12+
Sim
Oracle
Sim
Oracle ADWC
Não
PostgreSQL 9.5+
Sim
PostgreSQL pre-9.5
Não
PrestoDB
Sim
PrestoSQL
Sim
SAP HANA
Não
SAP HANA 2+
Sim
SingleStore
Não
SingleStore 7+
Sim
Snowflake
Sim
Teradata
Sim
Trino
Sim
Vector
Não
Vertica
Sim

Instruções de configuração da base de dados

Estão disponíveis instruções para estes dialetos SQL:

O que se segue?