Compartir por


Duplicar os datos á base de datos de Microsoft Azure SQL utilizando o servizo de Exportación de Datos

Nota

A partir de novembro de 2021, o servizo de exportación de datos queda en desuso. O servizo de exportación de datos seguirá funcionando e contará con total compatibilidade ata que chegue ao final do soporte e da súa vida útil en novembro de 2022. Máis información: https://aka.ms/DESDeprecationBlog

O servizo de exportación de datos é un servizo complementario dispoñible en Microsoft AppSource que engade a capacidade de replicar datos da base de datos de Microsoft Dataverse a un almacenamento de Azure SQL Database nunha suscripción de Azure do cliente. Os destinos obxectivo admitidos son Azure SQL Database e SQL Server en máquinas virtuais de Azure. O servizo de exportación de datos sincroniza de maneira intelixente todos os datos inicialmente e despois sincroniza de forma continuada as modificacións que ocorren (modificacións delta) no sistema. Isto axuda a habilitar varios escenarios de informes e de análises en datos cos servizos de análises e datos de Azure e abre novas posibilidades para que clientes e asociados xeren solucións personalizadas.

Nota

É moi recomendable que exporte os datos de Dataverse a Azure Synapse Analytics e/ou a Azure Data Lake Gen2 con Azure Synapse Link for Dataverse. Máis información: Acelerar o tempo para obter información con Azure Synapse Link for Dataverse

Pode usar o servizo de exportación de datos con aplicacións de interacción cos clientes (Dynamics 365 Sales, Dynamics 365 Customer Service, Dynamics 365 Field Service, Dynamics 365 Marketing e Dynamics 365 Project Service Automation).

Para obter información sobre a interface de programación para xestionar a configuración e administración do , consulte Servizo de Exportación de Datos na guía para programadores.

Requisitos previos do servizo de exportación de datos

Para comezar a utilizar o servizo de exportación de datos, os seguintes requisitos previos son necesarios.

Servizo da Base de datos de Azure SQL

  • Unha subscrición de Azure SQL Database propiedade do cliente. Esta subscrición debe permitir o volume de datos que se sincronizan.

  • Configuración da devasa. Recomendámoslle que desactive Permitir o acceso a servizos de Azure e especifique os enderezos IP de cliente apropiados indicados neste tema. Máis información: Enderezos IP estáticos da base de datos de Azure SQL usados polo Servizo de Exportación de Datos

    Tamén pode activar Permitir o acceso a servizos de Azure para permitir o acceso a todos os servizos de Azure.

    Para SQL Server en Azure VM, a opción "Conectar ao servidor de SQL en Internet" debe estar activada. Máis información: Azure: Conectar a unha máquina virtual de SQL Server en Azure

    Ademais, configure as súas regras de firewall para permitir a comunicación entre o servizo de exportación de datos e SQL Server.

  • O usuario da base de datos debe ter permisos a nivel da base de datos e do esquema segundo as seguintes táboas. O usuario da base de datos utilízase na cadea de conexión de exportación de datos.

    Permisos requiridos para a base de datos.

    Código do tipo de permiso Nome de permiso
    CRTB CREAR UNHA TÁBOA
    CRTY CREAR TIPO
    CRVW CREAR VISTA
    CRPR CREAR PROCEDEMENTO
    ALUS ALTERAR USUARIOS
    VWDS VER ESTADO DA BASE DE DATOS

    Permisos requiridos para o esquema.

    Código do tipo de permiso Nome de permiso
    AL ALTERAR
    IN INSERIR
    DL SUPR
    SL SELECCIONAR
    UP ACTUALIZAR
    EX EXECUTAR
    RF REFERENCIAS

Servizo de almacén de claves de Azure

  • Subscrición ao Almacén de claves de propiedade do cliente, que se usa para manter de forma segura a cadea de conexión da base de datos.

  • Outorgue o permiso PermissionsToSecrets á aplicación con ID "b861dbcc-a7ef-4219-a005-0e4de4ea7dcf". Isto pódese concluír executando o comando AzurePowerShell a continuación e úsase para acceder ao Almacén de claves que contén o secreto da cadea de conexión. Máis información: Como configurar o almacén de claves de Azure

  • Os secretos do almacén de claves debe ter etiquetas cos ID da organización (OrgId) e arrendatario (TenantId). Isto pódese concluír executando o comando de AzurePowerShell que aparece a continuación. Máis información: Como configurar o almacén de claves de Azure

  • Configure as súas regras de firewall para permitir a comunicación entre o servizo de exportación de datos e Azure Key Vault.

Aplicacións de interacción cos clientes

  • Un ambiente da versión 9.0 ou posterior.

  • Débese instalar a solución do servizo de exportación de datos.

    • Vaia a Configuración>Microsoft Appsource> busque ou explore a Microsoft Dynamics 365 - Servizo de exportación de datos e seleccione Obter agora.
    • Ou pode atopalo en Microsoft AppSource.
  • As entidades que se van engadir a Perfil de exportación deben estar activadas co rastrexamento de modificacións. Para garantir que unha entidade estándar ou personalizada se poida sincronizar, vaia a Personalización>Personalizar o Sistema e, a seguir, seleccione a entidade. No separadorXeral, asegúrese de que a opción Rastrexo de modificacións na sección Servizos de Datos está activada.

  • Debe ter o rol de seguranza de Administrador do Sistema no ambiente.

Explorador web

Activa as ventás emerxentes para o dominio https://discovery.crmreplication.azure.net/ no teu navegador web. Isto é necesario para o inicio de sesión automático ao navegar a Configuración > Exportación de datos.

Servizos, credenciais e privilexios necesarios

