An open API service indexing awesome lists of open source software.

https://github.com/badhanhitesh/streamlinede-

Welcome to StreamlineDE, an end-to-end data engineering project designed to demonstrate real-time data ingestion, processing, and storage using a modern data engineering stack. This project showcases seamless integration of tools like Apache Airflow, Kafka, Spark, and Cassandra, all containerized with Docker for easy deployment.
https://github.com/badhanhitesh/streamlinede-

apache-airflow apache-kafka apache-spark docker postgresql python

Last synced: 6 months ago
JSON representation

Welcome to StreamlineDE, an end-to-end data engineering project designed to demonstrate real-time data ingestion, processing, and storage using a modern data engineering stack. This project showcases seamless integration of tools like Apache Airflow, Kafka, Spark, and Cassandra, all containerized with Docker for easy deployment.

Awesome Lists containing this project

README

          

# πŸš€ StreamlineDE: Real-time Data Streaming & Processing Pipeline


Real-Time Processing
Data Streaming
Airflow
Cassandra
Docker

✨ **StreamlineDE** is your one-stop solution for building a scalable, end-to-end data engineering pipeline that streams, processes, and stores data in real time. Containerized with Docker, it’s easy to deploy and scale across environments!

## πŸ“– Table of Contents
- [🎯 Introduction](#-introduction)
- [πŸ“ System Architecture](#-system-architecture)
- [🌟 What You'll Learn](#-what-youll-learn)
- [πŸ›  Technologies Used](#-technologies-used)
- [πŸš€ Getting Started](#-getting-started)

---

## 🎯 Introduction

**StreamlineDE** is a hands-on project aimed at demonstrating real-time data streaming and processing using state-of-the-art tools like Apache Kafka, Apache Spark, Apache Airflow, and Cassandra. Learn how to orchestrate a complex pipeline, process streaming data, and store the processed information in distributed databases. Best of all, it’s all containerized for effortless deployment!

---

## πŸ“ System Architecture

![Architecture Diagram](https://github.com/badhanhitesh/StreamlineDE-/blob/main/Data%20engineering%20architecture.png)

### Key Components:

1. **πŸ“‘ Data Source**: Data from `randomuser.me` API simulates real-world, continuous data flow.
2. **βš™οΈ Apache Airflow**: Orchestrates the pipeline by fetching data into PostgreSQL.
3. **πŸš› Apache Kafka**: Streams data from PostgreSQL to the processing engine.
4. **🧩 Apache Zookeeper**: Synchronizes Kafka clusters.
5. **πŸ“Š Apache Spark**: Processes data in real-time.
6. **πŸ—„οΈ Cassandra**: Stores the processed data in a NoSQL, distributed database.
7. **🐳 Docker**: Containerizes the entire architecture for ease of deployment.

---

## 🌟 What You'll Learn
- βœ… Build a **real-time data pipeline** with Apache Airflow.
- βœ… Handle **data streaming** using Apache Kafka.
- βœ… Use Apache Spark for **real-time data processing**.
- βœ… Store processed data in **Cassandra** and relational data in **PostgreSQL**.
- βœ… **Containerize** a full data pipeline using Docker.
- βœ… Monitor and manage Kafka streams using **Control Center** and **Schema Registry**.

---

## πŸ›  Technologies Used


Apache Airflow
Python
Apache Kafka
Apache Spark
Cassandra
PostgreSQL
Docker

---

## πŸš€ Getting Started

To get started with **StreamlineDE**, follow these steps:

### πŸ”§ Prerequisites
Ensure you have the following installed:
- [Docker](https://www.docker.com/get-started)
- [Git](https://git-scm.com/)

### πŸ›  Installation

1. **Clone the repository**:
```bash
git clone https://github.com/badhanhitesh/StreamlineDE.git

2. **Navigate to the project directory**:
```bash
cd StreamlineDE

3. **Spin up the services with Docker Compose**:
```bash
docker-compose up
4. **Access the interfaces:**
Airflow: http://localhost:8080
Kafka Control Center: http://localhost:9021