Real-Time Asset Tracking with Apache Kafka and Kafka Streams
Jul 16, 2020Ram Dhakne

Summary
This post details a specific implementation for real-time asset tracking using Apache Kafka and Kafka Streams. It describes a data pipeline that ingests geolocation data from an MQTT server via a Java client into a Kafka topic ('vehicle-positions'). Kafka Streams is then used to reformat and enrich this data, writing it to another topic ('vehicle-positions-enriched'). Finally, an Elasticsearch Sink Connector is configured to ingest the enriched data into Elasticsearch, which is then visualized in Kibana as a real-time map dashboard. The post provides sample configurations for the producer, Kafka Streams application, and Elasticsearch connector, along with example data formats and Kibana index templates.