Para utilizar a funcionalidade do servizo de exportación de datos, debe ter os seguintes servizos, credenciais e privilexios.

  • Unha subscrición. Só os usuarios que teñen atribuído o rol de seguranza de Administrador do Sistema poden definir ou modificar un Perfil de Exportación.

  • Subscrición de Azure que inclúe os servizos seguintes.

    • Azure SQL Database ou AzureSQL Server en máquinas virtuais de Azure.

    • Azure Key Vault.

Importante

Para utilizar o servizo Exportación de datos, as aplicacións de participación do cliente e os servizos Azure Key Vault deben funcionar baixo o mesmo inquilino e co mesmo Microsoft Entra ID. Máis información: Integración de Azure con Microsoft 365

O servizo Azure SQL Database pode estar no mesmo arrendatario ou nun arrendatario diferente.

Cousas que debe saber antes de usar o Servizo de exportación de datos

  • Débense eliminar os perfís de exportación e despois crealos outra vez ao realizar calquera das seguintes accións nun ambiente.

    • Restaurar un ambiente.
    • Copiar (completa ou parcialmente) un ambiente.
    • Restablecer un ambiente.
    • Mover un ambiente a outro país ou rexión.

    Para facer isto, elimine o Perfil de exportación na visualización PERFÍS DE EXPORTACIÓN, elimine as táboas e os procedementos almacenados e, a seguir, cree un perfil novo. Máis información: Como eliminar todas as táboas de Perfil de Exportación de Datos e procedementos almacenados

  • O servizo de exportación de datos non funciona para o illamento de procesos ou os ambientes de produción que están configurados co modo Activar administración activado. Máis información: Modo de administración.

  • O servizo de exportación de datos non solta (elimina) as táboas ou columnas asociadas nin os obxectos do procedemento almacenado na base de datos de Azure SQL de destino cando se producen as seguintes accións.

Perfil de exportación

Para exportar datos desde aplicacións de interacción cos clientes, o administrador crea un Perfil de exportación. Pódense crear e activar varios perfís para a sincronización de datos a diferentes bases de datos de destino simultaneamente.

O Perfil de exportación é o concepto principal do servizo de exportación de datos. O Perfil de exportación recolle información de instalación e configuración para sincronizar datos coa base de datos de destino. Como parte do Perfil de exportación, o administrador fornece unha lista de entidades que se poden exportar á base de datos de destino. Unha vez activado, o Perfil de exportación inicia a sincronización automática de datos. Ao principio, expórtanse todos os datos que se corresponden coa entidade seleccionada. Despois, só se sincronizan continuamente os cambios aos datos a medida que se producen nos rexistros de entidade ou metadatos en aplicacións de interacción cos clientes usando un mecanismo desencadeador en case tempo real. Por tanto, non é necesario configurar unha programación para recuperar datos de aplicacións de interacción cos clientes.

Só as entidades que teñan activado o rastrexo de modificacións pódense engadir ao Perfil de exportación. Teña en conta que, a maioría das entidades estándar que capturan os datos están activados para o rastrexo de modificacións. As entidades personalizadas deben estar explicitamente activadas para o rastrexo de modificacións antes de poder engadilas a un Perfil de exportación. máis información: Activar o seguimento de modificacións para controlar a sincronización de datos

O servizo de exportación de datos realiza a sincronización de metadatos e datos. Cada entidade resulta nunha táboa, e cada campo resulta nunha columna na táboa de base de datos de destino. Os nomes de táboa e columna utilizan o nome dos metadatos.

Unha vez activado, un Perfil de exportación recolle estatísticas de sincronización de datos que axuda á visibilidade operativa e diagnóstico dos datos exportados.

Sincronización de datos dispoñible cun Perfil de Exportación

Categoría Funcionalidade Tipos de datos compatibles
Sincronización inicial Metadatos: Tipos de Datos Básicos Tipos de datos: Número Enteiro, Número de punto flotante, Número Decimal, Liña Única de Texto, Varias Liñas de Texto, Data e Hora.
Sincronización inicial Metadatos: Tipos de Datos avanzados Moeda, PartyList, Conxunto de Opcións, Estado, Motivo Para o Estado, Busca (incluídos os tipos de busca Cliente e Referente). PartyList só está dispoñible para a exportación da versión 8.1 e superior.
Sincronización inicial Datos: Tipos Básicos Todos os tipos de Datos Básicos.
Sincronización inicial Datos: Tipos avanzados Todos os tipos de Datos avanzados.
Sincronización Delta Modificar Esquema: Tipos Básicos Engada ou modifique un cambio de campo, todos os tipos de datos básicos.
Sincronización Delta Modificar Esquema: Tipos avanzados Engada ou modifique un cambio de campo, todos os tipos de datos avanzados.
Sincronización Delta Modificar Datos: Tipos Básicos Todos os tipos de Datos Básicos.
Sincronización Delta Modificar Datos: Tipos avanzados Todos os tipos de datos avanzados, como PartyList.

Crear un perfil de exportación

