Después de crear el conector personalizado en el servicio de Ingest, configúrelo para conectarse al servidor de bases de datos.
Procedure
-
Actualice el SQL de Ingest en el grupo de procesos
auth.xfields-_Template-DatabasePagingETL
.
-
Utilice el enlace siguiente para acceder a la interfaz de usuario de NiFi:
http://hostname/IP:30600/nifi/
-
Localice el grupo de procesos
auth.xfields-_Template-DatabasePagingETL
y haga doble clic en él.
-
Haga doble clic en el grupo de procesos
Custom Connector Pipe
. Una vez se abra, localice el grupo de procesos SCROLL SQL
y haga doble clic en él. Localice el procesador Define Custom SQL
y haga clic en él con el botón derecho del ratón para detenerlo.
-
Haga doble clic en el procesador
Define Custom SQL
para modificar la configuración.
-
Seleccione la pestaña Propiedades y actualice la propiedad ingest.database.sql con el código SQL personalizado, en función de los campos personalizados que desee incluir desde una tabla de catálogos (como CATGROUP.FIELD1).
Por ejemplo,
SELECT field1, field2,catentry_id FROM catentry ${paging.prefix} ${param.offset} ${paging.link} ${param.pageSize} ${paging.suffix}
-
Una vez actualizado el campo SQL, pulse Aplicar.
-
Haga clic con el botón derecho del ratón en el procesador y pulse Iniciar.
-
Actualice las propiedades del procesador
Custom Connector Pipe
para el grupo de procesos de Java.
-
En el grupo de procesos
Custom Connector Pipe
, haga doble clic en el grupo de procesos Correlacionar campos de índice de bases de datos.
-
Localice el grupo de procesos
Transform Document - Map Index Fields From Database
y detenga el procesador.
-
Tenga en cuenta las siguientes propiedades obligatorias.
- Identificador de entradas
- Clave
_id
utilizada para el documento de salida que se enviará posteriormente a Elasticsearch. Este identificador se puede expresar utilizando variables de registro y archivo de flujo, así como utilizando el nombre de campo de índice en la respuesta de búsqueda entre corchetes.
- De forma predeterminada, el valor del Identificador de entrada está establecido en
[id.catentry]-[id.language]
. Cambie este valor a ${param.storeId}-${param.langId}-${param.catalogId}-[id.catentry]
. Para procesar este identificador, busque el procesador y añádale la propiedad adicional CATENTRY_ID = id.catentry
.
- Tipo de índice
- Tipo de índice de búsqueda en Elasticsearch, por ejemplo,
Product
o Category
. Este valor no debe modificarlas durante esta guía de aprendizaje.
-
Defina la correlación de campos de la tabla de bases de datos personalizados con los campos de índice correspondientes. Establezca el Nombre de la propiedad en el nombre del campo de la tabla de bases de datos y establezca el Valor de la propiedad en la vía de acceso del campo de índices de búsqueda correspondiente. El valor de la propiedad puede ser una lista separada por comas de varios valores, de manera que permita que el mismo campo de la tabla de bases de datos se correlacione con más de un nombre del campo de índices de búsqueda. Por ejemplo:
Name: FIELD1 Value: custom.x_field1.raw, custom.x_field1.normalized
Note: Vuelva a utilizar la correlación de esquemas de índices existente, siempre que sea posible, para simplificar la lógica de la personalización.
-
Haga clic en Aplicar.
-
Inicie el procesador pulsando con el botón derecho del ratón y seleccionando Iniciar.
Results
El nuevo conector se ha configurado correctamente. En la siguiente lección, lo integrará en una canalización NiFi existente.