ويژگيهاي جديد SQL Server 2012
مدتي از انتشار نسخه 2012 ه SQL Server با كد نام Denali ميگذره در اين پست قصد دارم چنديدن ويژگي جديد اين نسخه رو معرفي كنم.ضمنا دريافت اين نسخه و تبديل اون به نسخه نهايي رو از اين پست ميتونيد پيگيري كنيد.
AlwaysOn : يكي از مهمترين ويژگيها در SQL Server 2012 در بحث High Availability يا در دسترس بودن هست و در واقع تكميل كننده Database Mirroring در نسخه هاي قبلي ميباشد.در Mirroring ما به صورت تك تك ديتابيس هامون رو ميرور ميكنيم ولي در AlwaysOn اينكار به صورت گروهي انجام ميشه يعني چندين ديتابيس و همچنيا ميتونيم دو روش همزمان (Synchronous) و غير همزمان (Asynchronous) رو با هم تركيب كنيم.بر خلاف ميرورينگ ديتابيس ما به صورت فقط خواندني قابل كوئري گرفتنه و حتي بكاپ گرفتن.
نكته:در نسخه هاي قبلي با گرفتن Snapshot از ديتابيس Mirror ميتوان به صورت فقط خواندني از ديتابيس استفاده كرد و…
پشتيباني از Windows Server Core : يادمه دوره كارداني استاد شبكه اي داشتيم كه لينوكس رو بهمون به صورت Command ي درس ميداد كلي از دستش شاكي بوديم كه چرا GUI نه ...
نسخه 2012 ي SQL Server قابل نصب روي Windows Server Core هست يعني شما نسخه اي از SQL Server رو نصب ميكنيد كه هيچ GUI ي نداره و ارتباط شما از طريق Command Prompt و Powershell انجام ميشه.در واقع اين كار براي نرم افزارهاي كه به صورت back-end خدمات ميدن استفاده ميشه و در نتيحه سرعت و امنيت و عدم نياز به Patch كردن رو براي ما فراهم ميكنه.
Power View : يك ابزار گزارش گيري تعاملي تحت وب كه با Silverlight نوشته شده (با كد نام Crescent) هست كه به كاربران كه معمولا آناليزورهاي ديتا هستن امكان گزارش گيري هاي ad hoc رو ميده.
نكته : براي كار با Power View نياز به SharePoint Server 2010 هست.
SQL Server Data Tools : يك محيط يكپارچه توسعه داخل Visual Studio هست كه به شما امكان طراحي ديتابيس رو ميده.از قابليت هاي جالب اين محيط ميشه به قابليت IntelliSense و ديباگ كردن اشاره كرد.SQL Server Data Tools ميتونه به SQL Server 2005 به بعد وصل بشه.
Columnstore Indexes : يكي از ويزگي هاي منحصر به فرد SQL Server هست كه ديتا ها رو بجاي ذخيره به صورت سطري و در يك Page كه روش سنتي هست; مياد ستون هاي رو كه در يك ايندكس هستند رو به صورت ستوني و در چند Page ذخيره ميكنه.سوالي كه پيش مياد اينه كه خب اين كار چه سودي داره؟
- سرعت بالا هنگام كوئري زدن با توجه به اينكه فقط ستون هاي كه در كوئري اومدن لود ميشن
- فشردگي بيشتر با توجه به احتمال تكراري بودن ديتا امكان فشردگي بر اساس الگوريتم هاي موجود بيشتر ميشود.
نكته : با اين نوع ايندكس جدول فقط خواندني ميشود بنابراين مناسب براي OLTP نيست و در واقع براي Data Warehouse ها طراحي شده.


Contained Databases : با اين روش ما ميتونيم يك ديتابيس جامع و يه جورايي Stand Alone داشته باشيم.يعني ما ميتونيم يك ديتابيس روي سرور A بسازيم بعد همين ديتابيس رو ببريم روي سرور B استفاده كنيم بودن هيچ كار اضافه اي.سوالي كه پيش مياد اينه كه پس User هاي اون ديتابيس چي ميشن؟
زيبايي كار همينه و در واقع از اسم اين نوع ديتابيس هم مشخصه «Contained» يعني User ما داخل ديتابيس هست و در سرور B فقط و فقط به اين ديتابيس دسترسي داره.
پيشرفت در T-SQL : پشتيباني از دنباله اعداد , عملگر TRY_CONVERT كانورت و تبديل كردن ديتاها , استفاده از Syntax ه OFFSET و FETCH براي صفحه صفحه كردن ديتا يا Data Paging , تابع جديد FORMAT براي راحت كردن قالب بندي ديتاي خروجي , عملگر THROW براي انجام بهينه تره رسيدگي به خطا (Exception Handaling) و…
User-Defined Server Roles : در سطح سرور ما تعداد محدودي Role داريم فرض كنيد بعنوان DBA ميخوايم به تيم Develop شركت دسترسي read/write به تمام ديتابيس ها بديم متاسفانه چنين Role ي در سطح سرور نداريم و بايد به ازاي تك تك ديتابيس ها اين دسترسي رو بديم.SQL Server 2012 اين مشكل رو براي ما حل كرده.
Data Quality Services : ابزاري هست براي برسي كيفيت و تصحيح كردن ديتاهاي غلط بر اساس اطلاعات و دانشي كه ما بهش ميديم در واقع اين سروريس knowledge-based هست.براي مثال فرض كنيد فيلدي بنام جنسيت داريم كه داخلش هم M هست هم Male و حتي عدد يك.متخصص داده در سازمان تعيين ميكنه مقدار اين فيلد بايد Male باشه كه در واقع ميشه knowledge اين سرويس و بر اساس اون اين سرويس ديتا رو تصحيح ميكنه.
Distributed Replay : يه اصطلاحي در دنياي كامپيوتر هست بنام زير بار گذاشتن يا بار كشيدن مثلا براي تست CPU ميايم يه پردازش سنگين رو اجرا ميكنيم تا ببينم CPU زير اين بار جواب ميده.حالا فرض كنيد همين كارو بخواهيم براي SQL Server انجام بديم.براي مثال ميخواهيم باركاري (Workload) سيستم جاري (درحال استفاده) رو روي سرور جديد خريداري شده تست كنيم.براي اين كار باركاري رو از سرور جاري دريافت (Capture) و در سرور جديد و مثلا از طريق چند Client (قابل كانفيگ) مجددا اجر (Replay) ميكنيم.
دست شما درد نکنه ...
پاسخحذفسلام و خسته نباشید
پاسخحذففکر کنم برخی از این ویژگی ها را 2008 داشته باشه
دقیق متوجه نشدم چه چیزایی داخل 2012 اضافه شده
ولی ممنون خیلی خوب بود
اگه هم وجود داره به صورت رسمي ساپورت نميشه.
پاسخحذفمثلا ميتونيم SQL Server 2008 رو روي Server Core 2008 R2 نصب كنيم ولي اينكار به صورت رسمي ساپورت نميشه!
بسیار خوب
پاسخحذف