Utilisation d'un job Table Lookup MapReduce

  1. Créez une instance de DataNormalizationFactory à l'aide de sa méthode statique getInstance().
  2. Fournissez les détails d'entrée et de sortie du job Table Lookup en créant une instance de TableLookupDetail définissant ProcessType. L’instance doit utiliser le type MRProcessType.
    1. Configurez les règles Table Lookup en créant une instance de TableLookupConfiguration. Dans cette instance :
      Ajoutez une instance de type AbstractTableLookupRule. Cette instance AbstractTableLookupRule doit être définie à l’aide de l'une des classes suivantes : Standardize, Categorize ou Identify, correspondant à la catégorie de règle Table Lookup de votre choix.
    2. Définissez les détails du type d'emplacement et du chemin d'accès des données de référence en créant une instance de ReferenceDataPath. Reportez-vous à la section Énumération ReferenceDataPathLocation.
    3. Créez une instance de TableLookupDetail en transmettant une instance de type JobConfig et les instances TableLookupConfiguration et ReferenceDataPath créées précédemment comme arguments à son constructeur.
      Le paramètre JobConfig doit être une instance de type MRJobConfig.
    4. Définissez les détails du fichier d'entrée à l'aide du champ inputPath de l'instance TableLookupDetail.
      Pour un fichier d'entrée texte, créez une instance de FilePath avec les détails pertinents du fichier d'entrée en appelant le constructeur approprié. Pour un fichier d'entrée ORC, créez une instance de OrcFilePath avec le chemin d’accès au fichier d'entrée ORC comme argument.
    5. Définissez les détails du fichier de sortie à l'aide du champ outputPath de l'instance TableLookupDetail.
      Pour un fichier de sortie texte, créez une instance de FilePath avec les détails pertinents du fichier de sortie en appelant le constructeur approprié. Pour un fichier de sortie ORC, créez une instance de OrcFilePath avec le chemin d’accès au fichier de sortie ORC comme argument.
    6. Définissez le nom du job à l'aide du champ jobName de l'instance TableLookupDetail.
    7. Définissez l'indicateur compressOutput de l'instance TableLookupDetail sur true pour compresser la sortie du job.
  3. Pour créer un job MapReduce, utilisez l'instance de DataNormalizationFactory précédemment créée pour appeler sa méthode createJob(). Dans ce cas, transmettez l'instance ci-dessus de TableLookupDetail comme argument.
    La méthode createJob() renvoie une List d'instances de ControlledJob.
  4. Exécutez le job créé à l’aide d’une instance de JobControl.
  5. Pour afficher les compteurs de reporting suite à l'exécution correcte d'un job MapReduce, utilisez l'instance précédemment créée DataNormalizationFactory pour appeler sa méthode getCounters(), en transmettant le job créé comme argument.