پایگاه دادههای پردازش تحلیلی آنلاین، درخواستهای چند بعدی رایج در برنامههای کاربردی هوش تجاری را سرعت میبخشند.
پایگاههای اطلاعاتی پردازش تحلیلی آنلاین (OLAP) برای رسیدگی به پرسشهای تحلیلی بهطور هدفمند ساخته شدهاند. پرس و جوهای تحلیلی که بر روی پایگاههای داده پردازش تراکنش آنلاین (OLTP) اجرا میشوند، اغلب زمان زیادی طول میکشد تا پاسخها را برگردانند. دلایل مختلفی برای این وجود دارد.
اول، پایگاههای داده OLTP معمولاً به شکل سوم عادی هستند، به طوری که پرسوجوهای تحلیلی باید عملیات پیچیده JOIN را روی بسیاری از جداول انجام دهند که میتواند از نظر محاسباتی گران باشد. دوم، پایگاههای اطلاعاتی OLTP برای بهینهسازی سرعت نوشتن، شاخصهای نسبتا کمی دارند، در حالی که پرسوجوهای تحلیلی سنگین اغلب از نمایههای اضافی بهره میبرند. سوم، پایگاههای داده OLTP تمایل دارند دائماً با تراکنشهای کوچک مشغول باشند، که میتواند باعث ایجاد مشاجره (بیشتر برای نمایهها) در حین اجرا شدن پرسوجوهای تحلیلی طولانی شود و سرعت تراکنشها و پرس و جوها را کند کند.
پایگاه های داده OLAP با ارائه یک پایگاه داده مجزا و بهینه برای پرس و جوهای تحلیلی، این مسائل را حل می کنند. راه های مختلفی برای بهینه سازی پایگاه های داده برای تجزیه و تحلیل وجود دارد، همانطور که در مورد آن بحث خواهیم کرد.
OLAP توضیح داده شد
پایگاههای اطلاعاتی OLAP برای سرعت بخشیدن به تجزیه و تحلیل چند بعدی بر روی حجم زیادی از دادهها از انبار داده یا بازار داده طراحی شدهاند. تجزیه و تحلیل با سرعت بالا را می توان با استخراج داده های رابطه ای در قالبی چند بعدی به نام مکعب OLAP انجام داد. با بارگذاری داده های مورد تجزیه و تحلیل در حافظه؛ با ذخیره داده ها به ترتیب ستونی؛ و/یا با استفاده از بسیاری از CPU ها به صورت موازی (به عنوان مثال، پردازش موازی انبوه، یا MPP) برای انجام تجزیه و تحلیل.
ETL و ELT
یک مانع برای پیاده سازی OLAP ایجاد فرآیندی برای خروج داده ها از پایگاه داده تراکنش ها و به پایگاه داده تجزیه و تحلیل است. این یک کار دستهای شبانه برای استخراج، تبدیل، و بارگذاری (ETL) دادهها بود. با بهبود سختافزار و نرمافزار، کارهای دستهای ETL اغلب با جریانهای داده پیوسته جایگزین میشوند و گاهی اوقات مرحله تبدیل به پایان فرآیند، پس از بارگذاری (ELT) به تعویق میافتد. ELT به منظور پشتیبانی از مهندسی ویژگی برای یادگیری ماشینی که در مقابل پایگاه داده تجزیه و تحلیل اجرا می شود، رایج تر می شود.
ذخیره سازی ستونی
پایگاههای اطلاعاتی معاملاتی ردیفهای جدول را با هم ذخیره میکنند، که زمانی منطقی است که شما دائماً به کل ردیفها دسترسی داشته باشید. پایگاههای داده OLAP معمولاً ستونهای جدول را با هم ذخیره میکنند، که زمانی منطقی است که شما تمایل دارید مقادیر فیلد را جمع آوری کنید. علاوه بر این، پایگاه های داده OLAP اغلب سعی می کنند برای سرعت، ستون های فعال را در حافظه نگه دارند. مزیت دیگر ذخیره سازی ستونی این است که ستون های داده های مشابه به خوبی فشرده می شوند.
مکعب OLAP چیست؟
مکعبهای OLAP یا هایپرمکعب روشی برای سازماندهی دادهها با ابعاد سلسله مراتبی هستند تا تجزیه و تحلیل سریع، بدون تعداد زیادی SQL JOIN و UNIONS انجام شود. مکعب های OLAP سیستم های هوش تجاری (BI) را متحول کردند. قبل از مکعبهای OLAP، تحلیلگران کسبوکار در پایان روز سؤالات خود را ارسال میکردند و سپس به خانه میرفتند، به این امید که روز بعد پاسخهایی دریافت کنند. پس از مکعبهای OLAP، مهندسان داده کارها را برای ایجاد مکعبها در طول شب اجرا میکنند تا تحلیلگران بتوانند در صبح پرسوجوهای تعاملی را علیه آنها اجرا کنند.
مکعبهای OLAP از پنج نوع عملیات «برش و تاس» پشتیبانی میکنند. برش به معنای استخراج یک مکعب با ابعاد پایین تر با یک بعد تنظیم شده روی یک مقدار است، برای مثال MONTH=6. Dicing به معنای استخراج یک مکعب فرعی با چندین ابعاد تنظیم شده روی مقادیر منفرد است، برای مثال STORE=95 AND MONTH=6. حفاری پایین و حفاری به تحلیلگر اجازه می دهد تا از مشاهده خلاصه ها (بالا) به مقادیر دقیق (پایین) حرکت کند. جمع آوری داده ها را در یک بعد خلاصه یا جمع می کند. Pivot یک مکعب را میچرخاند تا چشمانداز دیگری از دادهها ببیند. چرخش مکعب OLAP بسیار کارآمدتر از چرخش در یک صفحه گسترده است. زبان پرس و جو MDX، یک تغییر در SQL، برای پرس و جو از مکعب های OLAP استفاده می شود.
مکعبهای OLAP تا حد زیادی در سالهای اخیر با انبارهای دادهای که از ذخیرهسازی ستونی فشرده (ترجیحاً در حافظه) و MPP استفاده میکنند، جایگزین شدهاند.
MOLAP چیست؟
پردازش تحلیلی آنلاین چند بعدی (MOLAP) شکل کلاسیک OLAP است که از مکعب های OLAP چند بعدی استفاده می کند. در حالی که MOLAP منجر به تجزیه و تحلیل بسیار سریع می شود، پیش پردازش مکعب های OLAP می تواند بسیار وقت گیر باشد. MOLAP زمانی کارآمدتر است که حقایق (فیلدهای داده) عددی باشند و بتوان آنها را جمع کرد.
ROLAP چیست؟
OLAP رابطهای (ROLAP) مستقیماً با پایگاههای داده رابطهای کار میکند و نیازی به ایجاد مکعبهای OLAP ندارد. معمولاً پایگاه داده تحلیلی برای ROLAP از پایگاه داده OLTP جدا است و یک فرآیند ETL یا ELT انبار داده یا بازار داده را از پایگاه داده OLTP به صورت دوره ای به روز می کند و جداول انبوه را به عنوان بخشی از فرآیند ایجاد می کند. برای کارایی، فرآیند ETL یا ELT معمولاً با دادههای افزایشی کار میکند نه اینکه انبار داده را از ابتدا ایجاد کند.
به جای پرس و جوهای MDX، تحلیلگران یک پایگاه داده ROLAP را با SQL مورد بازجویی قرار می دهند که اغلب به شدت به اپراتورهای تحلیل جدیدتر متکی هستند. بند GROUP BY توسط یک ستون مشخص جمع می شود. عملگر ROLLUP GROUP BY را به چندین ستون گسترش میدهد و اساساً جمعهای فرعی و کل کل را محاسبه میکند. عملگر CUBE جمع های فرعی و کل کل را برای همه جایگشت های ستون های مشخص شده محاسبه می کند.
HOLAP چیست؟
پردازش تحلیلی آنلاین ترکیبی (HOLAP) ترکیبی از ROLAP و MOLAP است. HOLAP اجازه می دهد بخشی از داده ها را در یک فروشگاه MOLAP و بخشی دیگر از داده ها را در یک فروشگاه ROLAP ذخیره کنید. به طور معمول، یک کش برای انبوه ها از هر دو مکعب و پایگاه داده رابطه ای وجود دارد. Microsoft Analysis Services و SAP BI Accelerator HOLAP را پیاده سازی می کنند.
همانطور که بحث کردیم، پایگاههای داده تحلیلی اختصاصی میتوانند پرسوجوها را برای هوش تجاری سرعت بخشند. در حالی که مکعبهای OLAP برای دههها بر این حوزه تسلط داشتند، امروزه برای شرکتها رایجتر است که انبارهای دادهای را نگهداری کنند که از پایگاههای داده رابطهای با ذخیرهسازی ستونی فشرده و پردازش موازی عظیم استفاده میکنند.
پست های مرتبط
OLAP چیست؟ پایگاه های اطلاعاتی تحلیلی
OLAP چیست؟ پایگاه های اطلاعاتی تحلیلی
OLAP چیست؟ پایگاه های اطلاعاتی تحلیلی