نقد و بررسی: SQL Server 2016 و کمک آن به سرعت

۲۰۱۶ SQL Server، با پایگاه دادهی Azure، query های در برابر Hadoop، R داخلی ، امنیت بهتر و عملکرد بالاتری دارد. مایکروسافت ۲۰۱۶ SQL Server را” بزرگترین جهش روبهجلو” در تکامل ۲۷ سالهی پایگاه داده SQL سرور مینامد. همانطور که مشاهده میکنیم، ۲۰۱۶ SQL Server ، تعدادی قابلیتهای جدید و جذاب، ازجمله تجزیهوتحلیل داخلی R، صحهگذاری اطلاعات Hadoop خارجی و پایگاه دادههای Azure و مدیریت تمیز و ویژگیهایی در امنیت داده را ارائه میدهد.
علاوه بر این، ۲۰۱۶ SQL Server ، حافظهی داخلی موتور OTLP، حافظه داخلی columnstore و یکپارچگی ابری Azure را بهبود بخشیده است. همچنین یک آپگرید برای سرورهای SQL موجود نیز عرضهشده است. اینکه آیا تمام این پیشرفتها برای اغوا کردن کاربران برای مهاجرت به SQL Server کافی است یک سؤال بسیار متفاوت است.
راهاندازی و آپگرید
راهاندازی ۲۰۱۶ SQL Server بهصورت محلی نیاز به مقداری برنامهریزی، به همراه یک ویندوز ۸ آپدیت شده، ویندوز ۱۰ یا ویندوز سرور ۲۰۱۲، دارد. حتی نسخهی کامل موجود از ویندوز ۱۰، نیاز به نصب و راهاندازی آپدیت رانتایم Visual Studio قبل از نصب ۲۰۱۶ SQL Server ، دارد و اگر شما میخواهید از PolyBase استفاده کنید، شما باید Oracle Java7 یا بالاتر را نصب کنید. ورژن لینوکس ۲۰۱۶ SQL Server ، در حال حاضر در مرحله پیش بررسی خصوصی است.
مشتریان اصلی ۲۰۱۶ SQL Server ، کسانی اند که در حال حاضر ورژن ۲۰۱۴ رادارند، و خواهان استفاده از امکانات جدید و پیشرفتهای عملکردی، امنیتی و غیره هستند.اگر شما یکی از این مشتریان هستید، میتوانید ۲۰۱۶ SQL Server را بهصورت اولیه بر روی دیتا بیس توسعه نصب کنید. توصیهی مایکروسافت این است که بدون تغییر سطح همگامسازی دیتا بیس آغاز بکار کنید و بعد آن را تا ۱۳۰ افزایش دهید و تولیدات را بررسی و صحهگذاری کنید. اگر مجبور به تنظیم رگرسیونها شدید، میتوانید سطح همگامسازی را موقتاً کاهش دهید.
بهبودهای عملکردی
مایکروسافت ادعاهای زیادی برای بهبودهای عملکردی ۲۰۱۶ SQL Server میکند. در سطح بالا، ۲ بالاترین امتیاز برای قیمت\عملکرد TPC-E (OLTP)، با ۴۴ هسته، یکی با سرور فوجیتسو و یکی با سرور لنوو را مدعی میشود. علاوه بر این، مدعی بالاترین امتیاز در تحلیل TPC-E (OLTP) هم در عملکرد، هم قیمت\عملکرد در حجمهای ۳۰ ترابایت و ۱ ترابایت، نیز میباشد.
TPC-H انواع مختلف بیشتری از فروشندگان را تعمیم میدهد؛ چیزی که من با مشاهدهی لیست TPC-H متوجه آن نمیشوم این است که مایکروسافت چگونه ادعای پیروزی در ۳۰ ترابایت و ۱ ترابایت میکند، درحالیکه ۲۰۱۶ SQL Server ، بهطور کامل توسط EXACluster OS 5.0 ی خوشهبندیشده، در هر دو مورد، از صحنه خارج میشود.شاید منظور مایکروسافت محدود کردن ادعاها به نتایج غیر خوشهبندیشده بوده است که ذکر این موضوع را از قلم انداخته است.
بنابراین من در مورد نتایج TPC تحت تأثیر قرار نگرفتهام. مایکروسافت در مورد بهبود سرعت ۲۰۱۶ SQL Server در برابر نسخه ۲۰۱۴ نیز ادعاهای زیادی دارد؛ بعضی از آنها بسیار تخصصیاند مانند “۱۹ برابر سرعت بیشتر در عملکردهای محلی Spatial” و بعضی دیگر معمولیترند مانند ” query های Tableau 190 درصد سریعتر”.
سؤالهای مهم دربارهی عملکرد ۲۰۱۶ SQL Server ، بر عهدهی کاربران نسخهی ۲۰۱۴ است تا ببیند آیا دیتا بیسشان در ۲۰۱۶ SQL Server ، سریعتر بارگذاری میشود یا خیر. معیارهای مایکروسافت ممکن است تا حدی معقول باشند، اما آنها بسیار کمتر نسبت نتایج خودتان و عملکرد پایگاه دادههایتان منطقیاند.
محدودهی دیگری که در آن می بهبود عملکردی بالقوه را مشاهده کرد، افزایش حافظه (۱۲ ترابایت) و تعداد هستههای موجود برای اجراشدن در ویندوز سرور ۲۰۱۶ است.
علاوه برافزایش در ماکسیمم RAM، حافظهی داخلی OLTP نیز نسبت زمان معرفیاش در ۲۰۱۴، پیشرفت کرده است. مایکروسافت ادعا میکنید که موتور آن را با گردآوری T-SQL به کدهای محلی، بازنویسی کرده است.
بهبودهای امنیتی
امنیت دادهها از همیشه مهمتر شده است. یکی از بزرگترین پیشرفتهای امنیتی در ۲۰۱۶ SQL Server ، Always Encrypted نام دارد.نحوهی عمل به این صورت است: اطلاعات حساس درون پایگاه دادهها در سطح ستونی رمزگذاری میشوند، و اطاعات رمزگذاری نشده بیرون منطقهی امن دیده نمیشوند.
۲۰۱۶ SQL Server، دو روش پیادهسازی رمزگذاری دارد: تصادفی و اندازهگیری شده. نوع تصادفی امنتر است اما نوع اندازهگیری شده اجازهی مقایسهی برابری در مکان، تمایز، گروهبندی و غیره را میدهد.
مسئلهی بااهمیت دیگر دربارهی امنیت ۲۰۱۶ SQL Server ماسک گذاری اطلاعات بهصورت دینامیک است. این مسئله از ستونهای حساس هنگام جستوجو محافظت میکند.
تحلیلگران عملیاتی
بهصورت اورجینال، پایگاه دادههای سرور OLTP و سرور دیتا بیس تحلیلکننده بهصورت مجزا قرار داشتند و یک پروسه ETL بهصورت دورهای اطلاعات جدید را از سرور OLTP استخراج کرده و مکعبهای OLAP را از سرور تحلیلگر پدیت میکند. این فرایند هزینهبر بوده و همچنین باعث دیرکرد در انتقال اطلاعات میشد.
عملیات تحلیل در لحظهی جدید در ۲۰۱۶ SQL Server از یک columnstore غیر خوشهای زنده که بهصورت مستقیم اطلاعات دیتابیس OLTP را آپدیت میکند. پروسه بهصورت یک فعالیت در پسزمینه ادامه مییابد و ردیفهایی از این پروسه تا شمار ۱ میلیون به انجام این بروز رسانی فعالیت دارند.
سرویسهای R داخلی
زبان برنامهنویسی R، به همراه پایتون، یکی از زبانهای موردعلاقهی دانشمندان حوزهی اطلاعات میباشد. یک مشکل بزرگ هنگام اجرای زبان R، رگرسیون در برابر مقادیر زیاد اطلاعات نسبت زمان است. اصولاً، مهندسان این مشکل را با کشیدن یک نمونهی تصادفی به درون سرور R برای توسعه و آزمایش حل کردهاند، و بدینصورت از کدهای R صرفاً در مرحلهی نهایی بر روی نسخهی کامل اطلاعات استفاده میکنند.
در ۲۰۱۶ SQL Server ، سرویسهای موازی شده R با عملکرد بالا، درون پایگاه دادهها ساختهشدهاند و توانایی برهمکنش با ساختارهای T-SQL رادارند که، بهجای انتقال اطلاعات به آنالیز، باعث آوردن آنالیزها به اطلاعات میشود. این مسئله نهتنها باعث افزایش سرعت میشود، بلکه، بسیار قابلیت اندازهگیری بالاتری نیز دارد.
ابر هیبریدی و اطلاعات بزرگ
مایکروسافت علاقهی زیادی به صحبت کردن راجع به ویژگیهای “hyperscale” که با ترکیب ۲۰۱۶ SQL Server و ابر Azure به دست میآورد، دارد. بهترین این ویژگیها، پایگاه دادههای کاذب است. شما یک لینک بین اطلاعات خود در محل و دیتابیس SQL Azure با فعال کردن “ریموت آرشیو دیتا”، در ۲۰۱۶ SQL Server ، میسازید که این امر اجازهی فعالیت در سرور SQL را به ادمین Azure میدهد.
سپس شما انتقال را مدیریت میکنید؛ درواقع شما توانایی اینکه تعیین کنید چه اطلاعاتی، از طریق این دیتابیس کاذب تغییر کنند و انتقال یابند.
ویژگی دیگری که در این دسته قرار میگیرد، نسخههای دوم از پایگاه دادهها و بک آپ های بهبودیافته بر روی Azure است. شما همچنین توانایی انتقال اطلاعات از SQL Server به SQL Azure، را بهطور کامل و اتوماتیک دارد.
آیا شرکت شما به این ویژگیهای ۲۰۱۶ SQL Server احتیاج دارد؟ اگر شما یک ورژن قدیمیتر از SQL سرور رادارید، برای شما آزمایش این نسخه جدید با راهاندازی یک نسخهی تست چه بهصورت لوکال چه به بر روی Azure، مقدور است که بدینصورت شما میتوانید دیتا بیس خود را بر روی آن بارگذاری کرده و اپلیکیشن هایتان را آزمایش کنید. با این راهکار شما خواهید دانست که آیا نسخهی جدید این نرمافزار مناسب شما هست یا خیر.
به همین صورت اگر شما، از کاربران دیتابیس اوراکل هستید، مایکروسافت تمایل اهدای لایسنس های موردنیاز برای انتقال اطلاعات به ۲۰۱۶ SQL Server به شمارا دارد. مایکروسافت حدود ۹۰ درصد پروسهی انتقال اطلاعات از سرور اوراکل به SQL، را اتوماتیک انجام میدهد. اگر این پروسهی انتقال اطلاعات از سرور اوراکل جز برنامهی شماست، اکنون یکی از بهترین موقعیتها برای انجام این انتقال است.