Asegúrese de que se cumpren os requisitos seguintes antes de crear un Perfil de exportación.

  • A solución servizo de exportación de datos está instalada no seu ambiente.

  • Manter a cadea de conexión da base de datos de SQL no Almacén de claves e copie o URL do Almacén de claves para fornecer no Perfil de Exportación. Máis información: Azure: Comezar co Almacén de claves de Azure

  • As entidades que se van engadir ao Perfil de exportación están activadas para o rastrexamento de modificacións. máis información: Activar o seguimento de modificacións para controlar a sincronización de datos

  • O servizo de base de datos de SQL ten suficiente espazo de almacenamento para almacenar os datos.

  • Vostede é un administrador do sistema no ambiente.

  1. Vaia a Configuración>Exportación de datos.

  2. Revise o aviso e seleccione Continuar ou Cancelar se non desexa exportar datos.

  3. Seleccione Novo ara crear un novo perfil de exportación.

  4. No paso Propiedades, introduza a seguinte información e, a seguir, seleccione Seguinte para continuar sen conectar co Almacén de claves. Ao seleccionar Validar úsase o URL do Almacén de datos fornecido para conectar co Almacén de datos.

    • Nome. Nome único do perfil. Este é un campo obrigatorio.

    • URL de conexión do Almacén de claves. URL do Almacén de claves que apunta á cadea de conexión almacenada con credenciais usadas para conectar coa base de datos de destino. Este é un campo obrigatorio. Máis información: Como configurar o almacén de claves de Azure

      Importante

      A conexión do almacén de chaves do URL diferencia entre maiúsculas e minúsculas. Introduza a conexión do almacén de chaves do URL exactamente como se mostra despois de executar os comandos de Windows PowerShell neste tema.

    • Esquema. Nome de esquema de base de datos alternativo. Só os caracteres alfanuméricos son válidos. Este campo é opcional. Por defecto, dbo é o esquema que se usará para a base de datos de SQL.

    • Prefixo. Prefixo que se vai utilizar para os nomes de táboa creados na base de datos de destino. Isto axuda a identificar facilmente as táboas creadas para o Perfil de exportación na base de datos de destino. Cando se especifica, asegúrese de que o prefixo é inferior a 15 caracteres. Este campo é opcional e só se permiten caracteres alfanuméricos.

    • Número de reintentos. O número de veces que se tenta un rexistro en caso de erro ao inserir ou actualizar a táboa de destino. Este é un campo obrigatorio. Os valores aceptables son de 0 a 20 e o predefinido é 12.

    • Intervalo de reintentos. O número de segundos que hai que agardar antes de reintentar en caso de erro. Este é un campo obrigatorio. Os valores aceptables son de 0 a 3600 e o predefinido é 5.

    • Escribir rexistro de eliminación. Configuración opcional para o rexistro de rexistros eliminados.

    Pestana Propiedades na caixa de diálogo Crear perfil de exportación.

  5. No paso Seleccionar Entidades, seleccione as entidades que desexa exportar á base de datos de SQL de destino e, a seguir, seleccione Seguinte.

    Seleccione a pestana Entidades no cadro de diálogo Crear perfil de exportación.

  6. No paso Seleccionar Relacións, só pode sincronizar as relacións M:N (varios a varios) que existen coas entidades seleccionadas no paso anterior. Seleccione Seguinte.

    Crear perfil de exportación - Xestionar relacións - Seleccionar relacións.

  7. No paso Resumo, seleccione Crear e Activar para crear o rexistro do perfil e conectarse ao Almacén de claves, que comeza o proceso de sincronización. Ou seleccione Crear para gardar o Perfil de exportación e activalo despois.

    Pestana Resumo na caixa de diálogo Crear perfil de exportación.

Modificar un Perfil de Exportación existente

Pode engadir ou eliminar as entidades e relacións nun Perfil de exportación existente que desexe replicar.

  1. Vaia a Configuración>Exportación de datos.

  2. Na visualización de Todos os perfís de Exportación de Datos, seleccione o Perfil de exportación que desexa modificar.

    Seleccione un perfil de exportación.

  3. Na barra de ferramentas Accións, seleccione XESTIONAR ENTIDADES para engadir ou eliminar entidades para a exportación de datos. Para engadir ou eliminar as relacións das entidades, seleccione XESTIONAR RELACIÓNS.

    Xestionar entidades ou relacións con entidades.

  4. Seleccione as entidades ou relacións das entidades que quere engadir ou eliminar.

    Seleccione as entidades ou as relacións de entidades para engadir ou eliminar.

  5. Seleccione Actualizar para enviar as modificacións ao Perfil de exportación.

Importante

Ao eliminar unha entidade ou relación de entidades dun Perfil de exportación, non solta a táboa correspondente na base de datos de destino. Para poder engadir de novo unha entidade que foi eliminada, debe soltar a táboa correspondente na base de datos de destino. Para deixar unha táboa de entidade, consulte Como eliminar táboas de Perfil de Exportación de Datos e procedementos almacenados para unha entidade específica.

Detalles da táboa para a base de datos de Azure SQL de destino

O servizo de exportación de datos crea táboas de metadatos e datos. Créase unha táboa para cada entidade e relación M:N que se sincroniza.

Unha vez que un Perfil de exportación está activado, estas táboas créanse na base de datos de destino. Estas son táboas do sistema e non terán os campos SinkCreatedTime e SinkModifiedTime engadidos.

Nome da táboa Creada
<Prefix>_GlobalOptionsetMetadata Despois da activación do perfil de exportación
<Prefix>_OptionsetMetadata Despois da activación do perfil de exportación
<Prefix>_StateMetadata Despois da activación do perfil de exportación
<Prefix>_StatusMetadata Despois da activación do perfil de exportación
<Prefix>_TargetMetadata Despois da activación do perfil de exportación
<Prefix>_AttributeMetadata Despois da activación do perfil de exportación
<Prefix>_DeleteLog Cando se active o Perfil de exportación ao activar a opción de rexistro de eliminación.

Resolución de problemas de sincronización

