← Back to Projects

Matcher Analyzer - A full-stack application for geospatial data visualization

A method to visualize geospatial detection (points and ways) data on maps for analysis and insights. Multiple features for filtering, clustering, and visualization of direction of movement to highlight patterns and potential issues.

Year
2024
Role
Lead Software Engineer
Duration
4 months
Matcher Analyzer - A full-stack application for geospatial data visualization screenshot

Gallery

Matcher Analyzer - A full-stack application for geospatial data visualization screenshot 1

Overview

The points had aproximate location. They were used to generate real life paths on the map by an external service. The data was imported using gRPC and processed using multithreading in multiple stages to be later stored in a PostgreSQL database with PostGIS extension with multiple types of indexes and partitioning for best performance. The application visualizes geospatial detection data on maps, allowing users to analyze and gain insights from the information. It features an intuitive interface for exploring the data, with options for filtering, clustering, and visualization of the direction of movement to highlight patterns and potential issues.

Key Features

  • Geospatial Data Visualization: Interactive maps to visualize detection data points and paths.
  • Data Filtering and Clustering: Tools to filter and cluster data points for better analysis.
  • Direction of Movement Visualization: Arrows and lines to indicate movement direction and patterns.
  • Database partitioning: Efficient handling of large datasets with database partitioning strategies.
  • gRPC Communication: Seamless integration with external services for data processing via gRPC.

Technologies Used

Backend
Laravel
Microservices
Golang
Mapping
Leaflet.js
Styling
SCSS
Database
PostgreSQL
Geospatial
PostGIS

Challenges & Solutions

Handling and visualizing large geospatial datasets efficiently. Integrating gRPC communication with external services for data processing. Implementing database partitioning to optimize performance with vast amounts of data.

Interested in working together?

Let's discuss your next project and how I can help bring it to life.