Ir para conteúdo principal Pular para conteúdo complementar

Google BigQuery

Você pode usar o Google BigQuery como uma plataforma de dados de destino em um pipeline de dados ou em uma tarefa de replicação. Em um pipeline de dados, várias operações ELT podem ser executadas na plataforma de destino, incluindo armazenamento de dados, transformação de dados, criação de data marts e registro de dados. Uma tarefa de replicação, por outro lado, envolve a replicação de dados diretamente de um sistema de origem para um sistema de destino com capacidades básicas de transformação, mas sem suporte para operações ELT.

A configuração do Google BigQuery como um destino envolve:

Configurando uma conexão com o Google BigQuery

Para configurar o conector, faça o seguinte:

  1. Em Conexões, clique em Criar conexão.

  2. Selecione o conector de destino do Google BigQuery e forneça as seguintes configurações:

Destino de dados

Nota informativaEste campo não está disponível com as assinaturas do Iniciante do Qlik Talend Cloud, pois o Data Movement gateway não é compatível com esse nível de assinatura.

O Data Movement gateway apenas será necessário se o banco de dados de destino não estiver acessível a partir do Qlik Cloud e somente pode ser acessado através de um link privado (por exemplo, se estiver localizado em uma nuvem privada virtual). Se esse for o caso, selecione o Data Movement gateway através do qual você deseja acessar o banco de dados de destino.

Dependendo do seu caso de uso, será o mesmo Data Movement gateway implementado para mover dados da fonte de dados ou de uma fonte diferente.

Para obter informações sobre casos de uso do Data Movement gateway, consulte Quando o Data Movement gateway é necessário? e Casos de uso comuns.

Se o banco de dados de destino estiver acessível diretamente no Qlik Cloud, selecione Nenhum.

Nota informativaAo acessar o banco de dados de destino via Data Movement gateway, você também precisa instalar o driver apropriado na máquina do Data Movement gateway. Para detalhes, consulte Google BigQuery abaixo.

Propriedades da conexão

Chave da conta de serviço: baixe o arquivo JSON que foi baixado quando você criou a chave da conta de serviço do BigQuery.

Localização: onde carregar o conjunto de dados criado pela Qlik. Se você selecionar Outro, insira o nome da região no campo Nome da região. Para ver uma lista de nomes de regiões compatíveis, consulte Locais do BigQuery.

Nota informativaA seleção de Outro requer o Data Movement gateway 2023.11.4 ou mais recente.

Nome

O nome de exibição da conexão.

Pré-requisitos

Permissões necessárias para aterrisar dados

Se você deseja que o conjunto de dados seja criado automaticamente, as seguintes permissões são necessárias:

BigQuery > Usuário de trabalho do BigQuery

BigQuery > Editor de dados do BigQuery

Se o conjunto de dados já existir, você precisará executar as seguintes etapas:

  1. Crie uma conta de serviço com a seguinte permissão:

    BigQuery > Usuário de trabalho do BigQuery

  2. Navegue até o conjunto de dados que você deseja usar e, em seguida:

    1. Adicione a conta de serviço que você acabou de criar como principal.

    2. Atribua a função Editor de Dados do BigQuery.

Configuração do driver

Um driver apenas será necessário se você estiver acessando o banco de dados via Data Movement gateway. Nesse caso, você precisa instalar o driver na máquina Data Movement gateway.

Você pode instalar o driver usando o utilitário de instalação do driver (recomendado) ou manualmente. A instalação manual só deve ser tentada no caso improvável de você encontrar um problema com o utilitário de instalação do driver.

Usando o utilitário de instalação de driver para instalar o driver

Esta seção descreve como instalar o driver necessário. O processo envolve a execução de um script que baixará, instalará e configurará automaticamente os driver necessários. Você também pode executar scripts para atualizar e desinstalar o driver como necessário.

  • Certifique-se de que o Python 3.6.x ou mais recente esteja instalado no servidor de gateway do Movimentação de dados.

    O Python vem pré-instalado na maioria das distribuições do Linux. Você pode verificar qual versão do Python está instalada em seu sistema executando o seguinte comando:

    python3 --version

