Logotipo de Zephyrnet

Obtenga información a partir de datos históricos de ubicación utilizando Amazon Location Service y los servicios de análisis de AWS | Servicios web de Amazon

Fecha:

Muchas organizaciones de todo el mundo dependen del uso de activos físicos, como vehículos, para brindar un servicio a sus clientes finales. Al rastrear estos activos en tiempo real y almacenar los resultados, los propietarios de activos pueden obtener información valiosa sobre cómo se utilizan sus activos para ofrecer mejoras comerciales continuas y planificar cambios futuros. Por ejemplo, una empresa de reparto que opera una flota de vehículos puede necesitar determinar el impacto de los cambios de política local fuera de su control, como la expansión anunciada de un Zona de emisiones ultrabajas (ULEZ). Al combinar datos históricos de ubicación de vehículos con información de otras fuentes, la empresa puede diseñar enfoques empíricos para una mejor toma de decisiones. Por ejemplo, el equipo de adquisiciones de la empresa puede utilizar esta información para tomar decisiones sobre qué vehículos priorizar para el reemplazo antes de que los cambios de política entren en vigor.

Los desarrolladores pueden utilizar el soporte en Servicio de ubicación de Amazon para publicar actualizaciones de posición del dispositivo a Puente de eventos de Amazon para construir un canal de datos casi en tiempo real que almacene las ubicaciones de los activos rastreados en Servicio de almacenamiento simple de Amazon (Amazon S3). Además, puedes utilizar AWS Lambda para enriquecer los datos de ubicación entrantes con datos de otras fuentes, como un Amazon DynamoDB tabla que contiene los detalles de mantenimiento del vehículo. Entonces un analista de datos puede utilizar el capacidades de consulta geoespacial of Atenea amazónica para obtener información, como la cantidad de días que sus vehículos han operado en los límites propuestos de una ULEZ ampliada. Debido a que los vehículos que no cumplen con los estándares de emisiones ULEZ están sujetos a un cargo diario para operar dentro de la zona, puede usar los datos de ubicación, junto con los datos de mantenimiento, como la antigüedad del vehículo, el kilometraje actual y los estándares de emisiones actuales para estimar la cantidad. la empresa tendría que gastar en honorarios diarios.

Esta publicación muestra cómo puede utilizar Amazon Location, EventBridge, Lambda, Manguera de datos de Amazony Amazon S3 para crear una canalización de datos con reconocimiento de ubicación y utilizar estos datos para generar información significativa utilizando Pegamento AWS y Atenea.

Resumen de la solución

Esta es una solución totalmente sin servidor para la gestión de activos basada en la ubicación. La solución consta de las siguientes interfaces:

  • IoT o aplicación móvil – Una aplicación móvil o un dispositivo de Internet de las cosas (IoT) permite el seguimiento de un vehículo de la empresa mientras está en uso y transmite su ubicación actual de forma segura a la capa de ingesta de datos en AWS. El enfoque de ingestión no está dentro del alcance de esta publicación. En cambio, una función Lambda en nuestra solución simula viajes de vehículos de muestra y actualiza directamente los objetos del rastreador de ubicación de Amazon con ubicaciones aleatorias.
  • Análisis de datos – Los analistas de negocios recopilan información operativa de múltiples fuentes de datos, incluidos los datos de ubicación recopilados de los vehículos. Los analistas de datos buscan respuestas a preguntas como: "¿Cuánto tiempo pasó históricamente un vehículo determinado dentro de una zona propuesta y cuánto habrían costado las tarifas si la política hubiera estado vigente durante los últimos 12 meses?"

El siguiente diagrama ilustra la arquitectura de la solución.
Diagrama de arquitectura

