منصوبے کے بارے میں
# ریئل ٹائم کلک اسٹریم اینالیٹکس ڈیش بورڈ
Apache Kafka، Python، Pandas، اور Matplotlib کے ساتھ بنایا گیا ایک ریئل ٹائم ویب سائٹ ٹریفک اینالیٹکس ڈیش بورڈ۔ یہ سسٹم کلک اسٹریم ٹریفک ڈیٹا کی نقل کرتا ہے، اسے Kafka کے ذریعے اسٹریم کرتا ہے، اور لائیو اینالیٹکس ویژولائزیشنز پیش کرتا ہے۔
## اہم خصوصیات
- ریئل ٹائم کلک اسٹریم ڈیٹا اسٹریمنگ پائپ لائن
- Kafka Producer اور Consumer آرکیٹیکچر
- اینیمیٹڈ گراف کے ساتھ لائیو Matplotlib پر مبنی ڈیش بورڈ
- ملک کے لحاظ سے ٹریفک کی تقسیم کی ٹریکنگ
- وقت کے ساتھ منفرد زائرین کی تعداد میں اضافہ
- Docker Compose سیٹ اپ برائے Kafka انفراسٹرکچر
## ٹیکنالوجیز
Python, Apache Kafka, Docker, Pandas, Matplotlib, NumPy
## پروجیکٹ کا ڈھانچہ
```
kafka-project/
├── consumer.py # Kafka consumer + Matplotlib ڈیش بورڈ
├── producer.py # Kafka producer جو کلک اسٹریم ایونٹس بھیجتا ہے
├── generate_data.py # مصنوعی کلک اسٹریم ڈیٹا جنریٹر
├── docker-compose.yml # Kafka اسٹیک کنفیگریشن
└── README.md
```
## یہ کیسے کام کرتا ہے
1. `generate_data.py` مصنوعی کلک اسٹریم ریکارڈز (صارف کے سیشنز، پیج ویوز، ملکی کوڈز، ٹائم اسٹیمپ) تیار کرتا ہے۔
2. `producer.py` ان ریکارڈز کو پڑھتا ہے اور انہیں ایک Kafka ٹاپک (`clickstream-topic`) پر پبلش کرتا ہے۔
3. `consumer.py` Kafka سے پیغامات وصول کرتا ہے اور ہر 100 پیغامات کے بعد لائیو Matplotlib فگر کو اپ ڈیٹ کرتا ہے، جس میں ملک کی تقسیم کو بار چارٹ کے طور پر اور منفرد صارف کی ترقی کو لائن چارٹ کے طور پر دکھایا جاتا ہے۔
4. Kafka کو Docker Compose کے ذریعے Docker کنٹینرز کے اندر چلایا جاتا ہے۔
## پروجیکٹ کو چلانا
1. Kafka سروسز شروع کریں:
```bash
docker compose up -d
```
2. ٹاپک بنائیں:
```bash
docker exec -it kafka /opt/kafka/bin/kafka-topics.sh --create --topic clickstream-topic --bootstrap-server localhost:9092
```
3. ڈیٹا سیٹ تیار کریں:
```bash
python generate_data.py
```
4. پروڈیوسر چلائیں:
```bash
python producer.py
```
5. دوسرا ٹرمینل کھولیں اور کنزیومر ڈیش بورڈ چلائیں:
```bash
python consumer.py
```
کنزیومر کے پیغامات موصول ہونے پر Matplotlib ونڈو ریئل ٹائم میں اپ ڈیٹ ہوگی۔
## منصوبہ بند بہتری
- ویب پر مبنی ڈیش بورڈ (مثلاً Streamlit یا Dash)
- Apache Spark Streaming انٹیگریشن
- تاریخی تجزیہ کے لیے مستقل ڈیٹا بیس اسٹوریج
- سیشن کی سطح کے اینالیٹکس
- صارف کے رویے کی پیشن گوئی کے ماڈلز
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.