SQL Server 2016 CTP3 újdonságok

Múlt héten a PASS Summit során az SQL Server 2016 legújabb, CTP3-as (13.0.700.242) verziója is publikussá vált. Ezt a verziót a Technet Evaluation Center oldalról lehet letölteni, illeve az MSDN előfizetők számára is elérhető. 

A CTP3 verzióhoz tartozó minta adatbázisok és scriptek a Microsoft Download Center-ből letölthetőek (nem Codeplex!).

Lássunk pár szembetűnő újítást, újdonságot ebből a verzióból a teljesség igénye nélkül!

Telepítési élmény

A telepítés során van néhány fontos és "kellemes" újdonság.
Az első ilyen a Feature Rules képernyőn található: a Status oszlopban található linkekre kattintva egy message box jött mindig fel (most is), amiből nem lehetett kimásolni az üzenetet, sem az url-t, amire esetlegesen hivatkozott. Lássuk be, hogy ez nem volt igazán felhasználó barát megoldás.
Ettől a veziótól kezdődően más működik a ctrl+c kombináció, így kimásolható pl, az alábbi üzenet is:
Ez pedig így néz ki:
---------------------------
Rule Check Result
---------------------------
Rule "Post-installation steps are required for Advanced Analytics Extensions" generated a warning.

The feature Advanced Analytics Extensions requires some post-installation steps after completing SQL Server setup. Please follow the steps outlined in the link http://go.microsoft.com/fwlink/?LinkId=626645 (Ctrl-C to copy)
---------------------------
OK   
---------------------------
Egy másik érdekes dolog is bekerült a telepítőbe: ez pedig nem más, mint az instant file inicializálás engedélyezése a Database Engine-t futtató felhasználó számára. A telepítő Server Configuration képernyőjén ezt a jogosultságot be lehet állítani a checkbox bepipálásával a Grant Perform Volume Maintenance Task privilege to... felirat mellett.

A tempdb telepítés során történő beállítása is egy újdonság. A https://support.microsoft.com/en-us/kb/2154845 oldalon leírtak alapján felajánlja ezt a konfigurációt.
 
Sajnos vannak bajok ezzel: az alapértelmezett file (adat és tranzakciós log) méret 8 MB és a GUI maximum 1024 MB-ot enged! Nem biztos, hogy ez jó megoldás, főleg, ha ismerjük a tempdb kihasználtságunkat. Alapvetően azt javaslom, hogy hagyjuk az alap, ajánlott beállításokat, majd a telepítés végén állítsunk utána.
Vannak azonban olyan beállítások is, amelyek már időszerűek voltak: innentől kezdve a 1117 és a 1118-as trace flag-ek be vannak kapcsolva alapértelmezés szerint. Ez pedig azt jelenti, hogy a tempdb adat file-ok egyszerre növekednek, illetve uniform extent-ek lesznek használva. 

Új szolgáltatások

A fenti Server Configuration képernyőn a szemfülesek észrevehettek pár új szolgáltatást:
  • SQL Server PolyBase Engine: ez a szolgáltatás felelős a lekérdezések futtatásáért a különböző adatforrásokon (nem linked server, hanem pl. Hadoop).
  • SQL Server SQL Server PolyBase Data Movement: ez a szolgáltatás szolgálja ki a kommunikáció és az adatok mozgatását a különböző adatforrások és az SQL Server között.
  • SQL Server Launchpad: ez a szolgáltatás az R integrációért felelős. Ennek a szolgáltatásnak a leállítása kikapcsolja a T-SQL támogatását  az Advanced Analytics kiegészítőnek. (Igazság szerint egy exteneded sproc tiltása is elegendő lehet, mivel R scriptet az sp_execute_external_script futtatja meg :-) )
Kicsit hiányolom, hogy ezek a szolgáltatások az SQL Server Configuration Manager-ben nem elérhetőek, bár nem is baj, hisz a hagyományos OLTP adatbázisok esetén ezek amúgy sem értelmezhetőek ;-)

JSON fejelsztések

A CTP 2-ben már volt a FOR JSON (erről már írtam itt), a CTP3-ban megjelentek az alábbi JSON támogatások is:
  • OPENJSON
  • ISJSON
  • JSON_VALUE
  • JSON_QUERY
Ezekről később írok részletesen.

T-SQL újdonság

Egy érdekes újdonsággal szolgál a CTP3: ez pedig a DROP IF EXIST. Ez annyit jelent, ha egy objektum (AGGREGATE, ASSEMBLY, COLUMN, CONSTRAINT, DATABASE, DEFAULT, FUNCTION, INDEX, PROCEDURE, ROLE, RULE, SCHEMA, SECURITY POLICY, SEQUENCE, SYNONYM, TABLE, TRIGGER, TYPE, USER, VIEW) már létezik, akkor kitörli. 
Például: feltételezzük, hogy az usp_dowork stored procedure már létezik
DROP PROCEDURE IF EXISTS usp_dowork;
GO
CREATE PROCEDURE usp_dowork 
AS
PRINT 'do something'
GO

Power BI integráció

Ez nagyon tetszik nekem, bár ki kell még tapasztalni, hogy milyen biztonsági, anyagi(!!!) és teljesítményt érintő dolgai lehetnek. Az anyagi rész azért érdekes, mert Office 365 előfizetés nélkül nem sikerült nekem beállítani. 
Lényegében ezzel a szolgáltatással az SQL Server Reporting Services felületéről egy Power BI dashboard-ra tudjuk kirakni egy riportunkat. 
Ahhoz, hogy ezt meg tudjuk tenni, a következőkre van szükség:
  • A Power BI oldalán regisztrálni kell.
  • Az SQL Server Reporting Services Configuration Manager-ben be kell lépni a Power BI felhasználóval:
  • Meg kell nyitni egy riportot, majd a menüsorban megjelenik a Pin to Power BI dashboard gomb. Ennek a megnyomásával lehet publikálni a riportot.

A fentieken kívül még elég sok újítás érkezett, ezekről a https://msdn.microsoft.com/en-us/library/bb500435.aspx oldalon vannak további információk.

Add comment