Limitations du connecteur Microsoft Dynamics 365
Cette page décrit les limitations et restrictions pour le connecteur Microsoft Dynamics 365 dans Lakeflow Connect.
Limitations générales des connecteurs SaaS
Le connecteur Dynamics 365 présente des limitations communes à tous les connecteurs SaaS de Lakeflow Connect :
- Lorsque vous exécutez un pipeline planifié, les alertes ne se Trigger pas immédiatement. Au lieu de cela, ils Trigger lors de l’exécution de la prochaine mise à jour.
- Lorsqu’une table source est supprimée, la table de destination n’est pas automatiquement supprimée. Vous devez supprimer la table de destination manuellement. Ce comportement n'est pas cohérent avec le comportement de Spark Declarative Pipelines sur Lakeflow.
- Pendant les périodes de maintenance de la source, Databricks pourrait ne pas être en mesure d'accéder à vos données.
- Si un nom de table source entre en conflit avec un nom de table de destination existant, la mise à jour du pipeline échoue.
- La prise en charge des pipelines multi-destination est uniquement via l'API.
- Vous pouvez éventuellement renommer une table que vous ingérez. Si vous renommez une table dans votre pipeline, il devient un pipeline API uniquement, et vous ne pouvez plus modifier le pipeline dans l'interface utilisateur.
- Si vous sélectionnez une colonne après qu'un pipeline a déjà start, le connecteur ne renseigne pas automatiquement les données historiques pour la nouvelle colonne. Pour ingérer des données historiques, exécutez manuellement un refresh complet sur la table.
- Databricks ne peut pas ingérer deux tables ou plus portant le même nom dans le même pipeline, même si elles proviennent de schémas sources différents.
- Le système source suppose que les colonnes du curseur augmentent de façon monotone.
- Le connecteur ingère des données brutes sans transformations. Utilisez les Spark Declarative Pipelines en aval sur les Lakeflow Pipelines pour les transformations.
Exigences d’Azure Synapse Link
Le connecteur Dynamics 365 nécessite qu'Azure Synapse Link for Dataverse s'exécute en continu :
- Synapse Link doit exporter les données sans interruption. Si Synapse Link s’arrête, le connecteur ne peut pas capturer les changements tant qu’il n’a pas repris.
- Les modifications apparaissent dans Azure Data Lake Storage (ADLS) Gen2 après l'intervalle d'exportation de Synapse Link, qui est généralement de 5 à 15 minutes. L'architecture Synapse Link inclut intrinsèquement cette latence.
- Configurez des stratégies de rétention appropriées pour votre stockage ADLS Gen2. Si vous supprimez des exportations Synapse Link avant l’ingestion, vous devez effectuer un full refresh.
- Synapse Link peut exporter au format CSV ou Parquet. L’ingestion Parquet est en version bêta. Le connecteur prend en charge les deux et détecte automatiquement le format. L’exportation Parquet nécessite en outre un workspace Azure Synapse Analytics et un pool Apache Spark. Consultez Configurer une source de données Parquet pour l’ingestion Microsoft Dynamics 365.
Si Azure Synapse Link s'arrête pendant une période prolongée, vous pourriez manquer des changements. Surveillez la santé de Synapse Link dans le portail de créateur Power Apps et configurez des alertes pour les échecs d'exportation.
évolution des schémas
L'évolution des schémas pour l'ingestion CSV d'entités standard (non virtuelles) est disponible en aperçu privé. Pour connaître les modifications prises en charge et savoir comment les activer, consultez la référence du connecteur Microsoft Dynamics 365. Les entités virtuelles ne sont pas couvertes.
Évolution des schémas d’entités virtuelles
Les entités virtuelles Finance & Opérations nécessitent un traitement supplémentaire, car un changement de schéma doit se propager via Dataverse avant que le connecteur ne puisse le détecter. Lorsqu’une entité virtuelle F&O change :
- refresh la configuration de l'entité virtuelle dans Dataverse.
- Prévoyez jusqu’à 15 minutes pour que la modification apparaisse dans la découverte de schéma Dataverse.
- Effectuez une full refresh des tables concernées.
Comme ces modifications proviennent de F&O plutôt que de Databricks, surveillez les mises à jour des entités virtuelles et coordonnez les rafraîchissements complets avec votre administrateur Dynamics 365.
Ingestion incrémentielle
L'ingestion incrémentale du connecteur Dynamics 365 présente les limitations suivantes :
- Synapse Link doit exporter les journaux des modifications avec le champ
versionnumber. Siversionnumberest manquant, vous devez utiliser le mode de refresh complet. - Le connecteur traite les dossiers d'exportation Synapse Link par ordre chronologique. Si vous supprimez des dossiers ou si des dossiers sont manquants, le connecteur ne peut pas récupérer sans un refresh complet.
- Si Synapse Link manque des changements en raison d’un temps d’arrêt, ces changements ne sont pas capturés à moins d’effectuer un full refresh.
- Le connecteur détecte les suppressions uniquement si Synapse Link exporte les enregistrements de suppression dans les journaux de modifications. Certaines configurations de Dynamics 365 n'exportent pas les suppressions.
- Avec l'exportation Parquet, le compactage des points de contrôle Delta peut rendre certaines versions d'enregistrements historiques indisponibles ; les pipelines SCD de type 2 peuvent donc avoir un historique incomplet (bien qu'il n'y ait jamais de perte de données, car l'instantané le plus récent est toujours correct). Databricks recommande d'exécuter les pipelines plus fréquemment qu'une fois toutes les 24 heures pour minimiser ce phénomène. Voir le comportement du SCD de type 2.
Vérifiez que votre configuration Synapse Link exporte les journaux de modifications avec versionnumber avant de créer des pipelines. Consultez Configurer la source de données pour l'ingestion de Microsoft Dynamics 365.
Pièces jointes et fichiers
Le connecteur Dynamics 365 ingère les métadonnées de pièce jointe, mais pas le contenu des fichiers :
- Le connecteur importe les tables de pièces jointes telles que
annotationetattachment, y compris les noms de fichiers, les tailles, les types MIME et les associations d'enregistrements. - Le connecteur n’ingère pas le contenu des fichiers. Vous devez download les fichiers séparément à l’aide de l’API Web Dynamics 365 ou de Power Automate.
- Synapse Link exporte les données de table, et non les fichiers binaires stockés dans Microsoft Dynamics 365.
Vous pouvez à la place utiliser les métadonnées de pièce jointe pour identifier les fichiers requis, puis les download à l’aide des APIs Dynamics 365 et les stocker dans un volume ou ADLS Gen2.
Prise en charge des types de données
Le connecteur Dynamics 365 prend en charge la plupart des types de données Dataverse avec une fidélité totale. Les types complexes sont ingérés sous une forme simplifiée et nécessitent un traitement en aval.
Type de données Dataverse | Aide | Que faire en aval |
|---|---|---|
Chaîne, Entier, Décimal, Booléen, Date-heure, Devise | Fidélité totale | Rien. Ces types sont ingérés tels quels. |
Ensemble d’options (liste de sélection) | Ingéré en tant que valeurs entières | Joindre avec la table |
Ensemble d'options à sélection multiple | Ingéré sous forme de chaînes d'entiers séparées par des virgules | Analysez la chaîne pour extraire les valeurs individuelles. |
Recherche | Ingérés en tant que GUID | Joignez la table référencée pour obtenir les données d’enregistrement associées. |
Objet JSON complexe | Ingéré sous forme de chaînes de caractères | Analysez le JSON dans les transformations en aval. S’applique aux types Dataverse personnalisés qui s’exportent au format JSON. |
Image | Métadonnées uniquement | download les données d’image séparément. Voir Pièces jointes et fichiers. |
Consultez la référence du connecteur Microsoft Dynamics 365 pour un tableau complet de mappage des types de données.
Considérations sur les performances
La synchronisation initiale et les synchronisations incrémentielles ultérieures sont liées à des facteurs différents, elles nécessitent donc un réglage différent :
Phase de synchronisation | Ce qui détermine le temps | Comment le réduire |
|---|---|---|
Synchronisation initiale | Le volume de données, principalement. Les tables contenant des millions d’enregistrements prennent plus de temps, et l’exportation initiale Synapse Link peut à elle seule prendre des heures pour les grands datasets. Le throughput réseau entre Azure et Databricks affecte également la vitesse de transfert. | Start avec un petit sous-ensemble de tables pour valider la configuration, puis ajoutez d'autres tables de manière incrémentielle. Le throughput réseau n'est pas réglable depuis le pipeline. |
Synchronisation incrémentielle | Volume de changement, tel que des milliers de mises à jour par minute. Le nombre de dossiers d’exportation Synapse Link et la taille de chaque journal des modifications ajoutent tous deux une surcharge de traitement. | Planifiez les exécutions du pipeline pour qu'elles correspondent à votre volume de modifications. Une exécution plus fréquente permet de réduire la taille du journal de modifications de chaque exécution, ce qui compense le coût du traitement d'un plus grand nombre de dossiers. |
Limitations
Un seul pipeline peut ingérer un maximum de 250 tables. Cette limite s'applique par pipeline, et non par connexion ; par conséquent, pour ingérer plus de 250 tables, créez plusieurs pipelines en utilisant la même connexion.
Le connecteur dépend également des versions minimales des services à partir desquels il lit les données :
- API Dataverse v9.2 ou version ultérieure. Il est possible que les versions antérieures ne soient pas prises en charge.
- API REST Azure Storage version 2021-08-06. Assurez-vous que votre compte de stockage prend en charge cette version.
- Azure Synapse Link for Dataverse version 1.0 ou ultérieure.
Maintenez vos services Dynamics 365, Dataverse et Azure à jour vers les dernières versions pour une compatibilité optimale.
Problèmes connus
- La synchronisation des entités virtuelles prend parfois plus de 15 minutes. Si les tables n’apparaissent pas, patientez jusqu’à 30 minutes et réessayez.
- Synapse Link échoue parfois à exporter des tables spécifiques. Vérifiez les logs de Synapse Link dans Power Apps pour détecter d’éventuelles erreurs.
- Dans de rares cas, les journaux de modifications peuvent présenter des lacunes dans les séquences
versionnumber. Cela n'affecte pas l'intégrité des données, mais peut entraîner des avertissements dans les logs du pipeline.
Signalez les problèmes au support Databricks avec les ID de pipeline et les timestamps pour investigation.