Copiar dados do ServiceNow V1 usando o Azure Data Factory ou o Synapse Analytics
APLICA-SE A: Azure Data Factory
Azure Synapse Analytics
Dica
Experimente o Data Factory no Microsoft Fabric, uma solução de análise tudo-em-um para empresas. O Microsoft Fabric abrange desde movimentação de dados até ciência de dados, análise em tempo real, business intelligence e relatórios. Saiba como iniciar uma avaliação gratuita!
Este artigo descreve como usar a atividade de cópia nos pipelines do Azure Data Factory e do Azure Synapse Analytics para copiar dados de um banco de dados do ServiceNow. Ele amplia o artigo Visão geral da atividade de cópia que apresenta uma visão geral da atividade de cópia.
Importante
O conector do ServiceNow V2 dá suporte nativo aprimorado ao ServiceNow. Se você está usando o conector do ServiceNow V1 na sua solução, recomendamos atualizar o conector do ServiceNow o quanto antes. Consulte esta seção para obter detalhes sobre a diferença entre V2 e V1.
Funcionalidades com suporte
Há suporte para este conector do ServiceNow para as seguintes funcionalidades:
Funcionalidades com suporte | IR |
---|---|
Atividade de cópia (origem/-) | ① ② |
Atividade de pesquisa | ① ② |
① Runtime de integração do Azure ② Runtime de integração auto-hospedada
Para obter uma lista de armazenamentos de dados com suporte como origens e coletores, confira a tabela Armazenamentos de dados com suporte.
O serviço fornece um driver interno para habilitar a conectividade. Portanto, você não precisa instalar manualmente um driver para usar esse conector.
Introdução
Para executar a atividade de Cópia com um pipeline, será possível usar as ferramentas ou os SDKs abaixo:
- A ferramenta Copiar Dados
- O portal do Azure
- O SDK do .NET
- O SDK do Python
- PowerShell do Azure
- A API REST
- O modelo do Azure Resource Manager
Criar um serviço vinculado para o ServiceNow usando a interface do usuário
Use as etapas a seguir para criar um serviço vinculado para o ServiceNow na interface do usuário do portal do Azure.
Navegue até a guia Gerenciar no workspace do Azure Data Factory ou do Synapse, selecione Serviços Vinculados e clique em Novo:
Procure o ServiceNow e selecione o conector do ServiceNow.
Configure os detalhes do serviço, teste a conexão e crie o novo serviço vinculado.
Detalhes da configuração do conector
As seções que se seguem fornecem detalhes sobre as propriedades que são usadas para definir entidades do Data Factory específicas ao conector do ServiceNow.
Propriedades do serviço vinculado
As propriedades a seguir têm suporte para o serviço vinculado do ServiceNow:
Propriedade | Descrição | Obrigatório |
---|---|---|
type | A propriedade type deve ser definida para: ServiceNow | Sim |
endpoint | O endpoint do servidor do ServiceNow (http://<instance>.service-now.com ). |
Sim |
authenticationType | O tipo de autenticação a ser usado. Os valores permitidos são: Básica, OAuth2 |
Sim |
Nome de Usuário | O nome de usuário usado para se conectar ao servidor ServiceNow para autenticação básica e OAuth2. | Sim |
password | A senha correspondente ao nome de usuário para autenticação básica e OAuth2. Marque este campo como um SecureString para armazená-lo com segurança ou referencie um segredo armazenado no Azure Key Vault. | Sim |
clientId | A ID do cliente para autenticação OAuth2. | Não |
clientSecret | O segredo do cliente para autenticação OAuth2. Marque este campo como um SecureString para armazená-lo com segurança ou referencie um segredo armazenado no Azure Key Vault. | Não |
useEncryptedEndpoints | Especifica se os endpoints de fonte de dados são criptografados usando HTTPS. O valor padrão é true. | Não |
useHostVerification | Especifica se o nome do host no certificado do servidor precisa ser igual ao nome do host do servidor nas conexões por TLS. O valor padrão é true. | Não |
usePeerVerification | Especifica se a identidade do servidor deve ser verificada nas conexões por TLS. O valor padrão é true. | Não |
Exemplo:
{
"name": "ServiceNowLinkedService",
"properties": {
"type": "ServiceNow",
"typeProperties": {
"endpoint" : "http://<instance>.service-now.com",
"authenticationType" : "Basic",
"username" : "<username>",
"password": {
"type": "SecureString",
"value": "<password>"
}
}
}
}
Propriedades do conjunto de dados
Para obter uma lista completa das seções e propriedades disponíveis para definir os conjuntos de dados, confira o artigo sobre conjuntos de dados. Esta seção fornece uma lista das propriedades com suporte pelo conjunto de dados do ServiceNow.
Para copiar dados do ServiceNow, defina a propriedade type do conjunto de dados como ServiceNowObject. Há suporte para as seguintes propriedades:
Propriedade | Descrição | Obrigatório |
---|---|---|
type | A propriedade type do conjunto de dados precisa ser definida como ServiceNowObject | Sim |
tableName | Nome da tabela. | Não (se "query" na fonte da atividade for especificada) |
Exemplo
{
"name": "ServiceNowDataset",
"properties": {
"type": "ServiceNowObject",
"typeProperties": {},
"schema": [],
"linkedServiceName": {
"referenceName": "<ServiceNow linked service name>",
"type": "LinkedServiceReference"
}
}
}
Propriedades da atividade de cópia
Para obter uma lista completa das seções e propriedades disponíveis para definir atividades, confia o artigo Pipelines. Esta seção fornece uma lista das propriedades com suporte pela origem do ServiceNow.
ServiceNow como origem
Para copiar dados do ServiceNow, defina o tipo de origem na atividade de cópia como ServiceNowSource. As propriedades a seguir têm suporte na seção source da atividade de cópia:
Propriedade | Descrição | Obrigatório |
---|---|---|
type | A propriedade type da fonte da atividade de cópia deve ser definida como: ServiceNowSource | Sim |
Consulta | Utiliza a consulta SQL personalizada para ler os dados. Por exemplo: "SELECT * FROM Actual.alm_asset" . |
Não (se "tableName" no conjunto de dados for especificado) |
Observe o seguinte ao especificar o esquema e a coluna para ServiceNow em consulta, e consultem dicas de desempenho em implicação de desempenho de cópia.
-
Esquema: na consulta do ServiceNow, especifique o esquema como
Actual
ouDisplay
. Ele pode ser visto como o parâmetrosysparm_display_value
definido para verdadeiro ou falso ao chamar as APIs REST do ServiceNow. -
Coluna: o nome da coluna para o valor real no esquema
Actual
é[column name]_value
, e para o valor de exibição no esquemaDisplay
é[column name]_display_value
. Observe que o nome da coluna precisa ser mapeado para o esquema que está sendo usado na consulta.
Consulta de exemplo:SELECT col_value FROM Actual.alm_asset
OU SELECT col_display_value FROM Display.alm_asset
Exemplo:
"activities":[
{
"name": "CopyFromServiceNow",
"type": "Copy",
"inputs": [
{
"referenceName": "<ServiceNow input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "ServiceNowSource",
"query": "SELECT * FROM Actual.alm_asset"
},
"sink": {
"type": "<sink type>"
}
}
}
]
Dicas de desempenho
Esquema a ser usado
O ServiceNow possui 2 esquemas diferentes, um é "Real" que retorna dados reais, o outro é "Display" , que retorna os valores de exibição dos dados.
Se você tiver um filtro em sua consulta, use o esquema "Real" que tenha melhor desempenho de cópia. Ao consultar o esquema "Real", o ServiceNow suporta de forma nativa o filtro ao buscar os dados para retornar apenas o conjunto de resultados filtrado, enquanto ao consultar o esquema "Exibir", o ADF recupera todos os dados e aplica o filtro internamente.
Índice
Índice da tabela de ServiceNow pode ajudar a melhorar o desempenho de consulta, consulte criar um índice de tabela.
Pesquisar propriedades de atividade
Para saber detalhes sobre as propriedades, verifique Pesquisar atividade.
Conteúdo relacionado
Para obter uma lista de armazenamentos de dados com suporte como coletores e fontes da atividade de cópia, confira os armazenamentos de dados com suporte.