Se ha denunciado esta presentación.
Se está descargando tu SlideShare. ×

DSD-NL 2015, Delft-FEWS Gebruikersdag, 8 FEWS Performance

Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio

Eche un vistazo a continuación

1 de 30 Anuncio

Más Contenido Relacionado

Similares a DSD-NL 2015, Delft-FEWS Gebruikersdag, 8 FEWS Performance (20)

Más de Deltares (20)

Anuncio

Más reciente (20)

DSD-NL 2015, Delft-FEWS Gebruikersdag, 8 FEWS Performance

  1. 1. 09 juni, 2015 Nederlandse FEWS Gebruikersdag Delft-FEWS Database Analyse & Performance Marc van Dijk, Onno vd Akker
  2. 2. 9 juni, 2015 Inhoud Presentatie • Aanleiding • Delft-FEWS tools voor systeem analyse • Analyse Delft-FEWS performance • Analyse van Delft-FEWS database • Conclusies - Acties
  3. 3. Aanleiding • Sommige Delft-FEWS gebruikers hebben performance problemen met hun Delft-FEWS applicatie en melden dit bij FEWS support • Symptomen • Workflows lijken langer te duren • FEWS OC hangt af en toe • Synchronisatie loopt vast (JBOSS) • Geheugen problemen computers (OC en FSS) • Dit komt voornamelijk door • Grote databases; localdatastores (OC en FSS) bij synchronisatie • Grote cache files bij Direct Database Access • Sub-optimale configuratie Delft-FEWS applicatie • Onvoldoende CPU / geheugen van de FSS’en 9 juni, 2015
  4. 4. Aanleiding • Afgelopen jaren zijn er verschillende analyses uitgevoerd bij gebruikers en binnen Delft- FEWS projecten om performance problemen duidelijk te krijgen: • FEWS Scotland (Micha) - document • NFFS NorthEast (Marc) - document • HyFS (Marc) – memo • FEWS FOEN (Simone, Marc) • Kennis opgedaan tijdens deze analyses gaan we delen met grote groep gebruikers • Moet uiteindelijk resulteren in adviezen voor op te zetten infrastructuur en configuratie richtlijnen 9 juni, 2015
  5. 5. 24 Feb 2014 – 26 Feb 2014HyFS End User Training Delft-FEWS Tools voor Analyse
  6. 6. Tools binnen Delft-FEWS software Er zijn een aantal FEWS (debug) tools met bruikbare informatie over de FEWS applicatie About box • FEWS build nummer (en patch nummer) • Geheugen gebruik tijdreeksen en configuratie • Queries naar de database F12 (Debug) – Q database • log database table spaces • database info 9 juni, 2015
  7. 7. Tools binnen Delft-FEWS software Status Bar • Verbonden met MC Server • Lees snelheid uit database • Downloadsnelheid bij Direct Database Access • Leessnelheid localdatastore bij Synchronisatie • Geheugen gebruik OC client • Dubbelclick schoont geheugen OC op • Als het rood wordt zit je aan je maximum geheugen OC Logging van database queries bij DDA 9 juni, 2015
  8. 8. Tools binnen Delft-FEWS software Database Viewer • Start en End date van external historical series. Als deze rood zijn dan eerste /laatste waarde missing. Incidenteel mag dat; als het vaak optreed moet het opgelost worden in de configuratie (blaast database op) • Value Resolution: Sla waarden op met significante cijfers • Disk Space geeft aan hoeveel ruimte nodig is voor opslaan reeksen • Blob Count en Weighted Blob Count. Voor scalaire data geeft dit aan hoeveel blobs gemerged kan worden. BC moet liefst 1 zijn. WBC van 0.2 geeft aan dat 5 reeksen in 1 blob zitten. • Time Series Count geeft aan hoeveel reeksen er in een workflow zitten. 9 juni, 2015
  9. 9. Tools binnen Delft-FEWS software Detail analyse FEWS database: FEWS VJDBC Server en DBVisualiser (procedure staat op WIKI) • Werkt alleen op localdatastore • Bij DDA, download eerst database met replicate functie (F12 – database) 9 juni, 2015
  10. 10. Tools binnen Delft-FEWS software • Logging op de FSS: log.txt file • INFO - ForecastingShell.init - ForecastingShell.Info: version: 2014.02, build: 54359 (patched from 50595) Jun2, type: BOM, jre: 1.7.0_71, os:Windows 7, user:aubo, mx: 1037m, db: Oracle 12.1, region: HyFS • INFO - TaskRun.run - TaskRun.Started: Starting Task ImportExternal with ID AUBOMC00:000247950 and T0 2015-06-08 09:22:00 and default forecast length, available memory 831 MB • INFO - Workflow.run - Workflow.ActivityCompleted: Workflow ImportExternal completed in 5s • INFO - TaskRun.run - TaskRun.TimeSpend:SecondaryValidation 4s 75% TimeSeriesImport 1s 23% datastore 1s 24% cache files 6.3 MB database 0s 0% (7 ms/query, 17 kB, 50 kB/s, 49 queries, 4481 rows) reloaded 0 B time series read 9013 (unique=7927) time series written 9013 (changed=0) files 0s 0% logging 0s 0% gc 1s 10% cpu 90% max mem. 231 MB index mem. 28 MB db con. acquire time 0s 0% lock. acquire time 0s 0% • Vooral garbage collector (gc) is belangrijk, >30% dan is er iets aan de hand. • Onvoldoende geheugen computer waardoor geheugen gaat swappen naar schijf (VM servers) • Scan de tijd van opstarten, afsluiten en verschillende modules 9 juni, 2015
  11. 11. Tools binnen Delft-FEWS software Admin Interface tools: Database Analyse • Gebruik om grootte database en aantal records te monitoren 9 juni, 2015
  12. 12. 24 Feb 2014 – 26 Feb 2014HyFS End User Training Performance
  13. 13. Performance Aandachtspunten Performance van een systeem is afhankelijk van verschillende factoren • Gebruikservaring FEWS gebruiker • Hoeveelheid gegevens, grootte database • ICT-Infrastructuur • Configuratie FEWS Applicatie Ervaringen FEWS Applicaties • Grote systemen kunnen goede performance hebben • Performance problemen zijn tot nu toe (bijna) allemaal oplosbaar Voor een betrouwbaar ‘performant’ Delft-FEWS systeem is (dagelijks) monitoren van de verschillende componenten belangrijk: • Detecteer potentiele problemen voordat het een probleem gaat worden • Detecteer problemen welke niet direct zichtbaar zijn voor ‘normale’ gebruikers • Documenten beschikbaar bij Deltares met voorbeelden basis ‘Health Checks’. 9 juni, 2015
  14. 14. Performance Voorbeelden Voorspellingsysteem van National Weather Service; regionaal systeem (VS) • Veel metingen (relatief grote tijdstap), relatief weinig grids • Heel veel losse modellen (>1000) met complexe FEWS xml configuratie • Veel simulaties met ensembles en losse tijdreeksen • Een dagelijkse voorspelling bevat 900.000 individuele tijdreeksen • Ondanks grote hoeveelheid tijdreeksen is de performance goed 9 juni, 2015
  15. 15. Performance Voorbeelden Voorspellingsysteem van Bureau of Meteorology (Australië) • Veel metingen voor +- 10.000 meetlocaties (kleine tijdstap); import elke 3 minuten. • Veel Meteo en Radar grids • Beperkte hoeveelheid centrale simulaties op back-end servers • Veel locale runs op Operator Client • Getest met 70 gelijktijdige gebruikers, performance bleef goed • Meest problematische data is bewerkte neerslag data (elke 3 minuten andere waarde) 9 juni, 2015
  16. 16. Performance Voorbeelden Voorspellingsysteem van FFC, Environment Agency (Engeland) • Nationaal neerslag en waterstand meetnetwerk +- 3.000 meetlocaties (alles 15 minuten tijdstap, dus eenvoudig). • Veel Meteo en Radar grids; vooral veel ensembles • Weinig simulaties in FEWS, meeste model simulaties op super computer MetOffice • Veel Nowcast ensembles (elke 15 minuten), +- 10 Gb dag. • Geoptimaliseerd door data maar tijdelijk op te slaan (2-6 uur), hierdoor database maar 2-3 Gb groot. 9 juni, 2015
  17. 17. Voorbeelden Performance bottlenecks • External historical reeks verdeeld over meerdere blobs is sub-optimaal • Kan door import komen (Import formaat met original missings) • Processen van dezelfde data in verschillende workflows • Bewerkingen die elke run veranderen (bv ruimtelijke interpolaties van neerslag) 9 juni, 2015
  18. 18. Performance Aandachtspunten • Zorg voor goed ICT infrastructuur • Voldoende geheugen op een OC en FSS • Snel netwerk, of Virtual Desktop oplossingen • Aandachtspunten gebruik Direct Database Access • Verschil PostGresSQL en ORACLE maakt niet veel uit • PostGResSQL geeft iets meer netwerkverkeer maar eenvoudiger onderhoud • Bij SQL-Server en PostgresSQL is performance slechter bij database met veel records van korte levensduur • Optimaliseer de Configuratie • Korte locatie ID’s en parameter ID’s. Mergen van Blobs gaat beter • Gebruik veel temporary series als je de data toch niet laat zien • Processen van data in 1 workflow 9 juni, 2015
  19. 19. Performance Aandachtspunten Grootste performance problemen zien we bij. Delft-FEWS als operationeel voorspellingsysteem: • Gebruik ensemble voorspellingen (veel grids met beperkte houdbaarheid) • Draaien grote modellen met veel grid uitvoer en grote model states • Complexe configuratie met veel modellen en configuratie bestanden Delft-FEWS als WIS systeem • Lange historische scalaire reeksen. Vooral processing optimaliseren. • Radar grids gebruiken veel database ruimte 9 juni, 2015
  20. 20. 24 Feb 2014 – 26 Feb 2014HyFS End User Training Grote Databases
  21. 21. Grote localdatastore / centrale database Wat is een grote database? • FSS localdatabase > 3-5 GB • Uitzondering kan zijn een systeem waarbij enkele grote grids gebruikt worden • Probleem meestal in dynamische tabellen, soms ook statische config tabellen • Enkele tabellen hebben veel records • TimeSeries > 1 miljoen records • Streef naar max van 500.000 – 600.000 • ThresholdEvents > 250.000 • Reports • WarmStates • Logentries 9 juni, 2015
  22. 22. Analyse NFFS - NorthEast Probleem NFFS: performance van NFFS regio systemen gaat achteruit • Waarschijnlijk gevolg van grotere databases • Eerste analyse: NFFS Northeast Conclusies • Database is niet heel groot (2.5-3 GB) • Verouderde configuratie; enkele nieuwe FEWS functies niet gebruikt • Grootste problemen bij: • ModuleDataSets (veel verschillende versies van oude config) • ThresholdEvents (veel records in tabel, lange tijd opgeslagen) • Reports (500 MB reports worden in database opgeslagen) • TimeSeries (vooral probleem van grote grids en external historical) 9 juni, 2015
  23. 23. Analyse NFFS - NorthEast Statische Configuratie • FEWS database is geen SVN repository • Zorg ervoor dat configuratie regelmatig worden opgeschoond • Vooral ModuleDataSets kunnen veel volume hebben • Effect vooral zichtbaar op FSS localDataStore, is replica van hele database Module Instance Number of moduleinstance datasets in database (-) Total Size in database (MBytes) Northeast_Modules 9 67.34 Northeast_Modules_Triton 7 59.19 R_Part4_Module 1 10.38 R_Part2_Module 1 10.17 R_Part3_Module 1 4.21 R_Part1_Module 1 3.84 Northeast_ColdStates 8 2.61 Northeast_HFPT_Modules 1 2.53 Report_Export 14 1.71 Report_Export_ZIPFile 14 1.71 ISIS_Don_Forecast 2 0.50 Northeast_Reports 1 0.12 Report_Export_System_ZIPFile 1 0.02 ISIS_Gaunless_Forecast 3 0.01 9 juni, 2015
  24. 24. Analyse NFFS - NorthEast TimeSeries table • Analyse uitgevoerd met VJDBC en DBVisualizer • Kopie van OC localdatastore en FSS localdatastore • Uitvoeren van verschillende queries om te zien waar probleem ligt Query 1: Counts the number and size of records according to time series type • SELECT Count(blobid) as NumBlobs, TimeSeriesType, Sum(blobsize) as BlobSize FROM TimeSeries GROUP BY TimeSeriesType; FSS OC Time series type No. Records (-) Size on Binary Object (MBytes) Average size of record (Bytes) Percentage (%) External Historical 289443 137 473 9.95% External Forecasting 82750 724 8749 52.61% Simulated Historical 17028 9 544 0.67% Simulated Forecasting 360478 506 1404 36.77% Temporary Total 749699 1376 100.00% Time series type No. Records (-) Size on Binary Object (MBytes) Average size of record (Bytes) Percentage (%) External Historical 67198 32 478 7.82% External Forecasting 43695 373 8541 90.82% Simulated Historical 855 0 562 0.12% Simulated Forecasting 3045 5 1674 1.24% Temporary Total 114793 411 100.00% 9 juni, 2015
  25. 25. Analyse NFFS - NorthEast Aanbevelingen: external historical • Verbeter de amalgamate module instance • Maak configuratie transparant; misbruik moduleInstanceId niet • Verwijder processing module instances uit forecast workflows • Voorbeeld: grafiek met records per dag voor 1 jaar • Geeft inzicht in hoe je database zal groeien na config aanpassing 9 juni, 2015
  26. 26. Analyse NFFS - NorthEast Aanbevelingen: external forecasting • Voor grids: maak grid domein kleiner na import origineel grid • Verander resolutie grids na import • Kijk goed naar valueResolution; geen schijnnauwkeurigheid opslaan • Sla alleen die grids (parameters op) die gebruikt worden • Verander Change <synchLevel>6</synchLevel> naar <synchLevel>7</synchLevel> voor alle grids die op FSS kunnen blijven Parameter No. Records (-) Size of data Object (MBytes) Pressure.msl 32 10.16 Wind.u 49 17.04 Wind.v 49 17.03 Parameter No. Records (-) Size of data Object (MBytes) Pressure.msl 32 10.16 Wind.u 10 2.89 Wind.v 10 2.95 9 juni, 2015
  27. 27. Analyse HyFS Amalgamate is heel belangrijk (getrapt geïmplementeerd, dag, week, maand)) 9 juni, 2015
  28. 28. 24 Feb 2014 – 26 Feb 2014HyFS End User Training Conclusies - Acties
  29. 29. Conclusies - Acties Verschillende analyses hebben een aantal zaken duidelijk gemaakt Configuratie • Gebruik getrapte amalgamate oplossing voor external historical series • Na aanpassingen van wind grids, thresholdsevents en meteo processing in EA Northeast configuratie is database grootte met 50% gereduceerd • Zorg voor duidelijke configuratie met gescheiden workflows voor import, processing en simulaties Delft-FEWS software • Problemen met mergen blobs verbeterd • Geheugen gebruik cache bestanden verbeterd, enkele fouten gevonden en opgelost • Gezamenlijk gebruik FEWS operationele database en FEWS Archief gaat steeds belangrijker worden 9 juni, 2015
  30. 30. Algemene aanbevelingen • Belangrijk: elk klein stukje winst kan later belangrijk blijken te zijn • Oplossingen kunnen verschillend zijn voor Synchronisatie en DDA • Zorg voor goede afstemming tussen expiry time in operationele database en FEWS Archief • Tijd nemen in projecten voor het reviewen van configuratie • Leren van elkaar: uitwisselen analyses en tips • Presentaties en analyses komen op de WIKI 9 juni, 2015

×