Cómo leer archivos XML directamente desde el disco en un trabajo paralelo de almacenamiento de datos
Respuesta
La etapa de entrada XML debe tomar una sola columna como entrada. Es posible configurar la etapa de entrada XML para aceptar el contenido completo de un documento XML o una ruta de archivo ( o URL) desde la que se puede leer el contenido real del documento. Configurar la etapa de entrada XML para aceptar la ruta de acceso del archivo es la mejor opción para los trabajos en paralelo. La etapa de entrada XML abrirá el archivo como su flujo de entrada y lo leerá directamente desde el disco sin alterarlo de ninguna manera. Este método es más rápido, consume menos recursos y es mucho menos propenso a errores que el uso de una etapa de archivo secuencial.
El método path requiere una forma de generar la ruta completa al archivo (o archivos) que luego se pasará a la etapa de entrada XML. La etapa de fuente externa hace un excelente trabajo proporcionando esta capacidad. La etapa de origen externo ejecutará cualquier programa ejecutable y, a continuación, redirigirá la salida estándar de ese programa al trabajo. Para obtener una lista de las rutas de acceso de los archivos, podemos hacer que la etapa de Origen Externa ejecute el programa ‘find’ que se incluye comúnmente con un sistema operativo Unix o Linux. En la plataforma Windows, este programa también se proporciona como parte del Kit de herramientas MKS, que se instala automáticamente mediante la instalación de DataStage.
Este es un ejemplo de cómo el programa find puede producir la ruta completa a documentos XML como salida:
find / data / input-name»*.xml » – print
Ejecutar el programa con estos argumentos producirá una lista de rutas completas a cada archivo que termine con el .extensión xml en el directorio / data / input o en cualquiera de sus subdirectorios. La salida tendrá una ruta de archivo por línea, terminada con un nuevo carácter de línea.