El flujo de trabajo consta de los siguientes pasos clave:

  1. La funcionalidad de seguimiento de Amazon Location se utiliza para rastrear el vehículo. Al utilizar la integración de EventBridge, las actualizaciones posicionales filtradas se publican en un bus de eventos de EventBridge. Esta solución utiliza basado en la distancia filtrado para reducir costos y fluctuaciones. El filtrado basado en distancia ignora las actualizaciones de ubicación en las que los dispositivos se han movido menos de 30 metros (98.4 pies).
  2. Los eventos de posición del dispositivo de Amazon Location llegan a EventBridge default autobús con source: ["aws.geo"] y detail-type: ["Location Device Position Event"]. Se crea una regla para reenviar estos eventos a dos objetivos posteriores: una función Lambda y un flujo de entrega Firehose.
  3. En esta publicación se describen dos patrones diferentes, basados ​​en cada objetivo, para demostrar diferentes enfoques para enviar los datos a un depósito de S3:
    1. función lambda – El primer enfoque utiliza una función Lambda para demostrar cómo se puede utilizar el código en la canalización de datos para transformar directamente los datos de ubicación entrantes. Puede modificar la función Lambda para obtener información adicional del vehículo de un almacén de datos independiente (por ejemplo, una tabla de DynamoDB o un sistema de gestión de relaciones con el cliente) para enriquecer los datos, antes de almacenar los resultados en un depósito de S3. En este modelo, la función Lambda se invoca para cada evento entrante.
    2. Flujo de entrega de manguera contra incendios – El segundo enfoque utiliza un flujo de entrega de Firehose para almacenar en buffer y por lotes las actualizaciones posicionales entrantes, antes de almacenarlas en un depósito de S3 sin modificaciones. Este método utiliza compresión GZIP para optimizar el consumo de almacenamiento y el rendimiento de las consultas. También puedes utilizar el transformación de datos característica de Data Firehose para invocar una función Lambda para realizar la transformación de datos en lotes.
  4. AWS Glue rastrea las rutas de ambos depósitos de S3, completa las tablas de la base de datos de AWS Glue en función de los esquemas inferidos y pone los datos a disposición de otras aplicaciones de análisis a través del catálogo de datos de AWS Glue.
  5. Athena se utiliza para ejecutar consultas geoespaciales sobre los datos de ubicación almacenados en los depósitos de S3. El catálogo de datos proporciona metadatos que permiten que las aplicaciones de análisis que utilizan Athena encuentren, lean y procesen los datos de ubicación almacenados en Amazon S3.
  6. Esta solución incluye una función Lambda que actualiza continuamente el rastreador de ubicación de Amazon con datos de ubicación simulados de viajes ficticios. La función Lambda se activa a intervalos regulares mediante una regla EventBridge programada.

Puede probar esta solución usted mismo utilizando el Repositorio de GitHub de ejemplos de AWS. El repositorio contiene el Modelo de aplicación sin servidor de AWS (AWS SAM) y código Lambda necesarios para probar esta solución. Consulte las instrucciones en el README archivo para conocer los pasos sobre cómo aprovisionar y desmantelar esta solución.

Los diseños visuales en algunas capturas de pantalla de esta publicación pueden verse diferentes a los de su Consola de administración de AWS.

Generación de datos

En esta sección, analizamos los pasos para generar datos de viaje de forma manual o automática.

Generar datos de viaje manualmente

Puede actualizar manualmente las posiciones del dispositivo utilizando el Interfaz de línea de comandos de AWS (CLI de AWS) comando aws location batch-update-device-position. Reemplace la tracker-name, device-id, Positiony SampleTime valores con los suyos propios y asegúrese de que las actualizaciones sucesivas estén separadas por más de 30 metros para colocar un evento en el default Autobús de eventos EventBridge:

aws location batch-update-device-position --tracker-name <tracker-name> --updates "[{"DeviceId": "<device-id>", "Position": [<longitude>, <latitude>], "SampleTime": "<YYYY-MM-DDThh:mm:ssZ>"}]"

Genere automáticamente datos de viaje usando el simulador

El proporcionado Formación en la nube de AWS La plantilla implementa una regla programada de EventBridge y una función Lambda adjunta que simula actualizaciones del rastreador de vehículos. Esta regla está habilitada de forma predeterminada y se ejecuta con una frecuencia especificada por el SimulationIntervalMinutes Parámetro de formación de nube. La función Lambda de generación de datos actualiza el rastreador de ubicación de Amazon con una posición aleatoria desplazada de las ubicaciones base de los vehículos.

Los nombres de los vehículos y las ubicaciones de las bases se almacenan en el vehículos.json archivo. La posición inicial de un vehículo se restablece cada día y se han elegido las ubicaciones de las bases para darles la capacidad de entrar y salir del ULEZ en un día determinado para proporcionar una simulación de viaje realista.

solicite desactivar la regla temporalmente navegando a los detalles de la regla programada en la consola de EventBridge. Alternativamente, cambie el parámetro State: ENABLED a State: DISABLED para el recurso de regla programado GenerateDevicePositionsScheduleRule existentes plantilla.yml archivo. Reconstruya y vuelva a implementar la plantilla de AWS SAM para que este cambio surta efecto.

Enfoques de canalización de datos de ubicación

