Al momento de escribir, es la semana después de la Conferencia Internacional de Usuarios Esri 2025, y al mantener los temas de ArcGIS Data Interoperability y ETL Patterns en la vitrina de Esri toda la semana, puedo informar que el mayor interés para el flujo de datos entrante fue en torno a mantener hosted feature services desde datos externos. Esta publicación te mostrará una técnica sobre la que ya he blogueado antes pero con una actualización importante, cómo hacer la detección masiva de cambios de manera más eficiente, así que sigue leyendo.<\/P>
Aquí está mi conjunto de datos temáticos, direcciones callejeras para la Ciudad de Los Ángeles, que amablemente ponen los datos disponibles en su sitio de datos abiertos. Los datos de direcciones se mantienen diariamente.<\/P>
Beverly Hills no está en Los Ángeles<\/span><\/P>Las estrategias de integración de datos incluyen una variedad de enfoques, y generalmente hay múltiples "respuestas correctas", una buena visión general se puede obtener viendo una presentación por mis colegas de Esri a principios de este año. En el caso de mis datos temáticos, todas las opciones discutidas en la presentación (ArcGIS ModelBuilder, scripts python, python notebooks, ArcGIS Data Pipelines y ArcGIS Data Interoperability) son enfoques válidos.<\/P>Pero este es el espacio comunitario de Data Interoperability, así que con enfoque en esa opción tengo un consejo de procesamiento para ti. Escucharás en la presentación enlazada arriba que mantener un hosted feature service es muy común, y minimizar el tiempo de inactividad mientras se hace es importante. Una forma es mantener dos feature services, editar uno a la vez y hacer un intercambio de fuente entre ellos. Sin embargo, si usas ArcGIS Data Interoperability, tienes otra opción disponible, el transformador ChangeDetector, que puede derivar muy rápidamente una transacción que incluye sólo registros añadidos, actualizados o eliminados, casi siempre una transacción muy eficiente.<\/P>El truco sin embargo es llevar los datos masivos existentes y nuevos al transformador para que pueda calcular la transacción delta! Así es como recomiendo hacerlo:<\/P>
Usando una conexión web para impulsar el cambio<\/span><\/P>La fuente del espacio de trabajo ETL FMW está en la descarga posterior.<\/P>No hay forma de evitar recuperar nuevos datos entrantes por descarga, pero puedes evitar transmitir en streaming el estado actual del hosted feature service objetivo (lo cual es comparativamente lento) pidiendo al portal que genere una exportación a file geodatabase y descargando eso. La llamada al trabajo de exportación requiere un token, que es difícil de generar si tu organización es como la mía y aplica multi-factor authentication (MFA). El truco es usar autenticación web service en los transformadores HTTPCaller que inician el trabajo de exportación y verifican el estado del trabajo en el transformador personalizado con bucle que espera a la finalización del trabajo de exportación. La autenticación web service suministra un token detrás de escena para que no tengas que proporcionarlo como parámetro URL HTTP. Ese es el truco central detrás de este enfoque.<\/STRONG><\/P>Verás en la imagen del espacio de trabajo arriba que una transacción diaria de cambios para las direcciones de Los Ángeles es una transacción pequeña al final de unos pocos minutos tomados leyendo los datos. El archivo log (no mostrado) me dice que 67 features participaron en la transacción, que tomó 0.5s.<\/P>