Incluso despois varios reintentos, pode haber erros de sincronización de rexistros debido ás restricións de almacenamento da base de datos ou de bloqueo da táboa a causa de consultas de execución longas. Para resolver estes erros, pode forzar a resincronización só dos rexistros con erros ou unha resincronización de todos os rexistros.

  1. Visualice os perfís de exportación para buscar os que teñen erros de sincronización de rexistros. Faino visualizando os perfís de datos na área Sincronización ou abrindo un perfil de exportación, como este perfil que ten un erro de sincronización de rexistro de entidade de contacto.

    DataExport_failed_records_exist.

  2. Examine a orixe do erro de sincronización e resólvao. Máis información: Xestión e monitorización de erros

  3. Despois de resolver o problema, resincronice os rexistros con erros.

    Nota

    A sincronización de rexistros con erros é unha funcionalidade de previsualización pública.

    • As funcionalidades de vista previa non se deseñaron para uso de produción e poden ter funcionalidade restrinxida. Estas funcionalidades están dispoñibles antes da versión oficial para que os clientes poidan obter acceso a elas rápido e fornecer comentarios.
      • Espérase que esta funcionalidade se modifique, así que non debería usala en produción. Úsea só en ambientes de desenvolvemento e proba.
      • Microsoft non fornece soporte para esta funcionalidade de previsualización. Soporte técnico para Microsoft Dynamics 365 non poderá axudalo con problemas nin preguntas. As funcionalidades de previsualización non son para usalas en produción e están suxeitas a diferentes condicións de uso adicionais.
    1. Inicie sesión no ambiente e vaia a Configuración>Exportación de Datos.

    2. Abra o Perfil de exportación que inclúe erros de sincronización de rexistros.

    3. Na barra de ferramentas do Perfil de exportación, seleccione SINCRONIZAR DE NOVO OS REXISTROS DE ERROS.

    4. Seleccione Aceptar despois da resincronización de dos rexistros con erros na caixa de diálogo de confirmación.

    Notificación dunha resincronización exitosa.

    1. Verifique que o perfil de exportación non conteña notificacións de rexistros errados abrindo o perfil Exportación de datos e visualizando o contador Notificacións erradas no PROPIEDADES & XERAL pestana, que debería ser 0. Seleccione ACTUALIZAR na barra de ferramentas do Perfil de exportación para asegurarse de que o valor de Notificacións de Erros é actual.

    Indicación de erros de cero rexistros.

  4. Se persisten os erros de sincronización de rexistros despois de tentar a resincronización seguindo os pasos anteriores, póñase en contacto cos Servizos de asistencia técnica do cliente de Microsoft.

Xestión e monitorización de erros

Para ver o estado de sincronización dun Perfil de exportación, vaia a Configuración>Exportación de datos e abra o Perfil de exportación. No separador ENTIDADES, o estado da sincronización móstrase incluíndo unha columna de Rexistros con erros dos rexistros que non se puideron sincronizar. Para os rexistros con erros, unha lista deses rexistros, incluído o motivo para o estado, pode descargarse seleccionando REXISTROS CON ERRO na barra de comandos.

Barra de comandos de exportación de perfil: botón de rexistros errados.

No Perfil de exportación pode seleccionar PROPIEDADES & DESCRICIÓN GENERAL para mostrar as propiedades do perfil. Seleccione RELACIÓNS para ver o estado de sincronización das relacións.

Como ver información detallada sobre os rexistros que non se puido sincronizar

Visualizar os rexistros con erros pode axudar a determinar a causa dos erros de sincronización. Para ver os rexistros con erros na base de datos de Azure de destino, utilice o Explorador de Almacenamento Azure, unha aplicación independente gratuíta que lle permite facilmente traballar cos datos de Almacenamento Azure. Máis información: Explorador de Almacenamento Azure.

  1. Vaia a Configuración>Exportación de datos.

  2. Na visualización de Perfil de exportación de todos os datos, seleccione o Perfil de exportación que ten erro de notificación.

    Notificacións erradas.

  3. Na barra de ferramentas Accións, seleccione ERROS DE REXISTROS.

    Botón da barra de ferramentas de rexistros errados.

  4. Na caixa de diálogo de Descargar erros de Rexistros, seleccione Copiar URL de Blob e, a seguir, seleccione Aceptar.

    Cadro de diálogo Descargar rexistros errados.

    Nota

    O URL de blob é válido ata 24 horas. Se o URL supera o período de 24 horas, repita os pasos descritos anteriormente para xerar un URL de blob novo.

  5. Iniciar o Explorador de Almacenamento Azure.

  6. No Explorador de Almacenamento Azure, seleccione Conectarse a Almacenamento Azure.

  7. Pegue o URL do portapapeis na caixa Conectarse a Almacenamento Azure e, a seguir, seleccione Seguinte.

  8. Na páxina Resumo de Conexión, seleccione Conectarse.

  9. O Explorador de Almacenamento Azure conéctase coa base de datos de destino. Se hai rexistros con erros para o Perfil de exportación, o Explorador de Almacenamento Azure mostra cartafoles de sincronización de rexistros con erros.

Como ver información detallada sobre os rexistros que non se puido sincronizar (previsualización)

Pode descargar os rexistros con erros directamente desde a interface de usuario do Servizo de Exportación de Datos. Esta funcionalidade actualmente está en Previsualización e sería ideal que a puidera probar e fornecer comentarios.

Pasos para descargar rexistros con erros:

  1. Identifique o perfil de rexistros con erros.

    Exportación de datos perfís.

  2. Seleccione o perfil e seleccione Descargar rexistros con erros (Previsualización) na barra de menú superior.

    Descargar rexistros errados (versión preliminar).

  3. Na caixa de diálogo Descargar rexistros con erros, verá unha lista ordenada dos últimos 20 (máx.) ficheiros blob. Seleccione o que desexe descargar e, a seguir, seleccione Aceptar.

    Descargar rexistros errados.

  4. Unha vez descargado, abra o ficheiro no editor de texto que escolla (por exemplo, Notepad) e consulte os detalles dos erros.

    Rexistro de erros de mostra.

Estrutura de cartafoles de sincronización de rexistros con erros e ficheiros de rexistros

