
Configurer le connecteur dans NiFi
Dans cette leçon, vous configurez le connecteur que vous avez créé à l'étape précédente à l'aide de NiFi.
Before you begin
About this task
Utilisez le lien suivant pour NiFi : http://hostname/IP:30600/nifi/
- Cette leçon utilise le nom du connecteur custom.cas. Veillez à remplacer custom.cas par le nom du connecteur que vous avez créé à l'étape précédente.
- Si vous êtes sur la page d'accueil de NiFi où vous pouvez afficher tous les processeurs, vous devrez peut-être faire défiler l'écran vers la droite du pipeline et effectuer un zoom avant pour trouver les processeurs requis.
Procedure
- Faites défiler l'écran jusqu'au côté droit de la zone de conception NiFi. Le connecteur custom.cas que vous avez créé à l'étape précédente se trouve ici.
-
Mettez à jour les propriétés du processeur custom-cas_Template-Schema-CAS.
- Allez au nouveau pipeline custom.cas et cliquez deux fois sur custom-_Template-Schema-CAS.
- Cliquez deux fois sur le groupe de processus Mise à jour du schéma.
- Recherchez le groupe de processus Configurer le schéma d'index Elasticsearch et double-cliquez dessus.
- Recherchez et cliquez avec le bouton droit de la souris sur Spécifier le schéma à mettre à jour et arrêtez le processeur.
- Cliquez deux fois sur le processeur pour modifier les paramètres.
- Allez dans l'onglet Propriétés et mettez à jour la propriété param.schema avec la valeur product.
- Cliquez sur Appliquer.
- Démarrez le processeur en cliquant avec le bouton droit de la souris et en sélectionnant Démarrer.
-
Mettez à jour le processeur Renseigner le schéma d'index.
- Ouvrez
- Faites glisser un bouton Processeur vers un espace vide dans la zone de conception, puis entrez Personnalisé. Sélectionnez CustomFieldDocumentProcessor et cliquez sur le bouton AJOUTER.
-
Ajoutez customFieldDocumentProcessor, comme dans l'exemple de capture d'écran suivant.
Note: Vous devez arrêter les processeurs correspondants pour modifier les relations de flux.
-
Sélectionnez l'onglet de propriétés CustomFieldDocumentProcessor et renseignez les valeurs des propriétés suivantes :
- Database Connection Pooling Service:
Database Connection Pool
- SQL Pre-Query:
${ingest.database.schema.sql}
- SQL select query:
${ingest.database.sql}
- Database Connection Pooling Service:
-
Ouvrez Définir le processeur de SQL personnalisé. Mettez à jour le processeur Définir le SQL personnalisé et le nom d'index. Mettez à jour
ingest.database.sql
avec la SQL ci-dessous :SELECT OP.CATENTRY_ID, CASE WHEN OP.PRICE <> 0 THEN (OP.PRICE - CP.PRICE) / OP.PRICE * 100 ELSE NULL END AS PROFIT_MARGIN FROM (SELECT O.CATENTRY_ID CATENTRY_ID, P.PRICE PRICE FROM OFFER O INNER JOIN OFFERPRICE P ON (O.OFFER_ID = P.OFFER_ID AND P.CURRENCY = 'USD') INNER JOIN TRADEPOSCN ON (O.TRADEPOSCN_ID = TRADEPOSCN.TRADEPOSCN_ID AND TRADEPOSCN.NAME = 'Extended Sites Catalog Asset Store') WHERE (O.STARTDATE IS NULL OR CURRENT_TIMESTAMP > O.STARTDATE) AND (O.ENDDATE IS NULL OR O.ENDDATE > CURRENT_TIMESTAMP) AND O.PUBLISHED = 1 ) OP, (SELECT OFFER.CATENTRY_ID CATENTRY_ID, OFFERPRICE.PRICE PRICE FROM OFFER INNER JOIN OFFERPRICE ON (OFFER.OFFER_ID = OFFERPRICE.OFFER_ID AND OFFERPRICE.CURRENCY = 'USD') INNER JOIN TRADEPOSCN ON (OFFER.TRADEPOSCN_ID = TRADEPOSCN.TRADEPOSCN_ID AND TRADEPOSCN.NAME = 'My Company Cost Price List' ) ) CP WHERE OP.CATENTRY_ID = CP.CATENTRY_ID AND OP.CATENTRY_ID IN (${data.catentryId})
Notez la clause
OP.CATENTRY_ID IN (${data.catentryId})
dans la SQL. Chaque flux traitera un lot d'entrées de catalogue.Le résultat de cette SQL contient deux colonnes, CATENTRY_ID et PROFIT_MARGIN.
Note: Assurez-vous que les données de prix de revient sont disponibles dans votre base de données. Ce connecteur ne vérifie pas si le SQL renvoie des résultats. Si les données de prix de revient ne sont pas disponibles dans la base de données, les données renvoyées pour le SQL sont vides et entraînent des erreurs. -
Créez une version pour custom-cas_Template-Schema-CAS.
Cliquez avec le bouton droit de la souris sur le groupe de processus custom-cas_Template-Schema-CAS.
Cliquez sur
.Cliquez avec le bouton droit de la souris sur le groupe de processus custom-cas_Template-Schema-CAS.
Cliquez sur
.Ajoutez le Flow Name requis et enregistrez.
Dans ce tutoriel, le Flow Name =
ProfitMarginSchemaUpdateConnector
. -
Créez une version pour custom.cas - _Template-DatabaseETL-CAS.
Cliquez avec le bouton droit de la souris sur le groupe de processus, custom.cas - _Template-DatabaseETL-CAS.
Cliquez sur
.Cliquez avec le bouton droit de la souris sur le groupe de processus, custom.cas - _Template-DatabaseETL-CAS.
Cliquez sur
.Ajoutez le nom de flux requis et enregistrez.
Dans ce tutoriel, le Flow Name =
ProfitMarginDatabaseConnectorPipe
. -
Copiez le groupe de processus custom.cas - _Template-Schema-CAS et collez-le dans un espace vide en regard de auth.reindex.cas - Schéma d'espace de travail.
Insérez ce nouveau groupe de processus personnalisé entre le schéma d'espace de travail et le groupe de processus suivant comme suit :
La séquence du groupe de processus peut changer. Le groupe de processus personnalisé doit être inséré après le schéma d'espace de travail.
Cliquez avec le bouton droit de la souris sur le groupe de processus
custom.cas - _Template-Schema-CAS
et sélectionnez Démarrer pour démarrer le groupe de processus. -
Procédez comme suit pour ajouter le groupe de processus _Template-DatabaseETL-CAS avant le groupe de processus Envoyer le produit à Elasticsearch.
Cliquez avec le bouton droit de la souris sur le groupe de processus
_Template-DatabaseETL-CAS
et sélectionnez Démarrer pour démarrer le groupe de processus.Note: Si vous voyez un composant non valide dans le groupe _custom.cas - _Template-DatabaseETL-CAS _process, procédez comme suit :- Cliquez avec le bouton droit de la souris sur custom.cas - _Template-DatabaseETL-CAS, puis sélectionnez Configurer.
- Accédez à Services du contrôleur.
- Cliquez sur Activer pour les services Pool de connexions à la base de données.
- Cliquez sur le bouton Activer et, pour quitter la fenêtre en incrustation Activer les services du contrôleur, cliquez sur Fermer.
- Cliquez avec le bouton droit de la souris sur le groupe de processus custom.cas - _Template- DatabaseETL-CAS et sélectionnez Démarrer.
-
Extraye le connecteur par version.