Copiar dados do ServiceNow utilizando o Azure Data Factory ou 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 novo conector do ServiceNow fornece suporte ao ServiceNow nativo aprimorado. Se você estiver usando o conector do ServiceNow herdado na sua solução, é recomendável atualizar o conector do ServiceNow o mais rápido possível. Consulte esta seção para obter detalhes sobre a diferença entre a versão herdada e a versão mais recente.
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.
Use o valor real em vez do valor exibido no ServiceNow.
Pré-requisito
Para usar esse conector, você precisa ter uma função com pelo menos acesso de leitura às tabelas sys_db_object e sys_dictionary no ServiceNow.
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 |
---|---|---|
tipo | A propriedade type deve estar definida como ServiceNowV2 | 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. | Sim para autenticação OAuth 2.0 |
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. | Sim para autenticação OAuth 2.0 |
grantType | Especifica o tipo de fluxo OAuth2.0 que o aplicativo cliente usa para acessar o token. O valor padrão é senha. | Sim para autenticação OAuth 2.0 |
Exemplo:
{
"name": "ServiceNowLinkedService",
"properties": {
"type": "ServiceNowV2",
"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 ServiceNowV2Object. Há suporte para as seguintes propriedades:
Propriedade | Descrição | Obrigatório |
---|---|---|
tipo | A propriedade type do conjunto de dados deve ser definida como: ServiceNowV2Object | Sim |
tableName | Nome da tabela. | Sim |
Exemplo
{
"name": "ServiceNowDataset",
"properties": {
"type": "ServiceNowV2Object",
"typeProperties": {
"tableName": "<table name>"
},
"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 ServiceNowV2Source. As propriedades a seguir têm suporte na seção source da atividade de cópia:
Propriedade | Descrição | Obrigatório |
---|---|---|
tipo | A propriedade type da fonte da atividade de cópia deve ser definida como: ServiceNowV2Source | Sim |
expressão | Use a expressão para ler dados. Você pode configurar a expressão no Construtor de Consultas. Ele tem o mesmo uso que o construtor de condições no ServiceNow. Para obter instruções sobre como usá-lo, consulte este artigo. Você também pode usar parâmetros de expressão. | Não |
Em expression |
||
tipo | O tipo de expressão. Os valores podem ser Constant (padrão), Unary, Binary, Field e Nary. | Não |
value | O valor da constante. | Sim quando o tipo de expressão é Constant ou Field |
operadores | O valor do operador. Para obter mais informações sobre operadores, consulte a seção Operadores disponíveis para campos de escolha que contêm cadeias de caracteres neste artigo. | Sim quando o tipo de expressão é Unary ou Binary |
operands | Lista de expressões em que o operador é aplicado. | Sim quando o tipo de expressão é Unary ou Binary |
Exemplo:
"activities": [
{
"name": "CopyFromServiceNow",
"type": "Copy",
"inputs": [
{
"referenceName": "<ServiceNow input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "ServiceNowV2Source",
"expression": {
"type": "Nary",
"operators": [
"<"
],
"operands": [
{
"type": "Field",
"value": "u_founded"
},
{
"type": "Constant",
"value": "2000"
}
]
}
},
"sink": {
"type": "<sink type>"
}
}
}
]
Usando parâmetros de expressão
Você pode configurar o parâmetro de expressão no Construtor de Consultas selecionando Adicionar conteúdo dinâmico. O tipo de parâmetro deve ser Objecte o valor deve seguir o formato mostrado no exemplo JSON abaixo:
{
"type": "Nary",
"operators": [
"="
],
"operands": [
{
"type": "Field",
"value": "col"
},
{
"type": "Constant",
"value": "val"
}
]
}
Aqui está um exemplo do JSON de origem usando o parâmetro de expressão:
"activities": [
{
"name": "CopyFromServiceNow",
"type": "Copy",
"inputs": [
{
"referenceName": "<ServiceNow input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "ServiceNowV2Source",
"expression": {
"type": "Expression",
"value": "@pipeline().parameters.expressionParameter"
}
},
"sink": {
"type": "<sink type>"
}
}
}
]
Pesquisar propriedades de atividade
Para saber detalhes sobre as propriedades, verifique Pesquisar atividade.
Atualizar o conector do ServiceNow
Estas são as etapas que ajudam você a atualizar seu conector do ServiceNow:
- Crie um novo serviço vinculado referindo-se às propriedades do serviço Vinculado.
- Consulta na origem é atualizada para Construtor de Consultas, que tem o mesmo uso que o construtor de condições no ServiceNow. Saiba como configurá-lo referindo-se ao ServiceNow como origem.
Diferenças entre o ServiceNow e o ServiceNow (herdado)
O conector do ServiceNow oferece novas funcionalidades e é compatível com a maioria dos recursos do conector do ServiceNow (herdado). A tabela a seguir mostra as diferenças de recursos entre o ServiceNow e o ServiceNow (herdado).
ServiceNow | ServiceNow (herdado) |
---|---|
useEncryptedEndpoints, useHostVerification e usePeerVerification não têm suporte no serviço vinculado. | Suporte a useEncryptedEndpoints, useHostVerification e usePeerVerification no serviço vinculado. |
Suporte ao Construtor de Consultas na origem. | Não há suporte para o Construtor de Consultas na origem. |
Não há suporte para consultas baseadas em SQL. | Suporte a consultas baseadas em SQL. |
Não há suporte para consultas sortBy no Construtor de Consultas. | Suporte a consultas sortBy em Consulta. |
Você pode exibir o esquema no conjunto de dados. | Não é possível exibir o esquema no conjunto de dados. |
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.