O URL de Azure Blob Storage de rexistros con erros apunta a unha localización que ten a seguinte estrutura de cartafoles:

  • datos. Este cartafol contén notificacións de datos con erros e o JSON asociado para os datos do rexistro.

  • metadatos. Este cartafol contén notificacións de metadatos con erros e o JSON asociado para os metadatos.

  • failurelog. Este cartafol contén rexistros que fornecen información sobre os erros de sincronización e o motivo dos erros.

  • forcerefreshfailurelog. Este cartafol contén erros da última execución do comando de rexistros con erros do servizo de exportación de datos utilizado para resincronizar rexistros con erros.

  • unprocessablemessages. Este cartafol contén notificacións de datos que non se procesaron debido á eliminación de datos ou metadatos e o JSON asociado.

    Os cartafoles failurelog e forcerefreshfailurelog están estruturados da seguinte maneira Ano\Mes\Día\Hora, para que poida localizar rapidamente os erros máis recentes. Eliminaranse todos os rexistros de erros con máis de 30 días.

    Aquí atopará un ficheiro de rexistro de exemplo que indica un erro de sincronización de rexistro de entidade de contacto.

Entity: contact, RecordId: 459d1d3e-7cc8-e611-80f7-5065f38bf1c1, NotificationTime: 12/28/2016 12:32:39 AM, ChangeType: Update, FailureReason: The database 'tempdb' has reached its size quota. Partition or delete data, drop indexes, or consult the documentation for possible resolutions.  
The statement has been terminated.  

Motivos comúns para erros de sincronización de rexistros

Estas son algunhas razóns polas que poden ocorrer os erros de sincronización de rexistros.

  • Almacenamento insuficiente para a base de datos de destino. Antes de tentar resincronizar rexistros con erros, aumente ou libere almacenamento de da base de datos SQL de Azure, segundo sexa necesario. Cando se produce este problema, rexístrase unha mensaxe semellante ao rexistro con erros.

    A base de datos 'databasename' alcanzou a cota de tamaño. Elimine ou divida os datos, elimine índices ou consulte a documentación para posibles solucións.

  • Os tempos límite de sincronización coa base de datos SQL de Azure. Isto pode ocorrer durante a sincronización inicial dun perfil de exportación de datos cando se procesan grandes cantidades de datos dunha vez. Cando se produce este problema, resincronice os rexistros con erros. Resolución de problemas de sincronización

Prácticas recomendadas ao usar a base de datos de Azure SQL coa Exportación de datos

  • Para evitar erros de sincronización debido á limitación de recursos, recomendámoslle ter unha base de datos SQL de Azure Premium P1 ou un plan mellor ao utilizar o servizo de exportación de datos. Máis información: Límites dos recursos da base de datos de Azure SQL e Definición de prezos da base de datos de SQL

  • Defina a base de datos SQL de Azure para usar o illamento de instantáneas de dotación de lectura (RCSI) para cargas de traballo que se executan á mesma vez na base de datos de destino que execute consultas de lectura de execución longa, como traballos de informes e de ETL. Isto reducirá a ocorrencia de erros de tempo de espera que se poden producir co servizo de exportación de datos debido a conflitos de ler/escribir.

  • Para axudar a mellorar o rendemiento das consultas, recomendamos que o grao máximo de paralelismo da base de datos do servizo de exportación de datos (MAXDOP) se estableza en 1. Máis información: MSDN: Opcións de memoria del servidor

  • Avalíe con frecuencia a cantidade de fragmentación, e cando sexa necesario, volva crear os índices na base de datos do servizo de exportación de datos. Máis información: Reorganizar e volver crear os índices

  • Actualice periodicamente as estatísticas da base de datos de táboas e vistas indexadas na base de datos do servizo de exportación de datos. Máis información: Actualizar estatísticas

  • Supervisar a utilización da base de datos do servizo de exportación de datos. Máis información: Supervisión de rendemento

Acerca da latencia de sincronización de datos

O servizo de exportación de datos está deseñado para sincronizar as modificacións dos datos da base de datos de destino utilizando un mecanismo push escoitando os cambios a medida que acontecen en aplicacións de interacción cos clientes. O servizo esfórzase para inserir datos aos poucos minutos, pero hai un número de factores que poden influír na latencia de sincronización dun extremo a outro.

Os factores que inflúen na duración da sincronización inclúen os seguintes:

  • A carga de traballo actual en aplicacións de interacción cos clientes.
  • A frecuencia de modificación dos datos en aplicacións de interacción cos clientes.
  • O número de entidades engadidas a cada perfil de exportación e os seus atributos.
  • Rendemento do SQL Server. Por exemplo:
    • Hora de configuración da conexión de SQL.
    • Hora da execución da declaración de SQL.

A través da nosa supervisión do servizo, observamos que a maior parte da sincronización delta en curso conclúe en 15 minutos cando o servizo funciona nas condicións seguintes:

  • A sincronización que se produce é unha sincronización delta e non a sincronización inicial. A sincronización delta é só para as operacións de modificación de datos, que inclúen transaccións de creación, actualización e eliminación de rexistros. Teña en conta que a sincronización delta comeza despois de que conclúa a sincronización inicial.
  • A taxa de modificacións de datos máxima en aplicacións de interacción cos clientes para todas as entidades no perfil de exportación é menos de 3000 rexistros por hora. Calquera aumento repentino da taxa de modificación de datos debido á modificación en masa de rexistros que supere a taxa de modificacións máxima provocará latencia adicional.
  • Cada entidade engadda a un perfil de exportación ten menos de 150 atributos.
  • A conexión da base de datos ou a execución da declaración de SQL conclúe en menos de 10 segundos. Se se supera este límite terá como resultado unha latencia adicional.
  • Durante a sincronización non ocorren erros de execución de SQL nin de conexión de base de datos se destino.

Cando se cumpren as condicións anteriores, 15 minutos é a latencia de sincronización habitual. Microsoft non fornece acordo de nivel de servizo (SLA) para o servizo de exportación de datos e non fai garantías nin compromisos referentes aos tempos de latencia de sincronización.

Como configurar Azure Key Vault