Las configuraciones descritas en esta sección se implementan automáticamente mediante la plantilla de AWS SAM proporcionada. La información de esta sección se proporciona para describir las partes pertinentes de la solución.

Eventos de posición del dispositivo de ubicación de Amazon

Amazon Location envía eventos de actualización de la posición del dispositivo a EventBridge en el siguiente formato:

{
    "version":"0",
    "id":"<event-id>",
    "detail-type":"Location Device Position Event",
    "source":"aws.geo",
    "account":"<account-number>",
    "time":"<YYYY-MM-DDThh:mm:ssZ>",
    "region":"<region>",
    "resources":[
        "arn:aws:geo:<region>:<account-number>:tracker/<tracker-name>"
    ],
    "detail":{
        "EventType":"UPDATE",
        "TrackerName":"<tracker-name>",
        "DeviceId":"<device-id>",
        "SampleTime":"<YYYY-MM-DDThh:mm:ssZ>",
        "ReceivedTime":"<YYYY-MM-DDThh:mm:ss.sssZ>",
        "Position":[
            <longitude>, 
            <latitude>
	]
    }
}

Opcionalmente, puede especificar un transformación de entrada para modificar el formato y el contenido de los datos del evento de posición del dispositivo antes de que alcance el objetivo.

Enriquecimiento de datos usando Lambda

El enriquecimiento de datos en este patrón se facilita mediante la invocación de una función Lambda. En este ejemplo, llamamos a esta función ProcessDevicePositiony utilizar un tiempo de ejecución de Python. Se aplica una transformación personalizada en la definición de destino de EventBridge para recibir los datos del evento en el siguiente formato:

{
    "EventType":<EventType>,
    "TrackerName":<TrackerName>,
    "DeviceId":<DeviceId>,
    "SampleTime":<SampleTime>,
    "ReceivedTime":<ReceivedTime>,
    "Position":[<Longitude>,<Latitude>]
}

Podrías aplicar transformaciones adicionales, como la refactorización de Latitude y Longitude datos en pares clave-valor separados si así lo requiere la lógica de negocios descendente que procesa los eventos.

El siguiente código demuestra la lógica de la aplicación Python que ejecuta el ProcessDevicePosition Función lambda. Se ha omitido el manejo de errores en este fragmento de código por motivos de brevedad. El código completo está disponible en el Repositorio GitHub.

import json
import os
import uuid
import boto3

# Import environment variables from Lambda function.
bucket_name = os.environ["S3_BUCKET_NAME"]
bucket_prefix = os.environ["S3_BUCKET_LAMBDA_PREFIX"]

s3 = boto3.client("s3")

