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.
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.
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:
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:
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:
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:
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:
- Java SE Development Kit (JDK) 1.8 o superior.
- El archivo
custom-crawler-docs.zip
de una instancia Discovery instalada, como se describe en Descarga del archivocustom-crawler-docs.zip
en Discovery 2.2.1 y posteriores y Descargando el archivocustom-crawler-docs.zip
en Discovery 2.2.0 y anteriores. - El paquete JSch Java, como se describe Descargado JSch. Puede descargar el paquete en formato ZIP o formato JAR.
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:
-
Inicie una sesión en el clúster de Discovery.
-
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
-
Introduzca el siguiente comando para obtener el archivo
custom-crawler-docs.zip
, sustituyendo{crawler-pod-name}
por el nombre de podcrawler
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
-
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
-
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 comandogunzip
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:
-
Obtenga la clave de autorización navegando a su biblioteca de software contenedor.
-
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}
-
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
-
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
-
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
. -
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 archivocustom-crawler-docs.zip
.unzip custom-crawler-docs.zip
Si su equipo local no tiene la utilidad
unzip
, intente utilizar el comandogunzip
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
ySftpSecurityHandler.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.