بلاگ

اس کیو ال سرور چیست؟

1399/07/26اس کیو ال سرور
اس کیو ال سرور یک سیستم مدیریت دیتابیس است که بر اساس مدل رابطه ای کار می کند. که توسط شرکت مایکروسافت ساخته و ارائه شده است.

مشابه دیگر نرم افزارهای RDBMS ، اس کیو ال سرور بر اساس SQL ساخته شده است. اس کیو ال یک زبان استاندارد برنامه نویسی است که با دیتابیس های رابطه ای کار می کند. 

اس کیو ال خیلی وابسته به T-SQL است. زبان برنامه نویسی اس کیو ال که مایکروسافت توسعه داده است. 

اس کیو ال سرور مدت 20 سال بود که فقط بر روی ویندوز نصب و اجرا می شد. اما در سال 2016 مایکروسافت کاری کرد که اس کیو ال سرور را بتوان در محیط لینوکس هم اجرا کرد. اس کیو ال سرور 2017 به بعد هم می تواند بر روی ویندوز نصب و اجرا شود و هم بر روی لینوکس .

 

معماری و ساختار اس کیو ال سرور

نمودار زیر ساختار اس کیو ال سرور را نشان می دهد:

ساختار اس کیو ال سرور

اس کیو ال سرور دارای دو کامپوننت اصلی است :

  1. Database Engine (دیتابیس انجین یا همون موتور بانک اطلاعاتی)
  2. SQLOS 

 

موتور بانک اطلاعاتی (Database Engine)

کامپوننت اصلی (هسته اصلی) اس کیو ال سرور موتور بانک اطلاعاتی است. این موتور شامل دو موتور است: موتور رابطه ای (relational engine) که کوئری ها را اجرا می کند و موتور ذخیره سازی (storage engine) که فایل های دیتابیس و ایندکس ها و پیج ها را مدیریت می کند. سایر اشیای بانک اطلاعاتی مانند Stored Procedure و تریگر و فانکشن و ... هم توسط دیتابیس انجین ساخته و مدیریت می شوند.

 

موتور رابطه ای (Relational Engine)

موتور رابطه ای شامل کامپوننت هایی است که تعیین می کند بهترین روش اجرای کوئری چیست؟ یکی دیگر از نامهای موتور رابطه ای پردازشگر کوئری است (query processor)

موتور رابطه ای اطلاعات را بر اساس کوئری کاربر از موتور ذخیره سازی درخواست می کند و پس از تحویل گرفتن آن اطلاعات آنها را پردازش می کند.

مثلا فرض کنید ما یک کوئری می نویسیم که لیست کتاب های یک کتابخانه را از اس کیو ال سرور بگیریم. مدل رابطه ای آنرا اصطلاحا بهینه می کند و سپس بر اساس آن کوئری اطلاعات کتابها را از موتور ذخیره سازی دریافت می کند و در نهایت آنها را به ما تحویل می دهد.

برخی از وظایف موتور رابطه ای عبارتست از : پردازش کوئری ، مدیریت حافظه ، مدیریت ترد (thread) و تسک (task) ، مدیریت بافر (buffer) و پردازش کوئری های توزیع شده (distributed)

 

موتور ذخیره سازی (Storage Engine)

وظیفه موتور ذخیره سازی همانطور که از نامش پیداست ذخیره اطلاعات روی هارد دیسک و بازیابی آن (خواندن آن) از روی هارد دیسک است. 

 

SQLOS (اس کیو ال او اس)

در زیر موتور رابطه ای و موتور ذخیره سازی ، SQL Server Operation System وجود دارد. SQLOS خدمات زیادی را ارائه می دهد از جمله : مدیریت حافظه و مدیریت IO (ورودی و خروجی) ، مدیریت خطاها و هماهنگ کردن سرویس ها 

متن انگلیسی این قسمت برای فهم بهتر مطلب در این قسمت آورده می شود :

Under the relational engine and storage engine is the SQL Server Operating System or SQLOS.

SQLOS provides many operating system services such as memory and I/O management. Other services include exception handling and synchronization services.

 

سرویس ها و ابزارهای اس کیو ال سرور (SQL Server Services and Tools)

مایکروسافت ابزارها و سرویس های "مدیریت دیتا" و "هوشمندی کسب و کار BI" را در اس کیو ال سرور در کنار هم قرار داده است. 

برای مدیریت دیتا سرویس های Integration Services (SSIS) و SQL Server Data Quality Services و SQL Server Master Data Services را در اس کیو ال سرور قرار داده است.

برای ایجاد دیتابیس ابزارهای SQL Server Data و برای مدیریت و مونیتور کردن دیتابیس های اس کیو ال سرور ابزار منیجمنت استودیو را ارائه کرده است.

برای تحلیل داده ها در اس کیو ال سرور مایکروسافت ابزار SQL Server Analysis Services (SSAS) را ارائه داده است.

سرویس ریپورتینگ (Reporting Service) برای ساخت گزارشات و نمودار مورد استفاده قرار می گیرد و تکنولوژی Machine Learning Services که قبلا در اس کیو ال 2016 R نامیده می شد را ارائه کرده است.

 

نسخه های اس کیو ال سرور

اس کیو ال سرور دارای 4 نسخه است. دو نسخه از این 4 نسخه رایگان است.

SQL Server Developer : این نسخه از اس کیو ال سرور مخصوص برنامه نویسان است که کاملا رایگان است.

SQL Server Expression : این نسخه برای دیتابیس های کوچک که زیر 10 گیگا بایت حجم دارند.

SQL Server Enterprise : این نسخه کاملترین نسخه اس کیو ال سرور است که تمام قابلیتهای اس کیو ال سرور را دارد و برای دیتابیس های بزرگ مورد استفاده می گیرد.

SQL Server Standard : این نسخه برخی از امکانات نسخه حرفه ای را دارد و محدودیت هایی در استفاده از تعداد هسته های سی پی یو و حافظه رم دارد.

 

 

در این سایت شما مطالب زیادی را در مورد اس کیو ال سرور شامل ساختار و معماری اس کیو ال سرور و سرویس ها و ابزارهای آن یاد خواهید گرفت.

 

 

 

منبع : What is SQL Server