def lambda_handler(event, context):
    key = "%s/%s/%s-%s.json" % (bucket_prefix,
                                event["DeviceId"],
                                event["SampleTime"],
                                str(uuid.uuid4())
    body = json.dumps(event, separators=(",", ":"))
    body_encoded = body.encode("utf-8")
    s3.put_object(Bucket=bucket_name, Key=key, Body=body_encoded)
    return {
        "statusCode": 200,
        "body": "success"
    }

El código anterior crea un objeto S3 para cada evento de posición del dispositivo recibido por EventBridge. El código utiliza el DeviceId como prefijo para escribir los objetos en el depósito.

Puede agregar lógica adicional al código de función Lambda anterior para enriquecer los datos del evento utilizando otras fuentes. El ejemplo en el Repositorio GitHub demuestra cómo enriquecer el evento con datos de una tabla de mantenimiento de vehículos de DynamoDB.

Además del requisito previo Gestión de identidades y accesos de AWS (IAM) permisos proporcionados por el rol AWSBasicLambdaExecutionRole, la ProcessDevicePosition La función requiere permisos para realizar el S3. put_object acción y cualquier otra acción requerida por la lógica de enriquecimiento de datos. Los permisos de IAM requeridos por la solución están documentados en la plantilla.yml archivo.

{
    "Version":"2012-10-17",
    "Statement":[
        {
            "Action":[
                "s3:ListBucket"
            ],
            "Resource":[
                "arn:aws:s3:::<S3_BUCKET_NAME>"
            ],
            "Effect":"Allow"
        },
        {
            "Action":[
                "s3:PutObject"
            ],
            "Resource":[
                "arn:aws:s3:::<S3_BUCKET_NAME>/<S3_BUCKET_LAMBDA_PREFIX>/*"
            ],
            "Effect":"Allow"
        }
    ]
}

Canalización de datos mediante Amazon Data Firehose

Complete los siguientes pasos para crear su flujo de entrega de Firehose:

  1. En la consola de Amazon Data Firehose, elija Arroyos de manguera contra incendios en el panel de navegación.
  2. Elige Crear flujo de Firehose.
  3. Fuente, elige como PUT directa.
  4. Destino, escoger Amazon S3.
  5. Nombre del arroyo de manguera contra incendios, ingrese un nombre (para esta publicación, ProcessDevicePositionFirehose).
    Crear flujo de Firehose
  6. Configure los ajustes de destino con detalles sobre el depósito de S3 en el que se almacenan los datos de ubicación, junto con la estrategia de partición:
    1. Uso y para determinar los prefijos de depósito y objeto.
    2. Uso DeviceId como prefijo adicional para escribir los objetos en el depósito.
  7. permitir Particionamiento dinámico y Nuevo delimitador de línea para asegurarse de que la partición sea automática según DeviceIdy que se agreguen nuevos delimitadores de línea entre registros en objetos que se entregan a Amazon S3.

AWS Glue los requiere para rastrear los datos posteriormente y para que Athena reconozca registros individuales.
Configuración de destino para la transmisión de Firehose

Cree una regla de EventBridge y adjunte objetivos

La regla EventBridge ProcessDevicePosition define dos objetivos: el ProcessDevicePosition función lambda y la ProcessDevicePositionFirehose flujo de entrega. Complete los siguientes pasos para crear la regla y adjuntar destinos:

  1. En la consola de EventBridge, cree una nueva regla.
  2. Nombre, ingrese un nombre (para esta publicación, ProcessDevicePosition).
  3. Bus de eventosescoger tu préstamo estudiantil.
  4. Tipo de reglaSeleccione Regla con un patrón de evento.
    Detalle de la regla de EventBridge
  5. origen del evento, seleccione Eventos de AWS o eventos de socios de EventBridge.
    Origen del evento EventBridge
  6. Método, seleccione Usar forma de patrón.
  7. En Patrón de evento sección, especificar Servicios de AWS como la fuente, Servicio de ubicación de Amazon como el servicio específico, y Ubicación Evento de posición del dispositivo como tipo de evento.
    Método de creación de EventBridge
  8. Objetivo 1, adjunta ProcessDevicePosition Función Lambda como objetivo.
    Objetivo 1 de EventBridge
  9. Utilizamos Transformador de entrada para personalizar el evento que está comprometido con el depósito de S3.
    Transformador de objetivo 1 de EventBridge
  10. Configurar Mapa de rutas de entrada y Plantilla de entrada para organizar la carga útil en el formato deseado.
    1. El siguiente código es el mapa de rutas de entrada:
      {
          EventType: $.detail.EventType
          TrackerName: $.detail.TrackerName
          DeviceId: $.detail.DeviceId
          SampleTime: $.detail.SampleTime
          ReceivedTime: $.detail.ReceivedTime
          Longitude: $.detail.Position[0]
          Latitude: $.detail.Position[1]
      }

    2. El siguiente código es la plantilla de entrada:
      {
          "EventType":<EventType>,
          "TrackerName":<TrackerName>,
          "DeviceId":<DeviceId>,
          "SampleTime":<SampleTime>,
          "ReceivedTime":<ReceivedTime>,
          "Position":[<Longitude>, <Latitude>]
      }

  11. Objetivo 2, elegir la ProcessDevicePositionFirehose flujo de entrega como objetivo.
    Objetivo 2 de EventBridge

Este destino requiere una función de IAM que permita escribir uno o varios registros en el flujo de entrega de Firehose:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Action": [
                "firehose:PutRecord",
                "firehose:PutRecords"
            ],
            "Resource": [
                "arn:aws:firehose:<region>:<account-id>:deliverystream/<delivery-stream-name>"
            ],
            "Effect": "Allow"
        }
    ]
}

Rastree y catalogue los datos con AWS Glue

Una vez que se hayan generado suficientes datos, complete los siguientes pasos:

  1. En la consola de AWS Glue, elija Rastreadores en el panel de navegación.
  2. Seleccione los rastreadores que se han creado, location-analytics-glue-crawler-lambda y location-analytics-glue-crawler-firehose.
  3. Elige Ejecutar.

Los rastreadores clasificarán automáticamente los datos en formato JSON, agruparán los registros en tablas y particiones y enviarán los metadatos asociados al catálogo de datos de AWS Glue.
Rastreadores

  1. Cuando el Última carrera Los estados de ambos rastreadores se muestran como logrado, confirme que dos tablas (lambda y firehose) han sido creados en el Mesas .