Execute o script de Windows PowerShell descrito aquí como administrador de conta de Azure para darlle permiso para a funcionalidade de servizo de exportación de datos, de modo que poida acceder ao seu Azure Key Vault. Este script mostra o URL do almacén de claves requirido para crear o Perfil de exportación utilizado para acceder á cadea de conexión.

Antes de executar o script, substitúa os marcadores de posición para as variables seguintes.

  • $subscriptionId. O grupo de recursos do Almacén de claves que desexa utilizar. Se aínda non existe un grupo de recursos, crearase un novo co nome que especificou. Neste exemplo, úsase ContosoResourceGroup1.

  • $location. Especifique a localización en que o grupo de recursos está, ou debería estar, localizado, tales como Oeste de Estados Unidos.

  • $connectionString. Elimine a cadea de conexión á base de datos SQL de Azure. Pode utilizar a cadea de conexión ADO.NET como se mostra no panel de Azure.

  • $organizationIdList = Lista separada por comas de organizacións permitidas, listadas por ID de organización (organizationId) para permitir o servizo de exportación de datos. Para localizar o id. dunha organización, vaia a Configuración>Personalizacións>Recursos para Programadores. O id. de organización está en Información de Referencia do ambiente.

  • $tenantId. Especifica o ID de arrendatario de Azure Active Directory ao que pertence o Almacén de claves.

Importante

Unha subscrición de Azure pode ter varios ID de arrendatario de Azure Active Directory. Asegúrese de que selecciona o ID de arrendatario de Azure Active Directory correcto que está asociado ao ambiente que desexa utilizar para a exportación de datos.

Nota

Asegúrese de que o ID de usuario ao que se fai referencia en $connectionString teña o permiso adecuado para a base de datos SQL de Azure de destino.

# -------------------------------------------------------------------------------- #
    #  Provide the value for the following parameters before executing the script
$subscriptionId = 'ContosoSubscriptionId'    
$keyvaultName = 'ContosoKeyVault'
    $secretName = 'ContosoDataExportSecret'
    $resourceGroupName = 'ContosoResourceGroup1'
    $location = 'West US'
    $connectionString = 'AzureSQLconnectionString'
$organizationIdList = 'ContosoSalesOrg1_id, ContosoSalesOrg2_id'
$tenantId = 'tenantId'
    # -------------------------------------------------------------------------------- #

# Login to Azure account, select subscription and tenant Id
Connect-AzAccount -Tenant $tenantId -Subscription $subscriptionId

# Create new resource group if not exists.
$rgAvail = Get-AzResourceGroup -Name $resourceGroupName -Location $location -ErrorAction SilentlyContinue
if(!$rgAvail){
    New-AzResourceGroup -Name $resourceGroupName -Location $location
}

# Create new key vault if not exists.
$kvAvail = Get-AzKeyVault -VaultName $keyvaultName -ResourceGroupName $resourceGroupName -ErrorAction SilentlyContinue
if(!$kvAvail){
    New-AzKeyVault -VaultName $keyvaultName -ResourceGroupName $resourceGroupName -Location $location
    # Wait few seconds for DNS entry to propagate
    Start-Sleep -Seconds 15
}

# Create tags to store allowed set of Organizations.
$secretTags = @{}
foreach ($orgId in $organizationIdList.Split(',')) {
    $secretTags.Add($orgId.Trim(), $tenantId)
}

# Add or update a secret to key vault.
$secretValue = ConvertTo-SecureString $connectionString -AsPlainText -Force
$secret = Set-AzKeyVaultSecret -VaultName $keyvaultName -Name $secretName -SecretValue $secretValue -Tags $secretTags

# Authorize application to access key vault.
$servicePrincipal = 'b861dbcc-a7ef-4219-a005-0e4de4ea7dcf'
Set-AzKeyVaultAccessPolicy -VaultName $keyvaultName -ServicePrincipalName $servicePrincipal -PermissionsToSecrets get

# Display secret url.
Write-Host "Connection key vault URL is "$secret.id.TrimEnd($secret.Version)""

Como eliminar todas as táboas de Perfil de Exportación de Datos e procedementos almacenados

Importante

Antes de executar esta declaración de SQL asegúrese de que definiu correctamente os valores @prefix e @schema na declaración. O perfil de exportación terá que se crear de novo despois de executar esta declaración de SQL.

-----------------------------------------------------------------
-- Provide the value for the following parameters
DECLARE @prefix nvarchar(32) =''
DECLARE @schema nvarchar(32) ='dbo'
-----------------------------------------------------------------

DECLARE @sql nvarchar(max) = '';

SELECT @sql += 'DROP TABLE ' + QUOTENAME([TABLE_SCHEMA]) + '.' + QUOTENAME([TABLE_NAME]) + ';'
FROM [INFORMATION_SCHEMA].[TABLES]
WHERE [TABLE_TYPE] = 'BASE TABLE' AND [TABLE_NAME] like @prefix + '_%' AND [TABLE_SCHEMA]= @schema;

PRINT @sql
EXEC SP_EXECUTESQL @sql;

PRINT 'Finished dropping all tables. Starting to drop all stored procedures now.'

SELECT @sql='';
SELECT @sql += 'DROP PROCEDURE ' + QUOTENAME([ROUTINE_SCHEMA]) + '.' + QUOTENAME([ROUTINE_NAME]) + ';'
FROM [INFORMATION_SCHEMA].[ROUTINES]
WHERE [ROUTINE_TYPE] = 'PROCEDURE' AND [ROUTINE_NAME] like @prefix + '_%' AND [ROUTINE_SCHEMA]= @schema;
PRINT @sql
EXEC SP_EXECUTESQL @sql;

PRINT 'Finished dropping all stored procedures. Starting to drop all types now.'

