IBM Cloud Docs
Desarrollo de código de conector de Cloud Pak for Data personalizado

Desarrollo de código de conector de Cloud Pak for Data personalizado

El ejemplo de conector personalizado incluye un paquete de Java llamado com.ibm.es.ama.custom.crawler. El paquete incluye las siguientes interfaces de programación de aplicaciones ( Java ) que puede utilizar cuando escriba su propio conector personalizado.

IBM Cloud Pak for Data IBM Software Hub

Esta información sólo se aplica a las implantaciones instaladas.

Interfaces y JavaDoc

Las interfaces que se enumeran en este documento están disponibles en el archivo de paquete JAR que se incluye con el archivo comprimido del conector personalizado. Después de descargar y expandir el archivo custom-crawler-docs.zip como se describe en Descarga del archivo custom-crawler-docs.zip en Discovery 2.2.1 y posteriores y Descarga del archivo custom-crawler-docs.zip en Discovery 2.2.0 y anteriores, el archivo JAR de interfaz está disponible como wexlib/ama-zing-custom-crawler-{version_numbers}.jar desde el nivel raíz del archivo comprimido expandido. JavaDoc para el archivo JAR está disponible como wexlib/ama-zing-custom-crawler-{version_numbers}-javadoc.jar en el mismo nivel.

Interfaz de inicialización

CustomCrawler

Utilice la interfaz com.ibm.es.ama.custom.crawler.CustomCrawler para iniciar o detener un rastreador personalizado o para rastrear documentos desde una ruta. La interfaz tiene los métodos siguientes.

CustomCrawler
Método Descripción
init Iniciar un rastreador personalizado
term Detener un rastreador personalizado
crawl Buscar documentos en una ruta específica

Interfaces de configuración

CustomCrawlerConfiguration

Utilice la interfaz com.ibm.es.ama.custom.crawler.CustomCrawlerConfiguration para validar la configuración y para descubrir los espacios de rastreo disponibles en el origen de datos. La interfaz tiene los métodos siguientes.

CustomCrawlerConfiguration
Método Descripción
validate Validar configuración
getFieldsFor Obtener una lista de los campos conocidos y sus tipos
discoverySubspaces Descubrir los espacios de rastreo en el origen de datos

ConfigProvider

Utilice la interfaz com.ibm.es.ama.custom.crawler.CustomCrawlerConfiguration.ConfigProvider para correlacionar los valores del origen de datos y para obtener una lista de los valores de espacio de rastreo en el origen de datos. La interfaz tiene los siguientes métodos:

ConfigProvider
Método Descripción
get Obtener una correlación de los valores de una sección
getCrawlspaceSettings Obtener una lista de valores del espacio de rastreo

SubspaceConsumer

Utilice la interfaz com.ibm.es.ama.custom.crawler.CustomCrawlerConfiguration.SubspaceConsumer para añadir una vía de acceso a un espacio de rastreo. La interfaz tiene el siguiente método:

SubspaceConsumer
Método Descripción
add Añadir una vía de acceso al espacio de rastreo

Interfaz del rastreador

RecordKeeper

Utilice la interfaz com.ibm.es.ama.custom.crawler.CustomCrawler.RecordKeeper para conservar registros de los rastreos y para publicar documentos rastreados. La interfaz tiene los siguientes métodos:

RecordKeeper
Método Descripción
canContinue Valor booleano que muestra si el rastreador puede continuar. El rastreador personalizado debe sondear este valor periódicamente y terminar si devuelve false.
check Obtener campos de metadatos a partir del último documento rastreado
upsert Publicar un documento para continuar su proceso
delete Supresión de un documento

Interfaz de seguridad

CustomCrawlerSecurityHandler

Utilice la interfaz com.ibm.es.ama.custom.crawler.CustomCrawlerSecurityHandler para implementar la seguridad para el rastreador personalizado. La interfaz tiene los siguientes métodos:

CustomCrawlerSecurityHandler
Método Descripción
term Terminar un manejador de seguridad
getUserAndGroups Obtener las ACL de un usuario determinado

Cuando se actualiza la lógica getUserAndGroups de un conector, el cambio puede tardar hasta 10 minutos en surtir efecto después de volver a desplegar el conector.

Ejemplo de conector personalizado

El conector de ejemplo es un conector de protocolo de transferencia de archivos seguros ( Secure File Transfer, SFTP) que rastrea archivos que se encuentran en un servidor SFTP.

El conector de ejemplo incluye tres componentes:

  • Código fuente Java para el conector
  • Un archivo de definición XML que define los parámetros que el conector utiliza para conectarse y rastrear la fuente de datos
  • Un archivo de propiedades que define los comportamientos opcionales para el conector

Requisitos

El código fuente Java para el conector de ejemplo tiene las siguientes dependencias:

Descarga del archivo custom-crawler-docs.zip en Discovery 2.2.1 y posteriores

En Discovery versión 2.2.1 y posteriores, realice los siguientes pasos para descargar el archivo custom-crawler-docs.zip a su máquina local. Necesita acceso de usuario root a una instancia de Discovery instalada:

  1. Inicie una sesión en el clúster de Discovery.

  2. Introduzca el siguiente comando para obtener su nombre de pod de crawler :

    oc get pods | grep crawler
    

    Es posible que veas un resultado similar a este:

    wd-discovery-crawler-57985fc5cf-rxk89     1/1     Running     0          85m
    
  3. Introduzca el siguiente comando para obtener el archivo custom-crawler-docs.zip, sustituyendo {crawler-pod-name} por el nombre de pod crawler que obtuvo en el paso 2:

    oc exec {crawler-pod-name} -- ls -l /opt/ibm/wex/zing/resources/ \
    | grep custom-crawler-docs
    

    La salida podría ser similar a la siguiente:

    -rw-r--r--. 1 dadmin dadmin 59451 Jan 19 03:50 custom-crawler-docs-${build-version}.zip
    
  4. Especifique el siguiente mandato para copiar el archivo custom-crawler-docs.zip en el servidor de host y sustituya {build-version} por el número de versión de compilación del paso 3:

    oc cp {crawler-pod-name}:/opt/ibm/wex/zing/resources/custom-crawler-docs-${build-version}.zip custom-crawler-docs.zip
    
  5. Especifique el siguiente mandato para ampliar el archivo custom-crawler-docs.zip:

    unzip custom-crawler-docs.zip -d custom-crawler-docs-primary
    

    Si es necesario, copie el archivo custom-crawler-docs.zip en el servidor de desarrollo.

    Si su equipo local no tiene la utilidad unzip, intente utilizar el comando gunzip en su lugar, o consulte la documentación del sistema operativo de su equipo local para ver otras alternativas para descomprimir archivos comprimidos.

    Si utiliza una versión de Discovery anterior a la 2.1.2 y desea acceder al archivo custom-crawler-docs.zip, escriba el siguiente mandato: scp root@{instance_name}:/root/bob/sdk/custom-crawler-docs.zip {local_directory}.

Para obtener información sobre la descarga del archivo custom-crawler-docs.zip en Discovery 2.2.0 y anteriores, consulte Descarga del archivo custom-crawler-docs.zip en Discovery 2.2.0 y anteriores.

Descarga del archivo custom-crawler-docs.zip en Discovery 2.2.0 y anteriores

