Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

Progress ytelsesoptimalisering ”The need for SPEED” Bent Olsby

Liknende presentasjoner


Presentasjon om: "Progress ytelsesoptimalisering ”The need for SPEED” Bent Olsby"— Utskrift av presentasjonen:

1 Progress ytelsesoptimalisering ”The need for SPEED” Bent Olsby

2 Hvem er vi Største Progress konsulenthuset i Norge
9 Progress konsulenter Til sammen 130+ år med Progress erfaring Erfaring fra Progress V2 1986 5 .NET konsulenter med god sertifisering , Side 2

3 Database med Type II Storage Areas Antall samtidige klienter
Hvem er dere ? Erfaring Roller Databasestørrelse Antall databaser Database med Type II Storage Areas Antall samtidige klienter , Side 3

4 Agenda Sikkerhet Behov for økt ytelse Identifisere flaskehalsene
Effektive tiltak – kost / nytte Optimalisere eksisterende ressurser Ny maskinvare Databasetuning Oppgradere Progress Applikasjonstuning Verktøy Index Kodeoptimalisering Sikkerhet Store og forretningskritiske systemer har ofte ytelsesutfordringer og behov for å økt ytelse.

5 Behov for økt ytelse 24 timers tilgjengelighet
Vekst - økt bruk, nye oppgaver Applikasjonen oppleves som treg av brukerne Økt effektivitet hos medarbeidere Applikasjonen tilgjengeliggjøres på Web Ny rapportmodul settes i drift, Uttrekk til datavarehus Callsenter med brukere med behov for rask respons Besparesle med rask respons, motiverte medarbeidere

6 Identifisere flaskehalsene
Finnes det tydelige flaskehalser? Disk CPU Minne Nettverk Programmene… (flaskehals eller ueffektive) For mange oppgaver som skal utføres

7 Optimalisere eksisterende ressurser
Disk / database Bruke tilgjengelige disker AI, BI, DB (.st) Checkpoints, APW, AI / BI blocksize Type II Storage Areas, Database BlockSize (1, 4, 8K), ClusterSize, 64-Bit CPU Flere CPUer / tråder (Enterprise lisens) –spin, apw, aiw, biw Shared Memory Tilgjengelig minne –B (anbefalt ca. 10% av databasestørrelsen), –B2 Batch / bakgrunnsrutiner, WebSpeed, Appserver - komprimering Klient Temp Directory, Størrelsen på nettverkspakkene, Buffers for Temp-Table, Temp-Table BlockSize

8 Ny maskinvare CPU ytelse øker med ca. 60% i år
Minne ytelse øker med < 10% i år DISK ytelse øker med ca. x% hvert 10 år. Flere spindler (disker) gir økt ytelse Lokale disker DAS – Direct Attached Storage SAN – Storage Area Nettwork SSD – Solid State Drive RAID (1+0 for databaser pleier å være best for ytelse)

9 DatabaseTuning Beregne Records pr. Block (RPB) for alle tabeller
Beregne Blocks pr. Cluster (BPC) på hver tabell Flytte alle tabeller og indexer til tilpassede Type II Storage Area basert på RPB og BPC (- ikke etter ’logisk’ innhold ex. OrdreData, KundeData osv.) Index legges i Area med 1 RPB, og tilpasset BPC Vurdere å sette Create / Toss limits (pr. tabell) (endret ca. i 10.0B?) ODBC – Update STATISTICS, Husk Comit Type II SA gir % ytelsesøkning RPB gir X faktor, og ytelsesøkning er relativt varig. Dump / Reload gir god ytelsesøkning, men er ikke varig

10 Database struktur #ProDbMagic 2.16 ( ), Copyright ProVentus - Bent Olsby, # *** Structure file for the New Unsized DB m3_info # Use this to add the new areas to existing database - without setting a size on the area # # b . # a . # d "Schema Area":6,32 . d "Data_004_512":25,4;512 . d "Data_016_008":27,16;8 . d "Data_032_064":29,32;64 . d "Data_032_512":31,32;512 . d "Data_064_008":33,64;8 . d "Data_064_064":35,64;64 . d "Data_064_512":37,64;512 . d "Data_128_008":39,128;8 . d "Data_128_512":41,128;512 . d "Data_UnOptimized":43,256;1 . d "Data_Unused":45,256;1 . d "Index_008":85,1;8 . d "Index_064":86,1;64 . d "Index_512":87,1;512 . d "Index_UnOptimized":88,1;1 . d "Index_Unused":89,1;1 . , Side 10

11 Sammenlikning - databasetuning
, Side 11

12 Ytelse før/etter databasetuning
Databaseserver , Side 12

13 Ytelse før/etter databasetuning
Klient , Side 13

14 Ytelse før/etter databasetuning
Nettverk , Side 14