SELECT @sql=''; 
SELECT @sql += 'DROP TYPE ' + QUOTENAME(SCHEMA_NAME([SCHEMA_ID])) + '.' +  QUOTENAME([NAME]) + ';'
FROM SYS.TYPES
WHERE is_user_defined = 1 AND [NAME] LIKE @prefix + '_%' AND [SCHEMA_ID]=SCHEMA_ID(@schema);

PRINT @sql
EXEC SP_EXECUTESQL @sql;

Como eliminar táboas de Perfil de Exportación de Datos e procedementos almacenados para unha entidade específica

Importante

Antes de executar esta declaración de SQL asegúrese de que definiu correctamente os valores @prefix, @schema e @entityName na declaración. Neste exemplo, a táboa de entidade de clientes potenciais, os tipos e os procedementos almacenados elimínanse.

-----------------------------------------------------------------
-- Provide the value for the following parameters
DECLARE @prefix nvarchar(32) ='crm'
DECLARE @schema nvarchar(32) ='dbo'
DECLARE @entityName nvarchar(32) ='lead'
-----------------------------------------------------------------
DECLARE @sql nvarchar(max) = '';

IF @prefix != '' 
BEGIN
       SET @prefix = @prefix + '_'
END

SELECT @sql += 'DROP TABLE ' + QUOTENAME([TABLE_SCHEMA]) + '.' + QUOTENAME([TABLE_NAME]) + ';'
FROM [INFORMATION_SCHEMA].[TABLES]
WHERE [TABLE_TYPE] = 'BASE TABLE' AND [TABLE_NAME] like @prefix + @entityName  AND [TABLE_SCHEMA]= @schema;
PRINT @sql
EXEC SP_EXECUTESQL @sql;
PRINT 'Finished dropping the entity. Starting to drop the types associated with the entity'

SELECT @sql='';
SELECT @sql += 'DROP TYPE ' + QUOTENAME(SCHEMA_NAME([SCHEMA_ID])) + '.' + QUOTENAME([NAME]) + ';'
FROM SYS.TYPES
WHERE
  is_user_defined = 1
  AND (
    [NAME] LIKE @prefix + @entityName +'Type' 
    OR [NAME] LIKE @prefix + @entityName +'IdType'
  )
  AND [SCHEMA_ID] = SCHEMA_ID(@schema);
PRINT @sql
EXEC SP_EXECUTESQL @sql;

Como desinstalar o servizo de exportación de datos de Administer Power Platform

  1. Navegue até a configuración avanzada.
  2. Seleccione Configuración > Personalizacións e, a seguir, seleccione Solucións.
  3. Escolla DataExportService publicado por Microsoft Dynamics 365 e, a continuación, seleccione Eliminar.

Busca o Microsoft Entra ID de inquilino para o teu inquilino

  1. Inicie sesión no portal de Azure.
  2. En Servizos de Azure, seleccione Propiedades do arrendatario.
  3. Seleccione o valor no campo ID de arrendatario.

Enderezos IP estáticos da base de datos de Azure SQL usados polo Servizo de Exportación de Datos

Na base de datos SQL de Azure , seleccione Definir devasa de servidor, poña Permitir o acceso a servizos de Azure en OFF, seleccione Engadir IP de cliente e, a seguir, engada os enderezos de IP apropiados para a rexión do seu ambiente. Máis información: Azure: Configurar unha regra de devasa a nivel de servidor da base de datos de Azure SQL utilizando o Portal de Azurel

Rexión Novo enderezo IP Enderezo IP antigo
Oeste dos EUA 20.245.127.60 13.64.148.9
Leste de Estados Unidos 172.174.41.63 20.228.153.81
Leste de Asia 20.239.192.9 104.208.84.217
Sueste de Asia 20.24.15.60 20.205.153.14
India Central 20.219.158.75 20.198.113.107
Sur da India 52.140.54.95 104.211.204.18
Oeste de Europa 20.126.43.104 40.68.244.253
Norte de Europa 20.166.94.137 20.238.83.32
Oeste de Xapón Non hai modificacións 104.214.144.93
Leste de Xapón 52.253.104.175 20.89.138.246
Sur do Brasil 4.228.211.102 20.197.186.17
Sueste de Australia Non hai modificacións 20.70.112.80
Leste de Australia 20.5.88.96 20.213.58.3
Canadá Central 20.220.227.230 20.151.173.107
Canadá Oriental 40.86.216.207 52.229.109.91
Reino Unido Oeste 51.142.173.150 20.68.113.18
Reino Unido Sur 20.117.159.198 20.117.89.184

Nota

Os clientes norteamericanos deberían engadir enderezos IP a unha lista aprobada tanto para o leste dos EUA como para o oeste dos EUA.

Para evitar calquera interrupción na sincronización de datos, os clientes deben manter o novo enderezo IP e o antigo enderezo IP.

Problemas coñecidos

Os rexistros eliminados pódense inserir de novo na táboa de entidade despois dun erro de sincronización

Cando se recupere dos erros de sincronización, os rexistros que se eliminaron previamente poden inserirse de novo na táboa de entidade de orixe. Para solucionar este problema ao producírense erros de sincronización, siga estes pasos.

  1. Cree Perfís de exportación que estean activados para Escribir Eliminar Rexistro. Cree de novo Perfís de exportación que non estean activados para Escribir Eliminar Rexistro.

  2. Cree e execute unha consulta de SQL para a base de datos de destino de Azure SQL que busca rexistros na táboa DeleteLog. Se se atopan un ou máis rexistros, isto indica a presenza de rexistros eliminados.

  3. Se existe un ou máis rexistros na táboa DeleteLog, cree e execute unha consulta de SQL que detecte ambientes onde o ID de rexistro dun rexistro na táboa DeleteLog coincida co ID de rexistro dun rexistro nunha táboa de EntityName e o versionNumber en deleteLog é maior que o versionNumber do rexistro na táboa EntityName. Cando se produce unha coincidencia de ID de rexistro, elimine o rexistro da táboa EntityName. Por exemplo, se un ID de rexistro na columna AccountId da táboa DeleteLog coicide cun ID de rexistro na columna AccountId da táboa de entidade AccountBase e o versionNumber en DeleteLog e maior que o versionNumber na táboa Conta, elimine o rexistro da táboa de entidade AccountBase.

    Importante

    Segundo as súas necesidades empresariais e requisitos, recomendámoslle que execute as consultas de SQL para a eliminación de rexistros con frecuencia, pero durante non operativas.

    Consulta de exemplo para a eliminación de rexistros de entidade.

DELETE A FROM [dbo].[prefix_account] A
WHERE id IN (SELECT CONVERT(uniqueidentifier, recordid) FROM [dbo].[prefix_DeleteLog] DL WHERE DL.entityname ='account'
AND DL.VersionNumber > A.VersionNumber)

Entidades que non son compatibles coa exportación de datos

As entidades que aparecen aquí, aínda que admiten o rastrexo de cambios, non admiten a exportación de datos usando o servizo de exportación de datos.

Entidad Nome da táboa Solución
Actividade ActivityPointerBase Seleccione as entidades de actividade específicas para a exportación, como chamada telefónica, compromiso, correo electrónico e tarefas.

Non se pode crear unha fila maior que o tamaño da fila máximo permitido (8K)

Se o rexistro de erro mostra "Non se pode crear unha fila de tamaño (tamaño) que sexa maior que o tamaño de fila máximo permitido de 8060", está a ter un problema no que excede o límite de tamaño de fila máximo permitido. O Servizo de exportación de datos non admite que o tamaño da fila sexa maior que o tamaño máximo de fila permitido de 8k. Para mitigar isto, ten que asegurarse de que respecta os límites de tamaño de fila.

A lonxitude da cadea na orixe é maior que o esquema de destino para ColumnName

Se os rexistros de erro mostran "A lonxitude da cadea na orixe é maior que o esquema de destino para [ColumnName, MaxDataLength]" está a ter un problema no que lonxitude da cadea dos datos de orixe é maior que o destino. Se a lonxitude da cadea dos datos de orixe é maior que o destino, produciranse erros de escritura para o destino. Para mitigar este problema, ten que reducir o tamaño dos datos ou aumentar a lonxitude da columna, maior que MaxLength manualmente na base de Datos.

Non hai soporte para anexos

Exportar anexos como documentbody na táboa Anotación non se admite.

Aviso de privacidade

Ao usar o Servizo de exportación de datos, cando se activa un perfil de exportación de datos desde Dynamics 365, os datos das entidades engadidas ao perfil envíanse a Azure. A sincronización inicial inclúe todos os datos asociados ás entidades engadidas ao perfil de exportación, pero a sincronización inclúe só as modificacións novas, que se envían continuamente ao Servizo de exportación de datos. Os datos enviados ao Servizo de exportación de datos almacénanse temporalmente en Azure Service Bus e no Almacenamento de Azure, procésanse en Azure Service Fabric e, por último, sincronízanse (insírense, actualízanse ou elimínanse) na base de datos de destino especificada na súa subscrición de Azure. Unha vez sincronizados os datos, elimínanse de Azure Service Bus e do Almacenamento de Azure. Se se produce un erro durante a sincronización de datos, os datos mínimos correspondente a un tipo de entidade, o ID do rexistro e a marca de hora da sincronización almacénanse no Almacenamento de Azure para permitir a descarga dunha lista de rexistros non actualizados.

Un administrador pode desactivar o perfil de exportación de datos en calquera momento para deter a sincronización de datos. Ademais, un administrador pode eliminar o perfil de exportación para eliminar os rexistros de erros e pode desinstalar a solución Servizo de exportación de datos para deixar de usar o Servizo de exportación de datos.

A sincronización de datos prodúcese de forma continua entre Dynamics 365 e o Servizo de exportación de datos de forma segura. Os datos cífranse mentres se intercambian de forma continua entre Dynamics 365 e o Servizo de exportación de datos.

Nas seguintes seccións detállanse os compoñentes e servizos de Azure relacionados co Servizo de exportación de datos.

Centro de confianza de Microsoft Azure

Azure Service Fabric

Fornece a API e o cálculo das máquinas virtuais de Azure para procesar as notificacións de sincronización de rexistros que se reciben de Dynamics 365 e, a seguir, procésaas para inserir, actualizar ou eliminar datos de rexistros na base de datos de destino. Os microservizos que se aplican nas máquinas virtuais xestionadas polo tempo de execución de Azure Service Fabric xestionan todos os servizos de cálculo relacionados coa sincronización de datos.

Azure Service Bus

Fornece o bus da mensaxe na que Dynamics 365 insire as mensaxes de notificación de sincronización procesadas por nós de cálculo de Azure Service Fabric. Cada mensaxe almacena información como o ID da organización e o rexistro para os que se van sincronizar os datos. Os datos de Azure Service Bus están cifrados en descanso e só son accesibles para o servizo de exportación de datos.

Almacenamento de BLOB de Azure

Os datos almacénanse temporalmente en Azure Blob Storage no caso de que os datos da notificación da sincronización de rexistros sexan demasiado grandes para almacenalos nunha mensaxe, ou se se produce un erro transitorio ao procesar a notificación da sincronización. Estes BLOB están cifrados aproveitando a funcionalidade máis recente do SDK de Almacenamento de Azure, que fornece compatibilidade co cifraxe simétrico e asimétrico e integración co Azure Key Vault.

Azure SQL

A base de datos SQL de Azure almacena as métricas de sincronización de datos e a configuración do perfil de exportación de datos.

Consulte tamén

Visión xeral das relacións entre entidades
Servizo de exportación de datos
Blog do equipo: Introdución ao Servizo de exportación de datos