Table des matières

Search

  1. Préface
  2. Introduction aux transformations
  3. Ports de transformation
  4. Caches de transformation
  5. Transformation Outil de validation des adresses
  6. Transformation Agrégation
  7. Transformation Association
  8. Transformation Exception d'enregistrements incorrects
  9. Transformation Convertisseur de casse
  10. Transformation Classeur
  11. Transformation Comparaison
  12. Transformation Consolidation
  13. Transformation Masquage des données
  14. Transformation Processeur de données
  15. Transformation Décision
  16. Transformation Exception d'enregistrements dupliqués
  17. Transformation Expression
  18. Transformation filtre
  19. Transformation Hiérarchique à relationnel
  20. Transformation Java
  21. Référence de l'API de transformation Java
  22. Expressions Java
  23. Transformation jointure
  24. Transformation Générateur de clés
  25. Transformation Libellé
  26. Transformation Recherche
  27. Caches de recherche
  28. Cache de recherche dynamique
  29. Transformation Correspondance
  30. Transformations Correspondance dans l'analyse de champ
  31. Transformations de correspondance dans l'analyse d'identité
  32. Transformation Fusion
  33. Transformation Normaliseur
  34. Transformation Analyseur
  35. Transformation Python
  36. Transformation Rang
  37. Transformation Lecture
  38. Transformation Relationnel à hiérarchique
  39. Transformation Consommateur de service Web REST
  40. Transformation Routeur
  41. Transformation Générateur de séquence
  42. Transformation Trieur
  43. Transformation SQL
  44. Transformation Normalisation
  45. Transformation Union
  46. Transformation Stratégie de mise à jour
  47. Transformation Consommateur de service Web
  48. Analyse des messages SOAP du service Web
  49. Génération des messages SOAP du service Web
  50. Transformation moyenne pondérée
  51. Transformation Écriture
  52. Délimiteurs de transformation

Guide de transformation Developer

Guide de transformation Developer

Transformation Java sur le moteur Spark

Transformation Java sur le moteur Spark

Vous pouvez utiliser des types de données complexes pour traiter les données hiérarchiques.
Certaines règles de traitement du moteur Spark diffèrent de celles du service d'intégration de données.

Restrictions générales

La transformation Java est prise en charge sur le moteur Spark avec les restrictions suivantes :
  • Le code Java de la transformation ne peut pas écrire le résultat dans la sortie standard lorsque vous transmettez la logique de transformation à Hadoop. Le code Java peut écrire le résultat dans l'erreur standard qui s'affiche dans les fichiers journaux.
  • Pour les valeurs date/time, le moteur Spark prend en charge la précision jusqu'aux microsecondes. Si une valeur date/time contient des nanosecondes, les chiffres de fin sont tronqués.

Partitionnement

Lorsque la transformation Java est utilisée avec le partitionnement, les restrictions suivantes s'appliquent :
  • La propriété Partitionnable doit être activée dans la transformation Java. La transformation ne peut pas s'exécuter dans une seule partition.
  • Les restrictions suivantes s'appliquent à la propriété Portée de transformation :
    • La valeur Transaction de la portée de transformation n'est pas valide.
    • Si vous activez un port d'entrée pour la clé de partition, la portée de transformation doit être définie sur Toutes les entrées.
    • L'option Sans état doit être activée si la portée de transformation est row.

Validation de mappage

La validation de mappage échoue dans les cas suivants :
  • Vous référencez une transformation Recherche non connectée depuis une expression dans une transformation Java.
  • Vous sélectionnez un port d'un type de données complexe comme clé de partition ou de tri.
  • Vous activez le traitement des nanosecondes dans date/time et la transformation Java contient un port de type de données complexe avec un élément d'un type date/time. Par exemple, un port de type
    array<data/time>
    n'est pas valide si vous activez le traitement des nanosecondes dans date/time.
  • Lorsque vous activez la haute précision, une erreur de validation se produit si la transformation Java contient une expression qui utilise un port décimal ou complexe avec un élément de type de données decimal, et que le port est utilisé avec un opérateur.
    Par exemple, si la transformation contient un port décimal
    decimal_port
    et que vous utilisez l'expression
    decimal_port + 1
    , une erreur de validation se produit.
Le mappage échoue dans le cas suivant :
  • La transformation Java et le mappage utilisent des modes de précision différents lorsque la transformation Java contient un port décimal ou complexe avec un élément de type de données decimal.
    Même si la haute précision est activée dans le mappage, celui-ci traite les données en mode basse précision dans certains cas, comme par exemple lorsque le mappage contient un port complexe avec un élément de type de données decimal, ou que le mappage est de type streaming. Si la haute précision est activée à la fois dans la transformation Java et dans le mappage, mais que celui-ci traite les données en mode basse précision, le mappage échoue.

Utilisation de fichiers .jar externes

Pour utiliser les fichiers .jar externes dans une transformation Java, effectuez les étapes suivantes :
  1. Copiez les fichiers .jar externes dans le répertoire d'installation Informatica de la machine qui exécute le service d'intégration de données à l'emplacement suivant :
    <Informatic installation directory>/services/shared/jars
  2. Recyclez le service d'intégration de données.
  3. Sur la machine qui héberge l'outil Developer tool où vous développez et exécutez le mappage qui contient la transformation Java :
    1. Copiez les fichiers .jar externes dans un répertoire de la machine locale.
    2. Modifiez la transformation Java afin d'inclure une instruction import désignant les fichiers .jar locaux.
    3. Mettez à jour le chemin de classe dans la transformation Java.
    4. Compilez la transformation.