En Discovery versión 2.2.0 y anteriores, realice los siguientes pasos para descargar el archivo custom-crawler-docs.zip a su máquina local. Necesita acceso de usuario root a una instancia de Discovery instalada:

  1. Obtenga la clave de autorización navegando a su biblioteca de software contenedor.

  2. Escriba el siguiente mandato para iniciar sesión en el registro de Docker donde están disponibles las imágenes de Discovery. Incluya la clave de titularidad en el siguiente mandato:

    docker login cp.icr.io -u cp -p {entitlement_key}
    
  3. Escriba el siguiente mandato para extraer la imagen custom-crawler-sdk:

    docker pull cp.icr.io/cp/watson-discovery/custom-crawler-sdk:2.1.3
    
  4. Escriba el siguiente mandato para ejecutar la imagen custom-crawler-sdk:

    docker run cp.icr.io/cp/watson-discovery/custom-crawler-sdk:2.1.3
    
  5. Escriba el siguiente mandato para copiar custom-crawler-docs.zip del contenedor donde se está ejecutando la imagen:

    docker cp {container_name}:/crawler/custom-crawler-docs.zip .
    

    Para encontrar la imagen, escriba docker ps -a | grep custom-crawler-sdk.

  6. Expanda el archivo custom-crawler-docs.zip:

    cd {local_directory}
    

    donde {local_directory} es el directorio de la máquina local en el que ha descargado el archivo custom-crawler-docs.zip.

    unzip custom-crawler-docs.zip
    

    Si su equipo local no tiene la utilidad unzip, intente utilizar el comando gunzip en su lugar, o consulte la documentación del sistema operativo de su equipo local para ver otras alternativas para descomprimir archivos comprimidos.

    Si utiliza una versión de Discovery anterior a la 2.1.2 y desea acceder al archivo custom-crawler-docs.zip, escriba el siguiente mandato: scp root@{instance_name}:/root/bob/sdk/custom-crawler-docs.zip {local_directory}.

Para obtener información sobre la descarga del archivo custom-crawler-docs.zip en Discovery versión 2.2.1 y posteriores, consulte Descarga del archivo custom-crawler-docs.zip en Discovery 2.2.1 y posteriores.

Visión general del archivo custom-crawler-docs.zip

El archivo custom-crawler-docs.zip se expande en un directorio llamado custom-crawler-docs-primary que incluye los siguientes contenidos:

custom-crawler-docs-primary
├── README.md
├── build.gradle
├── config
│   ├── README.md
│   ├── messages.properties
│   └── template.xml
├── scripts
│   └── manage_custom_crawler.sh
├── settings.gradle
├── src
│   └── main
│       └── java
│           └── com
│               └── ibm
│                   └── es
│                       └── ama
│                           └── custom
│                               └── crawler
│                                   └── sample
│                                       └── sftp
│                                           └── SftpCrawler.java
|                                           └── SftpSecurityHandler.java
└── wexlib
    ├── META-INF
    │   └── MANIFEST.MF
    ├── README.md
    ├── ama-zing-custom-crawler-{version_numbers}-javadoc.jar
    └── ama-zing-custom-crawler-{version_numbers}.jar

15 directories, 12 files

Descarga de JSch

JSch es una implementación de Java del protocolo Secure Shell versión 2 (SSH2) y, por extensión, de sftp. Se deriva de la Extensión de Criptografía de Java(Java, JCE ). Puede encontrar las especificaciones de SSH2 en www.openssh.com/specs.html.

La versión actual de JSch es 0.1.55 y está soportada por el conector de ejemplo.

Descargue JSch en su directorio de desarrollo ( {local_directory} ). Puede descargar el paquete en formato ZIP o JAR. Si descarga el paquete en formato .zip, extráigalo como se describe en la sección anterior.

Archivos del conector de ejemplo

El conector personalizado de ejemplo incluye tres archivos que se crean de forma conjunta:

  • Java que se llaman SftpCrawler.java y SftpSecurityHandler.java
  • Un archivo de definiciones de XML denominado template.xml
  • Un archivo de propiedades denominado message.properties

Para localizar y examinar estos archivos, consulte el listado del árbol de directorios en el tema Visión general del archivo custom-crawler-docs.zip.

Para obtener más información

Para ver la documentación detallada de todas las interfaces y los métodos que están disponibles en el paquete com.ibm.es.ama.custom.crawler, consulte JavaDoc, que está disponible tal como se indica en Interfaces y JavaDoc.