La solución divide los datos de ubicación entrantes según el deviceid campo. Por lo tanto, siempre que no haya nuevos dispositivos o cambios de esquema, no es necesario que los rastreadores se ejecuten nuevamente. Sin embargo, si se agregan nuevos dispositivos o se utiliza un campo diferente para la partición, los rastreadores deben ejecutarse nuevamente.
Mesas

Ahora está listo para consultar las tablas usando Athena.

Consultar los datos usando Athena

Athena es un servicio de análisis interactivo sin servidor creado para analizar datos no estructurados, semiestructurados y estructurados donde están alojados. Si es la primera vez que utiliza la consola Athena, sigue las instrucciones para configurar una ubicación de resultados de consulta en Amazon S3. Para consultar los datos con Athena, complete los siguientes pasos:

  1. En la consola de Athena, abra el editor de consultas.
  2. Fuente de datos, escoger AwsDataCatalog.
  3. Base de datos, escoger location-analytics-glue-database.
  4. En el menú de opciones (tres puntos verticales), elija Tabla de vista previa para consultar el contenido de ambas tablas.
    Tabla de vista previa

La consulta muestra 10 registros posicionales de muestra actualmente almacenados en la tabla. La siguiente captura de pantalla es un ejemplo de la vista previa del firehose mesa. La firehose La tabla almacena datos sin procesar y sin modificar del rastreador de ubicación de Amazon.
Resultados de la consulta
Ahora puede experimentar con consultas geoespaciales. Archivo GeoJSON para la expansión ULEZ de Londres de 2021 es parte del repositorio y ya se ha convertido en una consulta compatible con ambas tablas de Athena.

  1. Copia y pega el contenido del 1-manguera-de-fuegos-athena-ulez-2021-create-view.sql archivo encontrado en el examples/firehose carpeta en el editor de consultas.

Esta consulta utiliza el ST_Within Función geoespacial para determinar si una posición registrada está dentro o fuera de la zona ULEZ definida por el polígono. Una nueva vista llamada ulezvehicleanalysis_firehose se crea con una nueva columna, insidezone, que captura si la posición registrada existe dentro de la zona.

Un pitón sencillo utilidad se proporciona, que convierte las entidades poligonales que se encuentran en el archivo GeoJSON descargado en ST_Polygon cadenas basadas en el formato de texto conocido que se puede utilizar directamente en una consulta de Athena.

  1. Elige Vista previa en ulezvehicleanalysis_firehose ver para explorar su contenido.
    Vista previa

Ahora puede ejecutar consultas en esta vista para obtener información general.

  1. Copia y pega el contenido del 2-firehose-athena-ulez-2021-días-de-consulta-en-zona.sql archivo encontrado en el examples/firehose carpeta en el editor de consultas.

Esta consulta establece el número total de días que cada vehículo ha ingresado a ULEZ y cuáles serían los cargos totales esperados. La consulta ha sido parametrizada utilizando el ? carácter marcador de posición. Consultas parametrizadas le permite volver a ejecutar la misma consulta con diferentes valores de parámetros.

  1. Ingrese el monto de la tarifa diaria para Parámetro 1y luego ejecute la consulta.
    Editor de consultas

Los resultados muestran cada vehículo, la cantidad total de días pasados ​​en la ULEZ propuesta y los cargos totales basados ​​en la tarifa diaria que ingresó.
Resultados de la consulta
Puedes repetir este ejercicio usando el lambda mesa. datos en el lambda La tabla se aumenta con detalles adicionales del vehículo presentes en la tabla de mantenimiento del vehículo de DynamoDB en el momento en que la procesa la función Lambda. La solución admite los siguientes campos:

  • MeetsEmissionStandards (Booleano)
  • Mileage (Número)
  • PurchaseDate (Cadena, en YYYY-MM-DD formato)