Para baixar e instalar o driver:

  1. Pare o serviço do Gateway Data Movement:

    sudo systemctl stop repagent

  2. Opcionalmente, confirme se o serviço foi interrompido:

    sudo systemctl status repagent

    O status deverá ser o seguinte:

    Active: inactive (dead) since <timestamp> ago

  3. Na máquina do gateway do Movimentação de dados, altere o diretório de trabalho para:

    opt/qlik/gateway/movement/drivers/bin

  4. Execute o seguinte comando:

    Sintaxe:

    ./install gbq

    Se o driver não puder ser baixado (devido a restrições de acesso ou problemas técnicos), uma mensagem será exibida informando onde baixar o driver e onde copiá-lo na máquina de gateway do Movimentação de dados. Depois de fazer isso, execute o comando install gbq novamente.

    Caso contrário, o EULA do driver será exibido.

  5. Realize uma das seguintes ações:

    • Pressione [Enter] repetidamente para percorrer lentamente o EULA.
    • Pressione a barra de espaço repetidamente para rolar rapidamente pelo EULA.
    • Pressione q para sair do texto da licença e ser apresentado às opções de aceitação do EULA.
  6. Realize uma das seguintes ações:

    • Digite "y" e pressione [Enter] para aceitar o EULA e iniciar a instalação.
    • Digite "n" e pressione [Enter] para rejeitar o EULA e sair da instalação.
    • Digite "v" e pressione [Enter] para visualizar o EULA novamente.

  7. O driver será instalado.

  8. Aguarde a conclusão da instalação (indicada por "Concluído!") e inicie o serviço do Gateway Data Movement:

    sudo systemctl start repagent

  9. Opcionalmente, confirme se o serviço foi iniciado:

    sudo systemctl status repagent

    O status deverá ser o seguinte:

    Active: active (running) since <timestamp> ago

Execute o comando de atualização se quiser desinstalar versões anteriores do driver antes de instalar o driver fornecido.

Para baixar e atualizar o driver:

  1. Pare o serviço do Gateway Data Movement:

    sudo systemctl stop repagent

  2. Opcionalmente, confirme se o serviço foi interrompido:

    sudo systemctl status repagent

    O status deverá ser o seguinte:

    Active: inactive (dead) since <timestamp> ago

  3. Na máquina do gateway do Movimentação de dados, altere o diretório de trabalho para:

    opt/qlik/gateway/movement/drivers/bin

  4. Execute o seguinte comando:

    Sintaxe:

    ./update gbq

    Se o driver não puder ser baixado (devido a restrições de acesso ou problemas técnicos), uma mensagem será exibida informando onde baixar o driver e onde copiá-lo na máquina de gateway do Movimentação de dados. Depois de fazer isso, execute o comando update gbq novamente.

    Caso contrário, o EULA do driver será exibido.

  5. Realize uma das seguintes ações:

    • Pressione [Enter] repetidamente para percorrer lentamente o EULA.
    • Pressione a barra de espaço repetidamente para rolar rapidamente pelo EULA.
    • Pressione q para sair do texto da licença e ser apresentado às opções de aceitação do EULA.
  6. Realize uma das seguintes ações:

    • Digite "y" e pressione [Enter] para aceitar o EULA e iniciar a instalação.
    • Digite "n" e pressione [Enter] para rejeitar o EULA e sair da instalação.
    • Digite "v" e pressione [Enter] para revisar o EULA desde o início.
  7. O driver antigo será desinstalado, e o novo driver será instalado.

  8. Aguarde a conclusão da instalação (indicada por "Concluído!") e inicie o serviço do Gateway Data Movement:

    sudo systemctl start repagent

  9. Opcionalmente, confirme se o serviço foi iniciado:

    sudo systemctl status repagent

    O status deverá ser o seguinte:

    Active: active (running) since <timestamp> ago

Execute o comando de desinstalação se quiser desinstalar o driver.

Para desinstalar o driver:

  1. Pare todas as tarefas configuradas para usar esse conector.

  2. Na máquina do gateway do Movimentação de dados, altere o diretório de trabalho para:

    opt/qlik/gateway/movement/drivers/bin

  3. Execute o seguinte comando:

    Sintaxe:

    ./uninstall gbq

    O driver será desinstalado.

