05. januar 2005 - 17:53Der er
13 kommentarer og 1 løsning
Optimering af XAL kode til C5 SQL?
Hej!
Tiden er kommet til vores C5 native database skal konverteres til SQL. Grunden er primært låsninger, samt at størrelsen af databasen er begyndt at blive for voldsom til native (2.4 GB).
Problemet er så at cursor metoden C5 bruger overfor MSSQL er extrem langsom, når jeg kører de kørsler, jeg selv har bygget. Stortset alt XAL-koden er bygget i relation til native databasen, og det kører slet ikke godt på SQL versionen.
Jeg har taget udgangspunkt i en specifik kørsel, der består af en masse search, introduce, find osv., en test viser at hastigheden falder med ca. en faktor 10 (fra 70 sek til 700+ sek).
Jeg har prøvet at kigge mig om i den leverede kode (forskellige rapporter, XAL-kørsler) der er blevet optimeret til SQL, men jeg kan ikke lige umiddelbart finde ud af at overføre optimeringen til min kode.
Det jeg først og fremmest søger er at hvordan jeg kan optimere pr. record behandlingen. Her tænkes på f.eks.
search z using idxz where a=... ... update z end
og
search z using idxz where a=... ... search y using idxy where b=z.a ... ... update y end update z end
Ligeså hvor er det C5 SQL især går ned i hastig? Er der 'kode-typer' jeg absolut skal holde mig fra? Findes der et dokument et sted der beskriver de generelle optimeringsmuligheder vedr. C5 SQL? Findes der kurser der specifikt omhandler C5 SQL optimering?
Paste hele kørslen ind i stedet... Det er noget nemmere. Det var mig der skrev og holdt det officelle C5 SQL kursus. Jeg kan hurtigt komme med nogle forslag.
Jeg er ikke i det firma mere, så det er ikke mig, der holder dem mere, men vi kan sagtens finde ud af en "special session" til dig/jer. Jeg har fået mange andre C5'ere til at rykke i ydersporet efter de er kommet over på SQL, så mon ikke det kan lykkes med jeres. Det gælder bare om at stryge den med hårene. :-) Jeg holder til i Århus til daglig.
Men jeg vil gerne give din kørsel et par kommentarer på vejen, hvis du paster den
Til Broholm - kan man evt. købe noget undervisningsmateriale vedr. emnet. eller købe sig til noget ekspertice?
Jeg har en stor XAL applikation kørende i Schweiz, der pt kører native. Kunden reparere over 500 mobiltelefoner om dagen og alt kører i deres XAL. Vi skal i løbet af de næste måneder have flyttet den til SQL og det giver sikkert problemer med hastigheden.
//Tommy evt ***tp@designtech.dk*** (fjern lige stjernerne)
Hardwaren er god nok, der er nok RAM[1], og transaction log og data ligger på hver sit array.
Vedr. koden, den kan jeg ikke rigtig smide her, da den der primært skal optimeres er vores prisopdateringskørsel, som jeg ikke er helt interesseret i at smide på nettet :).
Kan man få lov til at kontakte dig? Jeg er interesseret I at hyre din expertise til vores opgradering til SQL. Området er Storkøbenhavn.
[1] 1.5 GB, har haft lånt 2 GB, men det gjorde ikke den store forskel, MSSQL 'gad' ikke bruge mere end 1.7GB, og der var ingen hastighedsforbedring med de 3.5GB.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.