También puede enriquecer los nuevos datos a medida que llegan.

  1. En la consola de DynamoDB, busque la tabla de mantenimiento del vehículo en Mesas. El nombre de la tabla se proporciona como salida. VehicleMaintenanceDynamoTable en la pila de CloudFormation implementada.
  2. Elige Explora los elementos de la mesa para ver el contenido de la tabla.
  3. Elige Crear artículo para crear un nuevo registro para un vehículo.
    Crear artículo
  4. Participar DeviceId (Tales como vehicle1 como una cadena), PurchaseDate (Tales como 2005-10-01 como una cadena), Mileage (Tales como 10000 como un número), y MeetsEmissionStandards (con un valor como False como booleano).
  5. Elige Crear artículo para crear el registro.
    Crear artículo
  6. Duplicar el registro recién creado con entradas adicionales para otros vehículos (como para vehicle2 or vehicle3), modificando ligeramente los valores de los atributos cada vez.
  7. Vuelva a ejecutar el location-analytics-glue-crawler-lambda Rastreador de AWS Glue después de que se hayan generado nuevos datos para confirmar que la actualización del esquema con nuevos campos está registrada.
  8. Copia y pega el contenido del 1-lambda-athena-ulez-2021-create-view.sql archivo encontrado en el examples/lambda carpeta en el editor de consultas.
  9. Vista previa del ulezvehicleanalysis_lambda para confirmar que se han creado las nuevas columnas.

Si errores como Column 'mileage' cannot be resolved se muestran, el enriquecimiento de datos no se está realizando o el rastreador de AWS Glue aún no ha detectado actualizaciones en el esquema.

Si Opción de vista previa de la tabla solo devuelve resultados anteriores a la creación de registros en la tabla de DynamoDB, devuelva los resultados de la consulta en orden descendente usando sampletime (por ejemplo, order by sampletime desc limit 100;).
Resultados de la consulta
Ahora nos centramos en los vehículos que actualmente no cumplen con los estándares de emisiones y ordenamos los vehículos en orden descendente según el kilometraje por año (calculado utilizando el último kilometraje/edad del vehículo en años).

  1. Copia y pega el contenido del 2-lambda-athena-ulez-2021-días-de-consulta-en-zona.sql archivo encontrado en el examples/lambda carpeta en el editor de consultas.
    Resultados de la consulta

En este ejemplo, podemos ver que de nuestra flota de vehículos, se ha informado que cinco no cumplen con los estándares de emisiones. También podemos ver los vehículos que han acumulado alto kilometraje por año, y el número de días pasados ​​en la ULEZ propuesta. El operador de la flota ahora puede decidir dar prioridad a estos vehículos para su reemplazo. Debido a que los datos de ubicación se enriquecen con los datos de mantenimiento del vehículo más actualizados en el momento en que se ingresan, puede evolucionar aún más estas consultas para que se ejecuten en un período de tiempo definido. Por ejemplo, podría tener en cuenta los cambios de kilometraje del año pasado.

Debido a la naturaleza dinámica del enriquecimiento de datos, cualquier dato nuevo que se envíe a Amazon S3, junto con los resultados de la consulta, se modificará a medida que se actualicen los registros en la tabla de mantenimiento de vehículos de DynamoDB.

Limpiar

Consulte las instrucciones en el README archivo para limpiar los recursos proporcionados para esta solución.

Conclusión

Esta publicación demostró cómo puede utilizar Amazon Location, EventBridge, Lambda, Amazon Data Firehose y Amazon S3 para crear una canalización de datos con reconocimiento de ubicación y utilizar los datos de posición del dispositivo recopilados para generar información analítica mediante AWS Glue y Athena. Al rastrear estos activos en tiempo real y almacenar los resultados, las empresas pueden obtener información valiosa sobre la eficacia con la que se utilizan sus flotas y reaccionar mejor a los cambios en el futuro. Ahora puede explorar la posibilidad de ampliar este código de muestra con los datos de seguimiento de su propio dispositivo y los requisitos de análisis.


Acerca de los autores

Alan Peaty es arquitecto de soluciones de socios senior en AWS. Alan ayuda a los integradores de sistemas globales (GSI) y a los proveedores de software independientes globales (GISV) a resolver desafíos complejos de los clientes mediante los servicios de AWS. Antes de unirse a AWS, Alan trabajó como arquitecto en integradores de sistemas para traducir los requisitos comerciales en soluciones técnicas. Fuera del trabajo, Alan es un entusiasta del IoT y un entusiasta corredor al que le encanta recorrer los senderos embarrados de la campiña inglesa.

Parag Srivastava es arquitecto de soluciones en AWS y ayuda a los clientes empresariales con la adopción y migración exitosa de la nube. Durante su carrera profesional ha estado ampliamente involucrado en proyectos complejos de transformación digital. También le apasiona crear soluciones innovadoras en torno a los aspectos geoespaciales de las direcciones.

punto_img

Información más reciente

punto_img