Instalando o driver manualmente

Você só deve tentar instalar o driver manualmente se a instalação automática do driver não for concluída com êxito.

Você precisa instalar um driver ODBC e um driver JDBC.

Após a instalação do Data Movement gateway, baixe os arquivos SimbaODBCDriverforGoogleBigQuery_<version>-Linux.tar.gz e google-cloud-sdk-<version>-linux-x86_64.tar.gz. Você pode encontrar links diretos para download desses arquivos em binary-artifacts em /opt/qlik/gateway/movement/drivers/manifests/gbq.yaml. Assim que o download for concluído, copie os arquivos para a máquina Data Movement gateway.

  1. Pare o serviço do Gateway Data Movement:

    sudo systemctl stop repagent

  2. Opcionalmente, confirme se o serviço foi interrompido:

    sudo systemctl status repagent

  3. O status deverá ser o seguinte:

    Active: inactive (dead) since <timestamp> ago

  4. Extração:

    SimbaODBCDriverforGoogleBigQuery_<version>.tar.gz

    para:

    /opt/SimbaODBCDriverforGoogleBigQuery_<version>-Linux

  5. Mova os arquivos GoogleBigQueryODBC.did e simba.googlebigqueryodbc.ini para o diretório lib no diretório do Simba ODBC Driver.

    Exemplo:

    Mova os arquivos de:

    /opt/SimbaODBCDriverforGoogleBigQuery_<version>-Linux/setup

    para:

    /opt/SimbaODBCDriverforGoogleBigQuery_<version>-Linux/SimbaODBCDriverforGoogleBigQuery64_<version>/lib

  6. Edite o arquivo simba.googlebigqueryodbc.ini da seguinte forma:

    1. Altere ErrorMessagesPath para o caminho do arquivo XML que contém as mensagens ODBC. A localização padrão é:

      ErrorMessagesPath=/opt/SimbaODBCDriverforGoogleBigQuery_<version>-Linux/SimbaODBCDriverforGoogleBigQuery64_<version>/ErrorMessages

    2. Altere DriverManagerEncoding para UTF-16.
  7. Adicione o seguinte caminho ao arquivo site_arep_login.sh, localizado no diretório bin do Gateway Data Movement:

    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/SimbaODBCDriverforGoogleBigQuery_<version>-Linux/SimbaODBCDriverforGoogleBigQuery64_<version>/lib

  8. Edite o arquivo /etc/odbcinst.ini e adicione o caminho do driver (ou seja, o caminho onde o driver está instalado):

    [ODBC Drivers]

    Simba= Installed

    Simba ODBC Driver for Google BigQuery = Installed

    [Simba ODBC Driver for Google BigQuery]

    Description=Simba ODBC Driver for Google BigQuery(64-bit)

    Driver=/opt/SimbaODBCDriverforGoogleBigQuery_<version>-Linux/SimbaODBCDriverforGoogleBigQuery64_<version>/lib/libgooglebigqueryodbc_sb64.so

  9. Instale google-cloud-sdk-<version>-linux-x86_64.tar.gz.

  10. Inicie o serviço do Gateway Data Movement:

    sudo systemctl start repagent

  11. Opcionalmente, confirme se o serviço foi iniciado:

    sudo systemctl status repagent

    O status deverá ser o seguinte:

    Active: active (running) since <timestamp> ago

  1. Baixe o seguinte arquivo ZIP e arquivos JAR listados em binary-artifacts em /opt/qlik/gateway/movement/drivers/manifests/gbq.yaml:

    • https://repo1.maven.org/maven2/com/google/cloud/google-cloud-bigquery/<version>/google-cloud-bigquery-<version>.jar
    • https://repo1.maven.org/maven2/com/google/cloud/google-cloud-storage/<version>/google-cloud-storage-<version>.jar
    • https://storage.googleapis.com/simba-bq-release/jdbc/SimbaJDBCDriverforGoogleBigQuery<version>.zip

    Copie os arquivos JAR para a seguinte pasta na máquina do Data Movement gateway e extraia os arquivos JAR em SimbaJDBCDriverforGoogleBigQuery<version>.zip para a mesma pasta:

    /opt/qlik/gateway/movement/qcs_agents/qdi-db-commands/lib

  2. Reinicie o serviço Data Movement gateway executando o comando descrito em Reiniciando o serviço

