HCL Commerce Version 9.1.10.0 or later

Déploiement d'un profil Ingest

Après avoir développé et testé votre profil Ingest dans votre environnement de développement, vous pouvez le déployer à l'aide du kit d'outils NiFi.

Before you begin

  • Assurez-vous d'avoir installé le kit d'outils NiFi basé sur Eclipse. Vous pouvez trouver ce kit d'outils dans l'archive commerce-custom-search-bundles-9.1.10.0.zip. Pour plus d'informations, voir Configuration de l'HCL Commerce Developer Search environment.
  • Java 8 est requis pour générer les fichiers .jar dans le tutoriel.
  • HCL Commerce Version 9.1.10.0Appliquez le correctif HC-17918 au conteneur NiFi. Pour plus d'informations, voir Correctifs inclus dans les versions de HCL Commerce.
  • Préparez le kit d'outils de développement pour NiFi en suivant les instructions de Processeurs NiFi personnalisés.
  • Copiez le fichier ingest-api.jar à partir de /opt/nifi/nifi-current/lib dans le conteneur NiFi et placez-le dans le répertoire libs à la racine du projet.

About this task

Pour un tutoriel détaillé sur la personnalisation, le test et le déploiement de vos personnalisations via les profils Ingest, voir Tutoriel : Personnalisation des connecteurs par défaut avec le profil Ingest. Ce tutoriel couvre des sujets tels que les prérequis de l'environnement de développement, la génération et le transfert de fichiers .jar personnalisés dans votre environnement.

Procedure

  1. Suivez les instructions de Processeurs NiFi personnalisés pour créer un fichier d'archive NiFi (NAR) personnalisé pour votre projet.
  2. Générez votre projet. Dans l'explorateur de projet, cliquez avec le bouton droit de la souris sur le nom du projet et sélectionnez Exécuter en tant que > Installation Maven. Pour plus d'informations, voir Processeurs NiFi personnalisés.
  3. Transférez les fichiers JAR générés par la génération dans le répertoire lib du conteneur NiFi, à l'aide d'une syntaxe similaire à l'exemple suivant.
    docker cp "/root/myproject.jar" NIFI_CONTAINER_ID:/opt/nifi/nifi-current/lib
  4. Créez un profil Ingest avec le nom de votre choix, à l'aide du nœud final du profil de service Query comme ci-dessous.
    POST http://QUERY_HOST:QUERY_PORT/search/resources/api/v2/documents/profiles/myingestprofile?profileType=Ingest
    HCL Commerce Version 9.1.11.0 or laterNote: Le nœud final /profiles contient un répertoire, custom, avec trois autres sous-répertoires : ingest, nlp et search. Vous pouvez placer des profils personnalisés dans le sous-répertoire approprié. Cela permet à vos images Data Query personnalisées d'inclure leurs propres configurations personnalisées. Celles-ci peuvent ensuite être générées à l'aide de votre propre pipeline CI /CD. De cette façon, vos images peuvent être réutilisées dans plusieurs environnements, sans que vous ne deviez utiliser des configurations provenant de ZooKeeper spécifique à l'environnement.
  5. Liez le profil Ingest au canal de connecteur dont vous allez étendre les propriétés. Procédez comme suit. Pour obtenir des instructions sur l'utilisation d'un nœud final Ingest pour mettre à jour la liaison de profil Ingest en tant que variable vers un canal de connecteur, voir Mise à jour du groupe de processus NiFi, du processeur, du service de contrôleur à l'aide du descripteur de connecteur Ingest.
  6. Redémarrez le conteneur NiFi.
  7. Une fois que l'interface utilisateur NiFi est en cours d'exécution et qu'il n'y a pas d'erreurs ou de composants non valides, déclenchez un index complet pour storeId=31. Cela peut être fait à l'aide du nœud final Ingest suivant.
    POST http://INGEST_HOST:INGEST_PORT/connectors/auth.reindex/run?storeId=31
  8. Redémarrez le conteneur du service Query.

Results

Votre profil Ingest personnalisé est actif et prêt à l'emploi.

What to do next

Vous pouvez effectuer des tests de codage et d'unité à l'intérieur du kit d'outils NiFi basé sur Eclipse à l'aide de données simulées, via l'option de test JUnit fournie par Maven. Deux exemples de test d'unité sont fournis pour vous dans le fichier commerce-custom-search-marketplace-seller.zip. Ces fichiers sont ComposeDatabaseSQLTest.java et CreateProductDocumentFromDatabaseTest.java.

  • ChangeSQL est un fournisseur d'expression de profil Ingest. Vous pouvez utiliser cet exemple de référence pour apprendre à modifier le SQL utilisé dans les phases d'extraction, de transformation et de chargement (ETL) par défaut. ComposeDatabaseSQLTest est le test JUnit qui peut être utilisé pour vérifier la logique de code dans ChangeSQL.
  • ChangeDocument est une extension post-processeur de profil Ingest qui montre comment effectuer d'autres manipulations de données après la transformation par défaut, dans l'une des phases Ingest liées au produit. CreateProductDocumentFromDatabaseTest est le test JUnit qui peut être utilisé pour vérifier la logique de code dans ChangeDocument.

Une fois les configurations personnalisées et les logiques d'extension Java prêtes, elles peuvent être exportées dans un fichier NAR NiFi personnalisé et ajoutées au conteneur NiFi. Cela vous permet de tester la logique personnalisée avec le flux de données par défaut dans l'environnement d'exécution NiFi.

Pour exécuter le test JUnit, cliquez avec le bouton droit de la souris sur la classe de test JUnit choisie et choisissez Exécuter en tant que... ou Déboguer en tant que... > Test JUnit.