Top Banner
29

{Teljesítménym onitoro zás és hango lás} a z S QL Server 2008-ban

Jan 01, 2016

Download

Documents

{Teljesítménym onitoro zás és hango lás} a z S QL Server 2008-ban. Bitemo Erik Gergely [email protected] Senior Database Administrator Walt Disney Internet Group. { Menetrend }. Monitorozás Általános bevezető Eszközök Kiragadott példák Demó { +néhány gondolat }. Hangolás. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: {Teljesítménym onitoro zás és  hango lás}  a z S QL  Server 2008-ban
Page 2: {Teljesítménym onitoro zás és  hango lás}  a z S QL  Server 2008-ban

{Teljesítménymonitorozás és hangolás} az SQL Server 2008-ban

Bitemo Erik [email protected] Database AdministratorWalt Disney Internet Group

Page 3: {Teljesítménym onitoro zás és  hango lás}  a z S QL  Server 2008-ban
Page 4: {Teljesítménym onitoro zás és  hango lás}  a z S QL  Server 2008-ban

{ Menetrend }

Monitorozás

Általános bevezetőEszközökKiragadott példákDemó

{ +néhány gondolat }

Hangolás

Page 5: {Teljesítménym onitoro zás és  hango lás}  a z S QL  Server 2008-ban

Teljesítménymonitorozás { láss, ne csak nézz }

Page 6: {Teljesítménym onitoro zás és  hango lás}  a z S QL  Server 2008-ban

Monitorozás - bevezetőMinél kevesebb hatás a felügyelt rendszerre

Rontja a teljesítménytHamisíthatja a mért adatokat

Tetszőleges részletességű monitorozásPl. lockok: instance – adatbázis – tábla – lap szinten

Pont a szükséges adatokat monitorozzuk„ami elmúlt, soha nem jön vissza már” (Máté Péter)

A sok logot soha senki nem akarja kielemezni

Page 7: {Teljesítménym onitoro zás és  hango lás}  a z S QL  Server 2008-ban

Monitorozás { }

Mi lehet a probléma?Nem elég csak akkor monitorozni, amikor probléma van – kell a viszonyítási alapIdőnként alaposan, folyamatosan átfogóan

Processzor, memória, diszk, hálózat, tranzakciók, lockok Probléma esetén a megfelelő részt tovább bontani

Teljesítményszámláló Érték

Processor:%Processor time\_Total 45

PhysicalDisk:Avg Disk Write Queue Length\_Total

5

SQLServer:Buffer Manager\Page life expectancy

51

SQLServer:Transactions\ Transactions 119

Baseline – normálértékek

Page 8: {Teljesítménym onitoro zás és  hango lás}  a z S QL  Server 2008-ban

Performance Studio

Monitorozás – az eszköztárSQL

Profiler

SQL Trace

Data Collection (Performance

Data Warehouse)

Performance Counterek

Extended Events (xEvents)

DMV-k

SQL Server Management Studio

?

Page 9: {Teljesítménym onitoro zás és  hango lás}  a z S QL  Server 2008-ban

Data Collection(Performance Data Warehouse)Proaktív/preventív monitorozás eszköze

Baseline készítésére kiválóKülönböző adatforrások egységes kezelésePillanatnyilag kezelt adatforrások (collector type):

TeljesítményszámlálókSQL TraceT-SQL lekérdezésekLekérdezés statisztikák (előre definiált halmaz)Bővíthető

Központi monitorozás3-5% többletterhelésmsdb és Management Data Warehouse adatbázisok

Page 10: {Teljesítménym onitoro zás és  hango lás}  a z S QL  Server 2008-ban

Data Collection fogalmakData provider: egy definiált adatforrás, ami egy collector type szerinti adatokat szolgáltatCollector type: logikai egységesítő réteg, ami a különböző típusú adatforrásokból történő tényleges adatkinyerést meghatározzaCollection item: egy collector type egy példányaCollection set: collection item-ek csoportja, a kezelhető adatgyűjtési egységCollection mode - cached: az adat nem kerül be azonnal az adatbázisba (később)

Page 11: {Teljesítménym onitoro zás és  hango lás}  a z S QL  Server 2008-ban

Data providerek

Collection Set

A Data Collection működése

Collector type

Collector type

Collection item

Collection item MDW

Data Collector Cache

Riportok

Page 12: {Teljesítménym onitoro zás és  hango lás}  a z S QL  Server 2008-ban

Extended Events (xEvents)Sok eddig rejtett belső esemény kinyerhető

Pl. kapcsolatonkénti várakozások

Korrelálható az operációs rendszer eseményeivel

Kernel trace-szel összevethető Event Tracing for Windows (ETW) segítségével

Nincs GUIMinimális többletterhelés a rendszer számára

2GHz-es CPU-n 2 ms / eseményfeldolgozásFolyamatosan futtatható

Egy esemény többszörösen feldolgozható

Page 13: {Teljesítménym onitoro zás és  hango lás}  a z S QL  Server 2008-ban

{ SQL 2008 teljesítménymonitorozás}

demó

Page 14: {Teljesítménym onitoro zás és  hango lás}  a z S QL  Server 2008-ban

Teljesítményhangolás { sose volt még ilyen jó}

Page 15: {Teljesítménym onitoro zás és  hango lás}  a z S QL  Server 2008-ban

{ Integration Services }

Sokkal hatékonyabb működésAz SQL Server 2008 Integration Services 1.18 TB adatot 29 perc 54 másodperc alatt töltött be (szövegfájlokból)Eddig senki nem mutatott fel jobb eredményt

Page 16: {Teljesítménym onitoro zás és  hango lás}  a z S QL  Server 2008-ban

Hangolás - bevezetőKihívások

Hová tegyem a clustered indexet? A plusz indexek rontják a DML utasítások hatékonyságát Rosszul megírt alkalmazáslogika

Tűzzünk ki céltKevesebb I/O műveletEgy gyakori lekérdezés gyorsításaEgy erőforrásigényes lekérdezés optimalizálása

Monitorozzunk előtte-utána{ baseline }

{ Statisztika? Index fragmentáció? }

Page 17: {Teljesítménym onitoro zás és  hango lás}  a z S QL  Server 2008-ban

Hangolás – a kezdetektől

Page 18: {Teljesítménym onitoro zás és  hango lás}  a z S QL  Server 2008-ban

Hangolás - EszköztárDatabase Engine Tuning Advisor*Tranzakció izolációs szintek*Particionált táblák*Minimally logged insertPolicy-based Framework

Adat és backup tömörítésOPTIMIZE FOR* {UNKNOWN}Plan Guide*Plan Forcing*Filtered indexFORCESEEKResource Governor

* SQL Server 2005 (SP2)

Page 19: {Teljesítménym onitoro zás és  hango lás}  a z S QL  Server 2008-ban

Hangolás – Resource GovernorCPU és memória szabályozásaA rendszerprocesszek védettek (DAC is)A ki nem használt minimum memória elveszettCPU soft, memória hard limit

CPU-t ad többet, ha lehet, memóriát nehéz visszavenni

Versengés esetén nem ígér arányos elosztást

A max 70%-os pool kaphat több erőforrást, mint a 100%-os

Page 20: {Teljesítménym onitoro zás és  hango lás}  a z S QL  Server 2008-ban

defaultinternal

KiskerPool RiportPool

Resource Governor {folyamat}

RiportKisker Classifier UDF

KiskerWG

internal default

RiportWGMax CPU: 20%Max mem: 20%

K R

Min CPU: 60%Max CPU: 100%Max mem: 100%

Max CPU: 100%Max mem: 100%

Min CPU: 20%Max CPU: 100%Max mem: 100%

Page 21: {Teljesítménym onitoro zás és  hango lás}  a z S QL  Server 2008-ban

Resource Governor {memória}

RiportPoolmin:10%, max

30%

KiskerPoolmin:30%, max 80%

Defaultmin: 0%, max 100%

dbo.

tbl1

...

...

Megosztott memória

Page 22: {Teljesítménym onitoro zás és  hango lás}  a z S QL  Server 2008-ban

TömörítésAdatot sor vagy lap alapon, csak a lapon tárolt adatokat!Mentés számszerűen:

BACKUP DATABASE AdventureWorks TO ‘AdvBAK’ WITH COMPRESSION

(tömörítetlen adatbázis)

Tömörítetlen mentés

Tömörített mentés

Backup I/O 24 10

Backup CPU 93 126

(tömörített adatbázis)

Tömörítetlen mentés

Tömörített mentés

Backup I/O 16 10

Backup CPU 125 172

Page 23: {Teljesítménym onitoro zás és  hango lás}  a z S QL  Server 2008-ban

Filtered index

Csak a rekordok egy részére készül el az indexfaKevesebb helyet igényelGyorsabb futásNemcsak filtered index, de filtered statisztika is van (join-t segítheti)

CREATE INDEX IX_Address ON Person.CustomerData(City, Address) WHERE is_active = 1

Page 24: {Teljesítménym onitoro zás és  hango lás}  a z S QL  Server 2008-ban

FORCESEEK

Full table scan vs. Index seekSegítség, ha ismerünk összefüggést az adatok között (pl. ügyfélszámok és regisztrációs dátumok), és azok egyenetlen eloszlásúak

Ha nincs megfelelő index, akkor elbukik{ csak akkor használjunk hinteket, ha pontosan

felmértük a helyzetet és a következményeit }

SELECT * FROM Person.Address WITH (FORCESEEK)WHERE StateProvinceID = 8

Page 25: {Teljesítménym onitoro zás és  hango lás}  a z S QL  Server 2008-ban

Plan Guide, Plan Force

Bizonyos esetekben nem nyúlhatunk az alkalmazáshoz és a lekérdezésekhez

Külső fejlesztés, több telepített példány, stb.

Megadhatunk teljes végrehajtási tervet (XML) vagy csak hinte(ke)t

EXEC sp_create_plan_guide @name = N'Guide1', @stmt = N'SELECT TOP 233 * FROM Person.Address', @type = N'SQL', @module_or_batch = NULL, @params = NULL, @hints = N'OPTION (MAXDOP 1)'

Page 26: {Teljesítménym onitoro zás és  hango lás}  a z S QL  Server 2008-ban

{Teljesítményhangolás}

demó

Page 27: {Teljesítménym onitoro zás és  hango lás}  a z S QL  Server 2008-ban

Itt a vége...Az SQL Server 2008 sokat ad hangolhatóság terén isPróbálják ki az SQL Server 2008-at minél előbb

Ez csak egy rövid áttekintés volt

[email protected]://blog.rollback.hu?

Page 28: {Teljesítménym onitoro zás és  hango lás}  a z S QL  Server 2008-ban
Page 29: {Teljesítménym onitoro zás és  hango lás}  a z S QL  Server 2008-ban

{ Viszontlátásra}