Ssas چیست؟ با خدمات تجزیه و تحلیل SQL آشنا شویم
در میان انواع فناوریهای ارائه شده توسط شرکت مایکروسافت، سرویس تجزیه و تحلیل، یکی از حوزههایی است که برای کاربران امکان دریافت خدمات هوش تجاری، تجسم داده و ابزارهای گزارش دهی را فراهم میکند. بسترهای اصلی خدمات تجزیه و تحلیل عبارتند است از:
SQL Services Analysis Services
Power BI Premium
Azure Analysis Services
در بین این موارد، نرم افزار SQL Server Analysis Services یا SSAS به عنوان یکی از ابزارهای داده کاوی و پردازش تحلیلی آنلاین (OLAP)، به خصوص برای برنامههای هوش تجاری شناخته شده است.
در این مطلب میخواهیم راجع به معماری ssas صحبت کنیم. اگر شما هم میخواهید بدانید ssas چیست و چه کاربردی دارد، تا پایان این مطلب همراه ما بمانید.
ssas چیست؟
طبق تعریف wikipedia
Ssas، یک پردازش تحلیلی آنلاین (OLAP) و ابزار داده کاوی در سرور SQL مایکروسافت است که به عنوان ابزاری برای تحلیل و درک اطلاعات احتمالی در پایگاههای اطلاعاتی متعدد یا جداول و پروندههای متفاوت، مورد استفاده قرار میگیرد.
سرور SQL، شامل یک موتور قدرتمند برای ایجاد ساختمان داده چند بعدی (Multi-Dimensional) است که برای شما امکان مرتب کردن، تجمیع و تحلیل دادهها را فراهم کرده و با عنوان SQL Server Analysis Services شناخته میشود.
ssas ، یک سرور OLAP چند بعدی و نوعی موتور آنالیز به حساب میآید که با استفاده از آن میتوانید حجم زیادی از دادهها را برش بزنید، کوچک کنید و خدمات تجزیه و تحلیل را با ابعاد مختلف دریافت کنید.
مطلب پردازش تحلیلی برخط یا OLAP را بخوانید تا به طور کامل با این سیستم و کاربرد آن آشنا شوید.
خوب است بدانید که اگر از سرویس SSAS برای ایجاد مکعب داده و انبار داده استفاده کنید، در این صورت تحلیلهای شما عمیقتر و سریعتر انجام میشوند.
نرم افزار ssas ، به کاربران در طراحی، ایجاد و مدیریت ساختارهای چند بعدی و پایگاه داده رابطهای با الگوریتمهای داده کاوی، کمک میکند. این امکانات، در نهایت سطح تصمیم گیری را برای خروجی بهتر کسب و کار، بهبود میبخشد.
میتوانید سوال ssas چیست را با بیان ویژگیهای زیر پاسخ دهید:
- امکان ایجاد مکعب داده و انبار داده برای تجزیه و تحلیل سریعتر و عمیقتر دادهها
- این سرور دارای دو حالت مختلف است: حالت بومی (Native Mode) و حالت اشتراک نقطه (Share Point Mode).
- مدلهای جدولی را در تمام سطوح تایید میکند.
- برش و تقسیم حجم زیادی از دادهها را فعال میکند.
- این سرویس دارای دو گزینه اصلی است: چند بعدی (Multidimensional) برای تجزیه و تحلیل سازمانها و جدولی (Tabular) برای تجزیه و تحلیل شخصی و گروهی
- SSAS چند بعدی، هوش تجاری سازمان به شمار میرود.
ویژگیهای اصلی ssas چیست؟
- این سیستم به ایجاد معماری MOLAP، ROLAP و HOLAP کمک میکند.
- از پارتیشن بندی و اندازه محدود به حافظه، پشتیبانی میکند.
- جستجوی مکعبها از طریق عبارات چند بعدی امکان پذیر است.
- با ویزاردها (Wizard) و طراحان مختلف به خوبی کار میکند.
- با وجود دسترسی به حقایق و مستندات، پاسخ گویی به سوالات سریعتر انجام میشود.
- این فناوری، امکان ایجاد و مدیریت سازگار مدلهای داده را فراهم میکند.
- سرویس ssas ، امکان دسترسی به سطح ردیف و امنیت پویا را با سیستم پشتیبان گیری خودکار، فراهم میکند.
- یک مدل داده کارآمد و قوی برای گزارش گیری بیشتر و کاملتر فراهم میکند.
نمای معماری ssas چیست؟
نمای معماری ssas مبتنی بر 3 لایه تشکیل دهنده آن است. این لایهها عبارتند از:
لایه RDBMS: دادههای منابع مختلف مانند اکسل، بانکهای اطلاعاتی ، متن و… را میتوانید با کمک ابزار ETL به RDBMS هدایت کنید.
لایه ssas: دادههای جمع آوری شده از RDBMS، با استفاده از خدمات تجزیه و تحلیل، به مکعبهای SSAS منتقل میشوند. خوب است بدانید که مکعبها، یک پایگاه داده تجزیه و تحلیل ایجاد میکنند. پس از آماده سازی بانک اطلاعاتی تجزیه و تحلیل، میتوانید از آنها برای رسیدن به اهداف مختلف استفاده کنید.
مشتری: مشتریان میتوانند با استفاده از امکاناتی مانند داشبوردها، امتیازات، پورتالها و… به دادهها دسترسی پیدا کنند.
اصطلاحات مهم ssas چیست؟
اصطلاحات مهم SQL Services Analysis Services عبارت است از:
منبع اطلاعات (Data Source)
منبع داده در ssas ، اتصال به انبار دادهها یا بانک اطلاعاتی است. میتوانید منبع داده را نوعی رشته اتصال در نظر بگیرید که بین بانک اطلاعاتی تجزیه و تحلیل و RDBMS ارتباط برقرار میکند. این اطلاعات، شامل ترکیبی از ارائه دهنده، نام سرور،نام بانک اطلاعاتی و اطلاعات جعل هویت است. هر پروژه ssas، باید حداقل یک منبع داده برای کار داشته باشد.
نمایش منبع داده (Data Source View)
نمای منبع داده در ssas ، مجموعهای از جداول یا نمایشها از پایگاه داده است که برای طراحی مکعب به آنها نیاز خواهیم داشت. برخی از ویژگیهای نمایش منبع داده، عبارت است از:
یک نمای منبع داده میتواند دادهها را تنها از یک منبع داده دریافت کند.
خدمات تجزیه و تحلیل به شما امکان میدهد که از یک منبع داده واحد، چندین منبع داده ایجاد کنید.
ایجاد تغییر در نمای منبع داده (مانند تغییر نام جدول، حذف چند ستون ناخواسته و…) نشان دهنده پایگاه داده زیرین نیست.
مکعب (Cube)
مکعبها، منابع داده چند بعدی دارای ابعاد و Fact هایی به عنوان KPI هستند. برای کار با آنها باید از زبان کوئری نویسی با عنوان MDX استفاده شود.
Cube ها به دو روش طراحی میشوند: Star و Snowflake. هر کدام از این روشها کاربردهای خاص خود را دارند. سادهترین و فراگیرترین حالت، معماری ستارهای یا استار است که این روش در یک سطح به بررسی دادهها میپردازد.
جدول ابعاد (Dimension Table)
اطلاعات تکمیلی و جزئیات موجود در جدول حقایق، توسط ابعاد مشخص میشود. جدول ابعاد، مجموعهای از ویژگیهای داده است. به عنوان مثال، کد استان و نام استان در کنار هم، بعد استان را تشکیل میدهد.
در ssas ، ابعاد به دو دسته Database Dimension و Cube Dimension تقسیم میشوند.
جدول واقعیت (Fact Table)
این نوع جدول در انبار داده، جدول Fact یا جدول حقایق نام دارد و مقادیر معیارها را شامل میشود. معمولا در جدول حقایق، مقادیر عددی از اطلاعات سازمانها مانند مقدار فروش، مبلغ فروش و کلیدهای خارجی (foreign key)، برای برقراری ارتباط با ابعاد وجود دارد.
طرحواره (Schema)
Schema در SQL یک Object ویژه است که میتواند سایر Object مانند جداول را در بر بگیرد. به طور کلی، اسکیما نوعی ساختار پایگاه داده است که اجزای موجود در بانک اطلاعاتی را توصیف میکند.
انواع مدلهای ssas چیست؟
مدلهای سرور SSAS به دو دسته تقسیم میشوند:
-
مدل دادههای چند بعدی
این مدل از یک مکعب داده تشکیل شده است. مدل دادههای چند بعدی، گروهی از عملیات است که به شما امکان میدهد مقدار سلولها را با استفاده از اعضای مکعب و سپس به عنوان مختصات، جستجو کنید.
قوانین این مدل، نحوه جمع آوری مقادیر اندازه گیری در سلسله مراتب یا نحوه محاسبه مقادیر خاص در یک مکعب پراکنده را تعیین میکند.
-
مدل سازی جدولی
اما مدل سازی جدولی ssas یا Ssas tabular چیست؟ مدل سازی جدولی، دادهها را در جدولهای مرتبط با آنها سازماندهی میکند. در جدولها چیزی با عنوان ابعاد یا مستندات مشخص نشده، چرا که همه جداول مرتبط قادر به ارائه هر دو نقش هستند.
مزایای سرور ssas چیست؟
حالا شما میدانید ssas چیست، همچنین اصطلاحات و ویژگیهای آن را نیز میشناسید. در این بخش میخواهیم مزایای این سرور را بررسی کنیم.
- ssas به جلوگیری از برخورد منابع کمک میکند.
- این سرور، یک ابزار کارآمد و مناسب برای تجزیه و تحلیل عددی به شمار میرود.
- به کمک ssas میتوانید از کلیه دادههای کاری خود، یک نمای کامل و یکپارچه داشته باشید.
- کمک میکند از داده های جمع آوری شده برای استخراج اطلاعات مورد نیاز، سریعتر و آسانتر استفاده کنید.
- تجزیه و تحلیل شاخصهای کلیدی عملکرد (KPI) را امکان پذیر میکند.
- سرور ssas ، میتواند پردازشهای تحلیلی آنلاین (OLAP) دادهها را از منابع مختلف ارائه دهد.
- این سرور، با ایجاد یک مجموعه امن و مطمئن، به کاربران امکان میدهد، مکعبهای تعیین شده خود را مشاهده کنند.
- به شما اجازه میدهد از ابزارهای قدرتمند و موثری مانند Power View و Performance Point استفاده کنید.
- با برش، تقسیم بندی و تحلیل اطلاعات، حرکت و انتقال آسان دادهها را امکان پذیر میکند.
- مخزن ذخیره سازی ssas ، برای بازیابی و خروجی سریعتر اطلاعات مورد نظر، به شما کمک میکند.
بهترین روش استفاده از سرور ssas چیست؟
برای به حداکثر رساندن مزایای SSAS، باید روش مناسبی برای استفاده از آن پیدا کنید. برای این منظور، لازم است اقدامات زیر را انجام دهید:
- مکعبها را بهینه سازی کرده و طراحی گروه را بررسی و اندازه گیری کنید.
- سعی کنید برای گروههای داده بزرگ، مجموعههای کارآمدی و موثری را تعریف کرده و از پارتیشن ها حداکثر استفاده را ببرید.
- MDX کارآمد و مناسب بنویسید.
- از Query Engine Cache به شکل موثر و کارآمد استفاده کنید.
- از حافظه پنهان موتور جستجو، حتما استفاده کنید.
- میزان استفاده از حافظه و پردازندهها را تنظیم کنید.
- در صورت لزوم، از ویژگی افزایش مقیاس یا مقیاس بندی استفاده کنید.
محدودیتهای استفاده از سرور ssas چیست؟
در بخش قبل با مزایای ssas و روشهای به حداکثر رساندن آنها صحبت کردیم، در این بخش میخواهیم بدانیم محدودیتها و معایب استفاده از سرور ssas چیست؟ این محدودیتها عبارتند از:
- پس از انتخاب یک مسیر (جدولی یا چند بعدی)، نمیتوانید بدون شروع مجدد به نسخه دیگر مهاجرت کنید.
- شما مجاز نیستید دادهها را بین مکعبهای جدولی و چند بعدی ادغام کنید.
- در صورتی که در اواسط پروژه الزامات و قوانین آن تغییر کنند، کنترل و سازماندهی جداول کار بسیار سختی خواهد بود.
ssas چگونه کار میکند؟
سرور ssas بر اساس دو عامل اصلی Business Intelligence Studio و SQL Server Data Tools کار میکند و عملکرد اصلی آن، مبتنی بر ساخت و مدیریت یک «مکعب»، برنامه ریزی شده است.
همان طور که پیشتر اشاره کردیم، مکعب در ssas ، یک پایگاه داده چند بعدی برای ذخیره دادهها و برنامههای OLAP است و اطلاعات را به سرعت از چندین منبع داده ارائه میدهد.
برای ایجاد مکعب SSAS، دادهها لازم است دادهها در انبار داده ذخیره شوند. انبار داده، منبعی برای ذخیره اطلاعات گسترده سازمانی از منابع مختلف داده است که از قالبهای مختلف تهیه میشوند. هدف اصلی مکعبها، افزایش زمان پرس و جو در هر RDBMS است. به خاطر داشته باشید که MDX، زبان پرس و جو است که برای مدیریت وظایف با مکعبهای OLAP، مورد استفاده قرار میگیرد.
همان طور که گفتیم، ایجاد مکعب ssas ، نیازمند به ذخیره سازی دادهها است. سپس میتوانید از SSIS برای انجام فرآیند ETL با ابزارهای مد نظرتان استفاده کنید. شما باید یک پروژه خدمات تجزیه و تحلیل جدید بسازید و سپس یک منبع داده تعریف کنید، تا بتوانید ویزارد مکعب را فراخوانی کنید.