15 Promon Activity - Sampled at 01/27/10 11:34 for 0:30:27.
Event                 Total   Per Sec   Event                 Total   Per Sec        Commits        27243      14.9            Undos            0       0.0 Record Updates        32542      17.8     Record Reads       Record Creates        25177      13.8   Record Deletes         1069       0.6      DB Writes         7969       4.4         DB Reads            959.8      BI Writes         6843       3.7         BI Reads            9       0.0      AI Writes         5548       3.0   Record Locks            192.2     Record Waits            0       0.0    Checkpoints            3       0.0    Buffs Flushed            0       0.0 Rec Lock Waits    0 %    BI Buf Waits      0 %    AI Buf Waits      0 % Writes by APW    90 %    Writes by BIW    50 %    Writes by AIW    91 % Buffer Hits      99 % DB Size          69 GB       BI Size     400 MB       AI Size     134 MB FR chain                 blocks   RM chain                   20 blocks Shared Memory  13680M        Segments      1 4 Servers, 104 Users (48 Local, 56 Remote, 40 Batch),5 Apws , Side 15

16 Oppgradere Progress Progress optimaliserer programkoden - som gjør at eksisterende applikasjon kjøres raskere De fleste nye databaserfunksjoner kommer KUN for Type II Storage Areas (Clusters, BufferPool B, 64bit RowId) Ta i bruk tilgjengelig / ny funksjonalitet Type II Storage Areas 32 / 64 bit Progress –B, –B2 Online Index Compact After Image Archiver Replication Plus – avlaste queries, rapporter, backup Enterprise lisens Alle nye forbedringer ifbm. Databasen kommer kun ifbm. Type II Storage Areas

17 Applikasjonstuning - Verktøy
Profiler (udokumentert) $DLC/src/samples/profiler Profiler.PPT Start via .pf -OUTFILE C:\profiler\perfmon.out -LISTINGS C:\profiler -DESCRIBE "Index evaluation“ ABL Assign profiler:description = ”Index Eval " + wUser profiler:directory = ”d:\temp\profiler” profiler:file-name = profiler:directory + "pd-" + string(today)," ”) + ".out” profiler:coverage = false profiler:listings = false /*true*/ profiler:enabled = true profiler:profiling = true.

18 Applikasjonstuning - Teknikk
Loggfiler – måle tidsforbruk på kall AppServer WebSpeed  PROVENTUS LogAnalyzer - OO Oppstartsparametre -NL (eneste parameter som forandrer syntax) –zqil… , Side 18

19 Applikasjonstuning – Teknikk
XREF – Compile time logging Dynamiske queries og Matches vises ikke korrekt –zqil FOR EACH customer WHERE custnum = 15. DISPLAY customer EXCEPT comments. END. Viser følgende i databaseloggen (db.lg) : 23:13:11 Usr 5: ==INTERNAL Compiled Query Resolution Method: Query No. 3== (6135) 23:38:17 Usr 5: LEAF (1848)FGE (1848)INDEX EQUALITY (6154) This is classified as a Find Greater than or Equal to (FGE) query. Index 12 is used (Custnum) 1 component was used to match the low end 1 component was used to match the high end of the query This is an EQUALITY query.

20 VST _Connect - Cache (10.1c)
_Connect-CacheInfo  Contains tracing information; this field includes:     * A — Extent 1 contains the fully qualified ABL program.     * R — Each extent contains a fully qualified ABL program name. Only the most current 32 program names are returned. _Connect-CacheLineNumber Contains line numbers; this field includes:     * A — Extent 1 contains the line number of the current ABL program.     * R — Each extent contains the line number of the fully qualified ABL program name. Only the most current 32 program names are returned.

21 Skrive Optimal ABL programkode
Applikasjonstuning Skrive Optimal ABL programkode Index Plukk data med rett index Kodeoptimalisering For Each / Find No-Lock / Share-Lock FieldList ifbm. LOB Delete Transaksjonsstørrelser No-Undo Temp-tables, variabler Bruke Schema-cache filer (på klient) Vurdere Procedure Library

22 Sikkerhet Ta i bruk After Image!!! Lett å sette opp
Lav kostnad i drift Kostnad i ytelse 2-3 % = Stor grad av sikkerhet Prostrct add sports sports_AI.st Proutil sports enable ai, Backup / marked backup eller Probkup online sports enable AI AI Archiver  kopiere/arkivere til ”DropZone” Backup + AI (+.st) = 100% oppdatert database

23 Ytelsesoptimalisering
Tuning og ytelsesoptimalisering er en kontinuerlig prosess, og ikke en oppgave som en gjør ferdig ”en gang for alle”. , Side 23

24 Spørsmål ?

25 Presentert av BENT OLSBY konsulent / consultant Progress utvikler og konsulent siden Februar 1986 Progress V2 Proventus AS Storgaten 33 B, N-0184 Oslo, , Side 25

26 , Side 26 Teknologi for optimale prosesser


Laste ned ppt "Progress ytelsesoptimalisering ”The need for SPEED” Bent Olsby"

Liknende presentasjoner


Annonser fra Google