Carregar dados do ServiceNow no BigQuery
É possível carregar dados do ServiceNow para o BigQuery usando o conector do serviço de transferência de dados do BigQuery para o ServiceNow. Com o serviço de transferência de dados do BigQuery, é possível programar jobs de transferência recorrentes que adicionam seus dados mais recentes do ServiceNow ao BigQuery.
Limitações
As transferências de dados do Salesforce estão sujeitas às seguintes limitações:
- O conector do ServiceNow só é compatível com a API ServiceNow Table.
- Não recomendamos executar transferências de dados simultâneas na mesma instância do ServiceNow. Isso pode causar atrasos ou falhas devido
à carga na instância do ServiceNow.
- Recomendamos que você programe os horários de início da transferência com antecedência para evitar execuções de transferência sobrepostas.
- Para melhorar o desempenho da transferência de dados, recomendamos limitar o número de recursos a 20 itens por transferência.
- O intervalo mínimo entre as transferências de dados recorrentes é de 15 minutos. O intervalo padrão para uma transferência recorrente é 24 horas.
- Uma única configuração de transferência só pode oferecer suporte a uma execução de transferência de dados por vez. Se uma segunda transferência de dados for programada para ser executada antes da conclusão da primeira, apenas a primeira será concluída. As outras transferências que se sobrepõem à primeira serão ignoradas.
- Para evitar transferências ignoradas em uma única configuração, recomendamos aumentar a duração entre grandes transferências de dados configurando a Frequência de repetição.
Antes de começar
Antes de criar uma transferência de dados do ServiceNow, faça o seguinte para o ServiceNow e o BigQuery.
Pré-requisitos do ServiceNow
- Para acessar as APIs ServiceNow, crie credenciais do OAuth.
Todos os aplicativos do ServiceNow a seguir precisam estar ativados na instância do serviço:
Para iniciar uma transferência do ServiceNow, você precisa ter as credenciais corretas para se conectar à instância do ServiceNow.
- Para receber suas credenciais de uma instância de desenvolvedor do ServiceNow, faça login no portal de desenvolvedores do ServiceNow. Use o nome de usuário e a senha listados na página Gerenciar senha da instância. Para informações sobre como redefinir sua senha do ServiceNow, consulte Redefinição de senha
- Para receber suas credenciais de uma instância de produção ou subprodução do ServiceNow, entre em contato com o administrador do cliente do ServiceNow e peça o nome de usuário e a senha.
Pré-requisitos do BigQuery
- Conclua todas as ações necessárias para ativar o serviço de transferência de dados do BigQuery.
- Crie um conjunto de dados do BigQuery para armazenar os dados.
- Se quiser configurar notificações de execução de transferência do Pub/Sub,
verifique se você tem a permissão
pubsub.topics.setIamPolicydo Identity and Access Management (IAM). Se você configurar apenas notificações por e-mail, as permissões do Pub/Sub não serão necessárias. Para saber mais informações, consulte Notificações de execução do serviço de transferência de dados do BigQuery.
Papéis obrigatórios do BigQuery
Para receber as permissões necessárias para criar uma transferência de dados do serviço de transferência de dados do BigQuery,
peça ao administrador para conceder a você o papel do IAM
Administrador do BigQuery (roles/bigquery.admin)
no seu projeto.
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Esse papel predefinido contém as permissões necessárias para criar uma transferência de dados do serviço de transferência de dados do BigQuery. Para acessar 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 criar uma transferência de dados do serviço de transferência de dados do BigQuery:
-
Permissões do serviço de transferência de dados do BigQuery:
-
bigquery.transfers.update -
bigquery.transfers.get
-
-
Permissões do BigQuery:
-
bigquery.datasets.get -
bigquery.datasets.getIamPolicy -
bigquery.datasets.update -
bigquery.datasets.setIamPolicy -
bigquery.jobs.create
-
Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.
Para mais informações, consulte Conceder acesso ao bigquery.admin.
Configurar uma transferência de dados do ServiceNow
Adicione dados do ServiceNow ao BigQuery configurando uma transferência usando uma das seguintes opções:
Console
Acesse a página "Transferências de dados" no console Google Cloud .
Clique em Criar transferência.
Na seção Tipo de origem, em Origem, selecione ServiceNow.
Na seção Detalhes da fonte de dados, faça o seguinte:
- (Opcional) Em Anexo de rede, selecione um anexo de rede no menu suspenso ou clique em Criar anexo de rede.
- Selecione um anexo de rede para configurar essa transferência de dados e usar um endereço IP único e consistente. Use essa opção se a instância do ServiceNow estiver configurada para aceitar apenas tráfego de endereços IP específicos.
- Para mais informações sobre como definir endereços IP no ServiceNow, consulte Definir endereços IP internos permitidos do ServiceNow.
- Em ID da instância, digite o ID da instância do ServiceNow.
É possível ter acesso a ele no URL da ServiceNow,
por exemplo,
https://INSTANCE_ID.service-now.com. - Em Nome de usuário, digite o nome de usuário da ServiceNow que será usado na conexão.
- Em Senha, digite a senha do ServiceNow.
- Em ID do cliente, digite o ID que aparece nas suas credenciais do OAuth. Para gerar credenciais, consulte Criar credenciais do OAuth.
- Em Chave secreta do cliente, insira a chave das suas credenciais OAuth.
- Em tabelas do ServiceNow para transferência, insira os respectivos nomes ou clique em Procurar e selecione as tabelas que você quer transferir.
- Em Tipo de valor, escolha uma destas opções:
- Para transferir os valores armazenados no banco de dados, escolha Real.
- Para transferir os valores de exibição das colunas, selecione Exibição.
Na seção Configurações de destino, em Conjunto de dados, selecione o conjunto de dados que você criou para armazenar seus dados.
No campo Nome de exibição da seção Nome de configuração da transferência, insira um nome para a transferência de dados.
Na seção Opções de programação, realize estas ações:
- Na lista Frequência de repetição, selecione uma opção para especificar com que frequência essa transferência de dados é executada. Para especificar uma frequência de repetição personalizada, selecione Personalizada. Se você selecionar On demand, a transferência de dados vai ser executada quando você acioná-la manualmente.
- Se aplicável, selecione Começar agora ou Começar no horário definido e escolha uma data de início e hora de execução.
Opcional: na seção Opções de notificação, faça o seguinte:
- Para ativar as notificações por e-mail, clique no botão que ativa as Notificações por e-mail. Quando essa opção está ativada, o administrador da transferência recebe uma notificação por e-mail quando uma execução da transferência falha.
- Para ativar as notificações de execução de transferência do Pub/Sub para essa transferência de dados, clique no botão de alternância Notificações do Pub/Sub. Selecione o nome do tópico ou clique em Criar tópico.
Clique em Salvar.
bq
Insira o comando bq mk e forneça a sinalização de execução da transferência --transfer_config:
.
bq mk
--transfer_config
--project_id=PROJECT_ID
--data_source=DATA_SOURCE
--display_name=DISPLAY_NAME
--target_dataset=DATASET
--params='PARAMETERS'
Substitua:
PROJECT_ID(opcional): o ID do projeto do Google Cloud . Se um ID de projeto não for especificado, o projeto padrão será usado.DATA_SOURCE: a fonte de dados (por exemplo,servicenow).DISPLAY_NAME: o nome de exibição da configuração da transferência. O nome da transferência de dados pode ser qualquer valor que permita identificá-la, caso você precise modificá-la mais tarde.DATASET: o conjunto de dados de destino na configuração da transferência.PARAMETERSé o parâmetro da configuração de transferência criada no formato JSON. Por exemplo,--params='{"param":"param_value"}'. Veja a seguir os parâmetros de uma transferência do ServiceNow:Parâmetro ServiceNow Obrigatório ou opcional Descrição connector.instanceIdObrigatório ID da instância do ServiceNow connector.authentication.usernameObrigatório Nome de usuário das credenciais connector.authentication.passwordObrigatório Senha das credenciais connector.authentication.oauth.clientIdObrigatório ID do cliente do OAuth gerado connector.authentication.oauth.clientSecretObrigatório Chave secreta do cliente do OAuth gerado connector.valueTypeOpcional ActualouDisplay(padrão:Actual)connector.networkAttachmentOpcional Especifique um anexo de rede para configurar essa transferência de dados e usar um endereço IP único e consistente. Use essa opção se a instância do ServiceNow estiver protegida para aceitar apenas tráfego de endereços IP específicos. Para mais informações sobre como definir endereços IP no ServiceNow, consulte Definir endereços IP internos permitidos do ServiceNow. Por exemplo, o comando a seguir cria uma transferência de dados do ServiceNow no projeto padrão com todos os parâmetros necessários:
bq mk --transfer_config --target_dataset=mydataset --data_source=servicenow --display_name='My Transfer' --params='{"connector.authentication.oauth.clientId": "1234567890", "connector.authentication.oauth.clientSecret":"ABC12345", "connector.authentication.username":"user1", "connector.authentication.password":"abcdef1234", "connector.instanceId":"https://dev-instance.service-now.com", "connector.networkAttachment": "projects/dev-project1/regions/us-central1/networkattachments/na1"}'
API
Use o método projects.locations.transferConfigs.create e forneça uma instância do recurso TransferConfig.
Para executar manualmente uma transferência de dados fora da sua programação regular, inicie uma execução de preenchimento.
Mapeamento de tipo de dados
A tabela a seguir mostra como os tipos de dados são mapeados em uma transferência de dados do ServiceNow:
| Tipo de dados do ServiceNow | Tipo de dados do BigQuery |
|---|---|
decimal |
FLOAT64 |
integer |
INTEGER |
boolean |
BOOLEAN |
glide_date |
DATE |
glide_date_time |
DATETIME |
glide_time |
INT64 |
reference |
STRING |
currency |
STRING |
sys_class_name |
STRING |
domain_id |
STRING |
domain_path |
STRING |
guid |
STRING |
translated_html |
STRING |
journal |
STRING |
string |
STRING |
Resolver problemas com a transferência
As seções a seguir detalham problemas comuns ao configurar uma transferência de dados do ServiceNow.
Para mais informações, consulte Resolver problemas nas configurações de transferência.
A transferência falha devido à ativação do ServiceNow
Um problema ocorre e causa falha nas transferências de dados quando os aplicativos de aquisição, catálogo de produtos ou gerenciamento de contratos não estão ativados no ServiceNow. Para corrigir isso, ative os três aplicativos:
- Aquisição
- Catálogo de produtos
- Gerenciamento de contratos (ativado por padrão)
O problema ocorre durante a execução da transferência
Ocorre um problema fazendo com que a execução da transferência não seja criada conforme o esperado. Para resolver o problema, faça o seguinte:
- Verifique se as credenciais da conta do ServiceNow, como Nome de usuário, Senha, ID do cliente e Chave secreta do cliente , são válidos.
- Verifique se o ID da instância é válido para sua instância do ServiceNow.
Outros erros
Para informações sobre outros erros que ocorreram durante uma transferência de dados do ServiceNow, consulte Problemas de transferência do ServiceNow.
Preços
Para informações sobre preços de transferências do ServiceNow, consulte Preços do serviço de transferência de dados.
A seguir
- Consulte Introdução ao serviço de transferência de dados do BigQuery para uma visão geral desse serviço.
- Para informações sobre o uso de transferências, incluindo ver detalhes sobre a configuração, listar configurações e visualizar o histórico de execução, consulte Como trabalhar com transferências.
- Saiba como carregar dados com operações entre nuvens.