SQL Server 2014 CTP 2 újdonságok

Post on 22-Feb-2016

53 views 0 download

Tags:

description

SQL Server 2014 CTP 2 újdonságok. Horváth Zoltán zoltan.horvath@hug-mssql.hu Local Chapter Lead er Professional Association for SQL Server. SQL Server tömörítési technikák Sorszintű tömörítés Lapszintű tömörítés. Tartalom. SQL Server 2014 CTP2 columnstore indexek Clustered! Írható!. - PowerPoint PPT Presentation

Transcript of SQL Server 2014 CTP 2 újdonságok

SQL Server 2014CTP2 újdonságok

Horváth Zoltánzoltan.horvath@hug-mssql.huLocal Chapter LeaderProfessional Association for SQL Server

Tartalom SQL Servertömörítési technikákSorszintű tömörítésLapszintű tömörítés

SQL Server 2012 columnstore indexekMire jók?Mire nem jók?

SQL Server 2014 CTP2 columnstore indexekClustered!Írható!

SQL Server tömörítési technikák• Működési elv• Sorszintű adattömörítés• Lapszintű adattömörítés• Pro és kontra

SQL Server tömörítési technikák• Előny: alacsonyabb tárigény

‐ Tárolási költségek csökkennek‐ I/O műveletek költsége csökken‐ ETL-folyamatok gyorsulhatnak

• Hátrány: magasabb CPU-használat‐ Lekérdezési idők esetleges növekedését vizsgálni

kell‐ Nagyon magas CPU-kihasználtság mellett

mérlegelendő

Pro és kontra

SQL Server 2012 columnstore indexek• Mire jók?• Mire nem jók?

SQL Server 2012 columnstore indexekMűködési elv

SQL Server 2014 columnstore indexek• Clustered columnstore indexek• Írhatóvá váltak

DemóSQL Server tömörítési eljárások

Az SQL Server 2014 adatbázis motorját és teljesítményét érintő újdonságai SQL Server 2014 konferenciaHangyál

ZoltánPrincipal Database Engineer, SQL Server MCMLogMeIn

Tartalom Hogy működik az SQL Server, hol lehet gyorsítani?

Továbbfejlesztett funkciókQuery processing enhancementsManaged lock prioritySingle partition online index rebuildResource governor

Új fejlesztésekBuffer pool extensionIn-memory OLTP

Hogyan működik az SQL Server?

Buffer Pool

Storage Engine

Relational Engine

Protocol LayerSNI

Query Executor

Cmd Parser

Access Methods Buffer Manager

Transaction Manager

Optimizer

DTransaction Log Data Files

TDS TDS

Command

Result Set

Data Result

Query Plan

Query Tree

Get Page Cached Page

Client App

Read I/O

Hol telik el a legtöbb idő?■Query processing

enhancements■Managed lock priority■Single partition online index

rebuild■Buffer pool extension■Resource governor■In-memory OLTP

Lekérdezés végrehajtás újdonságaiÚj cardinality estimator

Jobb minőségű végrehajtási tervek jönnek létreAlapból nincs bekapcsolva, Trace Flag lehet ki-be kapcsolniCompatibility level 120 kell hozzá

Incremental statistics for partitionSQL 7.0 rowmodctrSQL 2005 colmodctrSQL 2014 particionált tábláknál particionként

Parallel SELECT INTOSokkal gyorsabb párhuzamos adatbetöltésCompatibility level 110 kell hozzá

Sys.dm_exec_query_profilesSHOWPLAN XML előfeltétel

Managed Lock Priority• Particionált tábla SWITCH-nél és Online

Index Rebuild-nél megadhatjuk, hogy mi történjen ha másik session-el konfliktus lép fel (Sch-M, S-lock)

• WAIT_AT_LOW_PRIORITY (MAX_DURATION = <time> [MINUTES]ABORT_AFTER_WAIT = {NONE | SELF | BLOCKERS})

Single Partition Online Index Rebuild• Egy partíció újraépítése miközben a tábla

folyamatosan elérhető, kivéve egy nagyon rövid ideig az újraépítés elején és végén

• Managed Lock Priority funkcionalitás elérhető a partíció online újraépítésél is

• Kevesebb CPU, memória és tárhely a teljes tábla online rebuild-hez képest

• Kevesebb tranzakciós log keletkezik

SSD Buffer Pool Extension• Mozgó alkatrész nélküli SSD diszket lehet használni a

buffer pool megtoldásához memory pressure esetén• Nincs adatvesztés, mert csak clean page-eket mozgat

erre a területre• Egyszerűen csak be kell kapcsolni, más változtatást

nem igényelALTER SERVER CONFIGURATIONSET BUFFER POOL EXTENSION ON(FILENAME = 'F:\SSDCACHE\EXAMPLE.BPE‘, SIZE =

50 GB)Módosításhoz: kikapcs, új beállítással bekapcs

Resource GovernorKülönböző terhelések erőforrás felhasználásának súlyozása

Resource poolSQL 2008 MIN, MAX MEMORY_PERCENTSQL 2008/2012 MIN, MAX, CAP CPU_PERCENT,

AFFINITYSQL 2014 MIN, MAX IOPS_PER_VOLUME

Workload groupClassification

• MAX_OUTSTANDING_IO_PER_VOLUMEDMV-k és performance counterek tartalmazzák az IO statisztikákatGarantálhatóbb teljesítmény

In-Memory OLTP

Buffer Pool

Storage Engine

Relational Engine

Protocol LayerSNI

Query Executor

Cmd Parser

Access Methods Buffer Manager

Transaction Manager

Optimizer

DTransaction Log Data Files

TDS TDS

CommandResult Set

Data Result

Query Plan

Query Tree

Get Page Cached Page

Client App

Read I/O

Memory Optimized Tables & Indexes

Native Compiler

Natively Compiled SPs and Schemas

Memory Optimized Data Filegroup

Query Interop

In-Memory OLTP• SQL Server-be integrált új szolgáltatás• Az adatok végig a memóriban vannak tárolva, nem kell

IO-ra várni• Nem 8KB-os lapokon tárolja az adatokat, nincs latch

probléma• Optimista többverziós konkurenciakezelés, lock nélkül

dolgozik• Az indexek csak a memóriában léteznek• HASH index• Új fogalom az adatok tartóssága• Natív kódra fordított tárolt eljárások a nagyobb

teljesítményért

A tárolás egysége a sor• Begin Timestamp – insert time• End Timestamp – delete time, a végtelen jelenti az aktuális verziót• StatementID – a létrehozó utasítás azonosítója• Index mutatók tömbje• A kulcs oszlop(ok) és a többi oszlop

• A táblához tartozó sorokat az index fogja össze, ezért mindig kell egy index

• Nincs clustered index• A módosítások egy törlés-beszúrás párossal jönnek létre a háttérben

Memória optimalizált táblák• Interpreted T-SQL (InterOP)• Memória- és diszk-alapú táblák • Nem tud kihasználni minden

gyorsítási lehetőséget• A teljes T-SQL funkcionalitás

elérhető• Mikor használjuk• Ad hoc lekérdezéseknél• Reporting típusú

lekérdezéseknél• Migráció felgyorsítására• Latch Contention probléma

elkerülésére

• Natív fordítású eljárás• Csak memória alapú táblák• Maximum teljesítmény• Nem minden T-SQL

• Mikor használjuk• OLTP• Teljesítménykritikus esetekben

DemóIn-Memory OLTP

Függelék