Skip to content

A real-time fraud detection system using Apache Kafka and InfluxDB. This project simulates financial transactions, classifies them as suspicious or not based on amount, and streams them to Kafka. Suspicious transactions are stored in InfluxDB for monitoring and visualized via Grafana.

Notifications You must be signed in to change notification settings

Yazid0Hakimi/Kafka-Fraud-Detection

Repository files navigation

Kafka Fraud Detection

Kafka Fraud Detection is a system that identifies and analyzes suspicious transactions in real time using Kafka Streams and InfluxDB. The results are visualized through Grafana dashboards.

System Design

System Design

The architecture includes:

  • Kafka Streams: Processes real-time transaction data.
  • InfluxDB: Stores transactional data and flagged suspicious transactions.
  • Grafana: Provides interactive dashboards for visualizing transaction insights.

Example Logs

Below is an example of how suspicious transactions are logged:

Example Logs


Grafana Dashboards

The transactions and flagged suspicious activities are visualized in Grafana:

Dashboard Overview

Grafana Dashboard 1

Transaction Insights

Grafana Dashboard 2


InfluxDB Query

Transaction data is stored and queried in InfluxDB. Example of querying suspicious transactions:

InfluxDB Query


Getting Started

Follow these steps to set up and run the project:

  1. Start Kafka and InfluxDB services.
  2. Use the provided Kafka Producer to push transactions to the transactions-input topic.
  3. View flagged transactions and insights on Grafana dashboards.

Key Features

  • Real-time fraud detection.
  • Flexible querying with InfluxDB.
  • Interactive visualizations using Grafana.

Contributions

Contributions are welcome! Please fork the repository and submit a pull request.

About

A real-time fraud detection system using Apache Kafka and InfluxDB. This project simulates financial transactions, classifies them as suspicious or not based on amount, and streams them to Kafka. Suspicious transactions are stored in InfluxDB for monitoring and visualized via Grafana.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages