اندکی صبر، سحر نزدیک است...
علیرضا عسکری خیرآبادی

تحلیلگر داده

توسعه دهنده هوش تجاری

برنامه نویس پایتون

مهندس نرم افزار

علیرضا عسکری خیرآبادی

تحلیلگر داده

توسعه دهنده هوش تجاری

برنامه نویس پایتون

مهندس نرم افزار

پروژه تحلیل رفتار کاربران در MIDHCO ERP

  • مجری کار: علیرضا عسکری خیرآبادی
  • تاریخ: 1403/10/15
  • کارفرما: فناپ زیرساخت
  • دسته بندی: تحلیل کلان داده

پروژه تحلیل کلان‌داده سیستم ERP شرکت MIDHCO

در این پروژه، با هدف تحلیل دقیق رفتار فرآیندهای سازمانی در بستر سیستم ERP شرکت MIDHCO، یک چرخه جامع از پردازش کلان‌داده طراحی و اجرا گردید. این تحلیل در سطحی پیشرفته انجام شد و شامل مراحل متعددی از استخراج داده‌های خام تا خوشه‌بندی رفتاری کاربران و تحلیل‌های بصری در Power BI بود. مهم‌ترین اقدامات و فناوری‌های به‌کار رفته در این پروژه به شرح زیر است:


🗂 استخراج و آماده‌سازی داده‌ها

  • دریافت دیتاست اولیه از لاگ‌های عملیاتی سیستم ERP شامل: زمان، پیام‌های رویداد، نام انجین، کد فرآیند، شناسه رهگیری و سایر متادیتاها.

  • تبدیل دیتای NoSQL (بیش از ۱۰۰ میلیون رکورد) به ساختار SQL برای بهبود عملکرد، تحلیل و نگهداری.

  • پاک‌سازی داده‌ها با حذف رکوردهای دارای مقادیر Null در فیلدهای کلیدی (شناسه فرآیند، نام انجین و…) و حذف ستون‌های غیرضروری.

  • تبدیل زمان از فرمت Unix (ms) به Timestamp میلادی، و جداسازی کد فرآیند به سه فیلد مستقل: نام محصول، سطح BPMN و نام فرآیند.


🔧 پیش‌پردازش و پردازش چندمرحله‌ای

  • پارتیشن‌بندی دیتاست اصلی به ۱۰ قسمت مجزا (هرکدام ~۱۰ میلیون رکورد) جهت افزایش سرعت و پایداری پردازش.

  • طراحی سه مرحله پردازش مستقل برای هر پارتیشن:

    1. سطح پایه: استخراج اطلاعات ساختاری (انجین، محصول، فرآیند، سطح BPMN).

    2. سطح میانی: تحلیل ارتباطات درونی داده‌ها و شمارش تکرارهای فرآیند در سطوح مختلف.

    3. سطح پایانی: محاسبه دقیق زمان اجرای فرآیندها در سمت سرور و کلاینت، و ثبت شناسه رهگیری.

  • تجمیع نتایج پردازش از پارتیشن‌های مختلف به یک دیتاست نهایی و جامع.


📊 تحلیل و خوشه‌بندی رفتاری کاربران

  • افزودن ویژگی‌های رفتاری مانند «بازه زمانی روز» و «روز هفته» با استفاده از فیلد Timestamp برای تحلیل عادات استفاده از سیستم.

  • پیاده‌سازی الگوریتم K-Means در سه حالت:

    • خوشه‌بندی بر اساس زمان اجرای فرآیند (کل، سرور، کلاینت).

    • خوشه‌بندی بر اساس ویژگی‌های زمانی (ساعت، روز، ماه، سال).

    • خوشه‌بندی ترکیبی با استفاده از ویژگی‌های زمانی و فیلدهای قیاسی (انجین، محصول، فرآیند).

  • انتخاب تعداد خوشه بهینه با استفاده از روش Elbow و تحلیل نمودارهای آن.

  • رفع مشکل outlierهای تاثیرگذار بر خوشه‌بندی با شناسایی و حذف نقاط دورافتاده.

  • بررسی جایگزین‌ها مانند Balanced K-Means و در نهایت استفاده موفق از الگوریتم HDBSCAN جهت شناسایی خوشه‌های نامتوازن و سلسله‌مراتبی.


📈 تجسم داده‌ها و تحلیل در Power BI

  • طراحی داشبوردهای تحلیلی حرفه‌ای در Power BI با بارگذاری فایل خروجی خوشه‌بندی.

  • تحلیل‌های گرافیکی از الگوهای استفاده کاربران، زمان‌های پرترافیک سیستم، عملکرد فرآیندها و کشف گلوگاه‌های سازمانی.


✅ فناوری‌ها و ابزارهای کلیدی مورد استفاده:

  • زبان برنامه‌نویسی: Python (Pandas, NumPy, Scikit-Learn, HDBSCAN)

  • تحلیل آماری و خوشه‌بندی: K-Means, DBSCAN, HDBSCAN, Elbow Method

  • دیتابیس‌ها: NoSQL (Raw) → SQL (Structured)

  • پردازش داده: پارتیشن‌بندی، پیش‌پردازش، پاک‌سازی، تجمیع

  • تحلیل بصری: Power BI

  • فرمت‌های داده: JSON, CSV, SQL Tables


🎯 دستاوردهای پروژه:

  • کاهش زمان پردازش از چند ساعت به چند دقیقه با بهینه‌سازی پارتیشن‌بندی.

  • ارائه درک عمیق از رفتار کاربران و عملکرد سیستم در سطوح مختلف.

  • شناسایی گلوگاه‌های زمانی و فرآیندی در سطوح BPMN.

  • استفاده عملی از خروجی تحلیل‌ها در تصمیم‌سازی‌های سازمانی و بهبود فرآیندها.


در مجموع، این پروژه یکی از نمونه‌های برجسته در تحلیل کلان‌داده ERP در صنعت معدن و فولاد بود که با ترکیب هوشمند مهندسی داده، تحلیل آماری و مصورسازی، توانست بینش‌های ارزشمندی برای مدیران سیستم و تصمیم‌گیران ایجاد کند.