Porta

A porta 443 do firewall precisa ser aberta para comunicação de saída.

Tipos de dados

O comprimento do tipo de dados parametrizado será definido com valores padrão:

  • STRING: 8192 (comprimento)

  • BYTES: 8192 (comprimento)

  • NUMERIC: precisão: 38, escala: 9

  • BIGDECIMAL: precisão: 76, escala: 38

A tabela a seguir mostra os tipos de dados Google BigQuery que são suportados durante o uso do Qlik Cloud e o mapeamento padrão dos tipos de dados do Qlik Cloud.

As informações do tipo de dados nativo são preservadas e exibidas na coluna Tipo de dados nativo nas visualizações do conjunto de dados. Se a coluna não estiver visível, será necessário abrir o seletor de colunas da visualização do conjunto de dados e selecionar a coluna Tipo de dados nativo.

Tipos de dados suportados
Tipos de dados do Qlik Cloud Tipos de dados do Google BigQuery

BOOLEAN

BOOL

BYTES

BYTES (comprimento em Bytes)

DATE

DATE

TIME

TIME

DATETIME

TIMESTAMP

INT1

TINYINT

INT2 SMALLINT

INT4

INTEGER

INT8 BIGINT

NUMERIC

NUMERIC (precisão, escala)

REAL4

FLOAT64

REAL8

FLOAT64

UINT1

TINYINT

UINT2

SMALLINT

UINT4

INTEGER

UINT8

BIGINT

STRING

STRING (comprimento em bytes)

WSTRING

STRING (comprimento em bytes)

BLOB

BYTES

NCLOB

STRING

CLOB

STRING

Os seguintes tipos de dados são convertidos em STRING:

  • ARRAY

  • STRUCT

  • JSON

  • GEOGRAPHY

Você só deve tentar instalar o driver manualmente se a instalação automática do driver não for concluída com êxito.

Limitações e considerações

As seguintes limitações e considerações se aplicam ao mover dados para um destino do Google BigQuery.

Limitações e considerações para todas as tarefas de dados

  • As DDLs a seguir não são compatíveis:
    • Soltar coluna
    • Renomear coluna
    • Alterar o tipo de dados da coluna
    • Renomear tabela
  • Não há suporte para a captura de alterações de tabelas de origem sem uma chave primária ou índice exclusivo. Se precisar capturar alterações nessas tabelas, você poderá adicionar uma Chave primária usando uma transformação. Além disso, as colunas Primary Key ou Unique Index não podem conter NULLs. Se estiver ciente de que essas colunas serão preenchidas com valores NULL, defina uma transformação para transformar NULLs em Valores não nulos.

Limitações e considerações apenas para tarefas de replicação

  • Não há suporte para o modo de Aplicação de alterações transacionais.
  • Não há suporte para a opção de tratamento de erros Registrar log na tabela de exceções para conflitos de aplicação e erros de dados.

  • Com a seguinte configuração de definições de tarefa, a tarefa de replicação executará uma operação DELETE seguida de um INSERT em vez de um UPDATE:

    • O modo Aplicar alterações está definido como Lote otimizado.

    • A opção Aplicar alterações usando SQL MERGE não está selecionada.

    • O tratamento de erros de UPDATEs para Aplicar conflitos está definido como: Nenhum registro encontrado para aplicar um UPDATE: INSERIR o registro de destino ausente.

    Como o Google Cloud BigQuery não oferece suporte à reversão, caso a tarefa de replicação não consiga inserir a linha atualizada, os dados serão excluídos do destino.

Esta página ajudou?

Se você encontrar algum problema com esta página ou seu conteúdo - um erro de digitação, uma etapa ausente ou um erro técnico - informe-nos como podemos melhorar!