استفاده از اصطلاح
هوش تجاری برای اولین بار، دستکم به اواخر ۱۸۶۰ باز میگردد. این در حالی است که «هاوارد درسنر» برای اولین بار در سال ۱۹۸۹، این واژه را برای اعمال روشهای تحلیل داده به منظور پشتیبانی از فرایندهای تصمیمگیری تجاری مطرح کرد. عبارت هوش تجاری یا Business از دو کلمه Business به معنی کسب و کار و Intelligence به معنی هوش تشکیل شده است، یک تعریفی که از هوش وجود دارد توانایی "این همانی کردن" است. یعنی توانایی اینکه در مواجه با یک مسئله جدید با استفاده از چیزی که قبلا آموختیم راه حل خلاقانه ارائه بدهیم. همین هوشمندی در کسب و کار هم مطرح است، سازمانهای هوشمند با استفاده از تجربیات گذشته (که همان دادههای خام موجود در دیتابیسهای سازمان میباشد) راهکارهایی پیش رویشان قرار میگیرد که بتوانند برای مواجهه با مسائل جدید راه حل خلاقانه ارائه بدهند. به طور خلاصه میتوان گفت: BI مجموعه ای از راهکارها، ابزارها، تکنولوژیها و فرآیندهاست که با استفاده از تجربیات گذشته (که به صورت داده خام در سازمانها موجود است) و با تجمیع ،استخراج دانش ارزشمند از آنها و همچنین ایجاد بینش بصری، تحلیلها و دشبوردها به مدیریت کلان سازمانها و شرکتها برای مواجهه با مسائل جدید و تصمیم گیری بهتر کمک میکند. سازمانهای بزرگ و پروژه محور داری یک ساختار هرمی میباشند که راس هرم برای رسیدگی به امور کلان و اطلاع از چگونگی اوضاع اجزای زیر مجموعه نیاز به اطلاعات بهروز و تحلیلی دارند. این اطلاعات معمولا به صورت غیرمکانیزه و پردازش نشده جمعآوری شده و در اختیار مدیریت قرار میگیرد. این روش دارای اشکلات زیادی از جمله عدم صحت، به موقع نبودن و همچنین خام بودن دادهها که عاری از تحلیل و بینش بصری است. برای رفع این موانع در این سند پیاده سازی راهکار هوش تجاری تشریح داده شده است. راهکار هوش تجاری شامل مراحل زیر است:
- تعیین شاخصهای کلیدی عملکرد یا KPI های سازمان: KPI به معنای شاخص عملکرد کلیدی یک ارزش قابل اندازهگیری میباشد که نشان میدهد چگونه یک شرکت به اهداف کلیدی کسبوکار رسیده است
- شناخت دقیق منابع داده ای و استخراج اطلاعات مورد نیاز به منظور ایجاد تمامی گزارشات مورد نیاز از با بانکهای اطلاعاتی: به منظور پیاده سازی گزارشات، تحلیلها و داشب
- وردهای مورد نیاز باید تمامی منابع اطلاعاتی از قبیل بانک اطلاعاتی نرمافزار مالی، نرم افزار مدیریت پروژه، نرم افزارهای مدیریت منابع انسانی، ERP، و ... باید به طور دقیق به منظور استخراج اطلاعات مورد نیاز بررسی وشناسایی شوند. این منابع میتواند بانکهای اطلاعاتی رابطهای با هر تکنولوژی ممکن، انواع وب سرویس، API، فایل اکسل و ... باشد.
- ایجاد Data Warehouse و پیاده سازی فرآیند ETL: بعد از شناسایی منابع اطلاعاتی باید یک انباره داده (Data Warehouse) به منظور ذخیره سازی داده از منابع تعریف شده، ایجاد شود.DW یک نوع بانک اطلاعاتی است ولی به لحاظ معماری کمی متفاوت از بانکهای اطلاعاتی Operational میباشد. در DW بیشتر به دنبال خواندن دادهها توسط کار بر هستیم و بنابراین مکانیزمهایی رو پیاده سازی که بتوانیم باسرعت بالاتر در خواندن اطلاعات به کابران ارائه دهد.
مزایای پیاده سازی DW (انباره داده) به شرح زیر است:- قابلیت نگهداری تاریخچه داده ها ، در نظام BSC برای محاسبه نیاز به داده های دوره (یا دورههای) قبل دارند.
- پیاده سازی CDC و SCD برای ETL
- کاهش بار اضافی (Over Load) در سطح شبکه بواسطه تجمیع دادهها در یک مکان مشخص
- سرعت بالای اجرای Query های ارسالی از سوی کاربران بواسطه معماری متفاوت با بانکهای اطلاعاتی مرسوم
- تجمیع دادههای پراکنده و جزیرهای از سطح سازمان در یک بانک اطلاعاتی و امکان گزارش گیری سریع
- پشتیبانی از مقیاسپذیری: انباره داده بهگونهای طراحی میشود که بتواند با رشد دادههای سازمان به راحتی مقیاسپذیر شده و حجم بالای دادهها را مدیریت کند.
- سرعت بسیار بسیار بالاتر در تهیه گزراش و تحلیل دادهها در مقایسه با زمانی که وجودwarehouse ندارد. این مورد به دلیل معماری متفاوت انباره داده و Index ها و پارتیشن بندیهای صورت گرفته روی جداول و همچنین block size بالاتر در مقایسه با بانک اطلاعاتی operational میباشد.
- دادههای پاک سازی شده و Deform شده توسط فرآیند ETL و هرس شده توسط Machine Learning
بعد از طراحی انباره داده باید فرایند استخراج داده از منابع اطلاعاتی مشخص شده و پس از دگردیسی داده ها در Warehouse ذخیره گردند. به این مرحله از پروژه BI اصطلاحا ETL (Extract, Transform, Load )گویند که پیچیده ترین بخش پروژه نیز میباشد، البته پیچیدگی این مرحله به موارد زیادی از جمله میزان پاکیزگی دادهها، تنوع منابع اطلاعاتی و .. بستگی دارد.
-ایجاد تاریخچه با مکانیزم SCD(Slowly Changing Dimension) و افزودن خصیصه ماندگاری داده (Non Volatile): براساس این خصوصیت به این موضوع اشاره دارد که تغییرات داده درجداول پایه موضوعات مثل اطلاعات پروژه، مشتری و کالا و .. باید در طی زمان ثبت و نگهداری شود. به مثال زیر توجه شود: فرض شود یک جدول موضوع مکان داریم. در واقع میخواهیم میزان فروش را بر اساس شهر بسنجیم. شهر کرج تا سال 1388 جزو استان تهران بود و بعد از آن به کرج ملحق شد. در واقع تراکنش های قبل از سال 1388 شهر کرج متعلق به استان تهران است و بعد از 1388 متعلق به استان البرز می باشد. اگر ما استان شهر کرج را از تهران به البرز تغییر دهیم آنگاه تمام تراکنش های شهر کرج متعلق به استان البرز می شود که کاملا غلط است، به عنوان مثال فروش استان البرز در سال 86 را x نشان می دهد در صورتی که آن موقع استان البرز وجود نداشته است. همچنین اگر همواره کرج را جزو استان تهران در نظر بگیریم کاملا غلط است و باعث می شود که در بررسی و تحلیل عملکرد استان های البرز و تهران کاملا به بیراهه برویم. در واقع باید از مکانیزمی استفاده کنیم که این تغییرات را به گونه ای ثبت کند که ماهیت داده حفظ شود ، به عنوان مثال فروش قبل 88 شهر کرج را به استان تهران و بعد از 1388 را به استان کرج نسبت دهد. در این مورد از مکانیزمی به نام SCD استفاده میشود.
- پیاده سازی Change Data Capture یا CDC : CDC فرآیندی است که به کمک آن میتوان فقط دادههایی از یک جدول که در DW وجود ندارند را از بانک اطلاعاتی خوانده و در DW ثبت نمود.
- Data Modeling و ایجاد OLAP database
بعد از ایجاد انباره داده و تعریف فرایند ETL و زمانبندی برای اجرای فرآیند باید جداول موجود در حوزههای مختلف به صورت Multi Dimensional مدلسازی میشوند. بانک اطلاعاتی OLAP نسبت به OLTP دارای سرعت بسیار بیشتری در واکشی اطلاعات دارد. OLAP (Online Analytical Processing) یک تکنولوژی دیتابیس است که برای پشتیبانی از تحلیلهای پیچیده و تصمیمگیریهای کسبوکار در زمان واقعی استفاده میشود. OLAP با هدف تحلیل دادههای چند بعدی به کار میرود و به کاربران اجازه میدهد تا دادهها را از زوایای مختلف بررسی و تحلیل کنند. در واقع، OLAP برای اجرای پرسوجوهای تحلیلی و پردازشهای پیچیده بر روی حجم زیادی از دادهها طراحی شده است.
پس از مدل سازی دادهها ، میتوان گزارشها ، داشبوردهای تعاملی، تحلیلها و... را در این لایه ایجاد نمود. امروزه شرکتهای بزرگ نرم افزاری، ابزارهای بسیار جذاب و متنوعی را در لایه
نمایش ارائه کرده اند. این ابزارها هم برای کامپیوترها و هم برای گوشیهای موبایل در دسترس میباشد.