প্রকল্প সম্পর্কে

# রিয়েল-টাইম ক্লিকস্ট্রিম অ্যানালিটিক্স ড্যাশবোর্ড আপাচ কাফকা, পাইথন, প্যান্ডাস এবং ম্যাটপলটলিব ব্যবহার করে তৈরি একটি রিয়েল-টাইম ওয়েবসাইট ট্রাফিক অ্যানালিটিক্স ড্যাশবোর্ড। সিস্টেমটি ক্লিকস্ট্রিম ট্রাফিক ডেটা সিমুলেট করে, কাফকা দিয়ে স্ট্রিম করে এবং লাইভ অ্যানালিটিক্স ভিজুয়ালাইজেশন রেন্ডার করে। ## প্রধান ফিচার - রিয়েল-টাইম ক্লিকস্ট্রিম ডেটা স্ট্রিমিং পাইপলাইন - কাফকা প্রোডিউসার এবং কনজিউমার আর্কিটেকচার - অ্যানিমেটেড গ্রাফ সহ লাইভ ম্যাটপলটলিব-ভিত্তিক ড্যাশবোর্ড - দেশভিত্তিক ট্রাফিক বন্টন ট্র্যাকিং - সময়ের সাথে ইউনিক ভিজিটর বৃদ্ধি - কাফকা ইনফ্রাস্ট্রাকচারের জন্য ডকার কম্পোজ সেটআপ ## প্রযুক্তি পাইথন, আপাচ কাফকা, ডকার, প্যান্ডাস, ম্যাটপলটলিব, নুম্পি ## প্রজেক্ট কাঠামো ``` kafka-project/ ├── consumer.py # কাফকা কনজিউমার + ম্যাটপলটলিব ড্যাশবোর্ড ├── producer.py # ক্লিকস্ট্রিম ইভেন্ট পাঠানোর কাফকা প্রোডিউসার ├── generate_data.py # সিনথেটিক ক্লিকস্ট্রিম ডেটা জেনারেটর ├── docker-compose.yml # কাফকা স্ট্যাক কনফিগারেশন └── README.md ``` ## এটি কিভাবে কাজ করে 1. `generate_data.py` সিনথেটিক ক্লিকস্ট্রিম রেকর্ড (ব্যবহারকারী সেশন, পেজ ভিউ, দেশ কোড, সময়সীমা) তৈরি করে। 2. `producer.py` সেই রেকর্ড পড়ে এবং কাফকা টপিকে (`clickstream-topic`) প্রকাশ করে। 3. `consumer.py` কাফকা থেকে মেসেজ কনজিউম করে এবং প্রতি ১০০ মেসেজে একটি লাইভ ম্যাটপলটলিব চিত্র আপডেট করে, যেখানে দেশ বন্টন বার চার্ট এবং ইউনিক-ব্যবহারকারী বৃদ্ধি লাইন চার্ট হিসেবে দেখায়। 4. ডকার কনটেইনারের মাধ্যমে ডকার কম্পোজ দিয়ে কাফকা চালানো হয়। ## প্রজেক্ট চালু করা 1. কাফকা সার্ভিস শুরু করুন: ```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 ``` কনজিউমার মেসেজ আসার সময় ম্যাটপলটলিব উইন্ডো রিয়েল-টাইমে আপডেট হবে। ## পরিকল্পিত উন্নয়ন - ওয়েব-ভিত্তিক ড্যাশবোর্ড (যেমন: Streamlit বা Dash) - আপাচ স্পার্ক স্ট্রিমিং ইন্টিগ্রেশন - ঐতিহাসিক বিশ্লেষণের জন্য স্থায়ী ডেটাবেস সংরক্ষণ - সেশন-স্তরের অ্যানালিটিক্স - ব্যবহারকারী আচরণ পূর্ববাণী মডেল