Results 1 to 6 of 6

Thread: dBExpress met mySQL performance

  1. #1

    Question dBExpress met mySQL performance

    Hoi,

    Ik ben op mijn eigen website (www.seti-nl.org) ondertussen begonnen met statistieken voor het boinc gebeuren. Op zich werkt het allemaal wel, maar als ik kijk naar de performance van mijn eigen software, dan ben ik wat teleurgesteld.

    M'n statistieken programma, haalt de hele mySQL tabel op, en die gooi ik in een TList. Daarna parse ik een groot XML bestand en werk alle items bij in de TList. Dit gaat natuurlijk supersnel

    Daarna bekijk ik ieder record in de TList of deze gewijzigd is en zo ja, dan update ik het record in de mySQL database. Daarnaast wordt een insert query gedaan in een history tabel.

    Het gaat me om het laatste. De update en insert querys op mySQL lijken mega traag (tenminste voor mijn gevoel). Ik zie dat m'n server niet op maximale belasting loopt tijdens dit proces (dat vind ik wel raar) en de software doet ongeveer 40 querys per seconde. (op een P4-2GHz)

    Is dit traag of zou ik iets fout kunnen doen ? Ik kan wel een redelijk stuk ontwikkelen, maar heb niet echt veel kaas gegeten van performance issues met dBexpress en mySQL.

    Ik vraag me dus af waar snelheid te winnen is zoals:
    * Moet ik anders overweg gaan met mySQL ? Ik zie wel wat over transactie werk, maar daar begrijp ik niet zoveel van.
    * Is een ander Delphi component dan dBExpress sneller dan wat ik nu gebruik ?

    Alvast dank. Indien iets niet duidelijk, dan vermeld ik natuurlijk graag meer info.
    Try to find ET ? -> go to Seti@Netherlands to join our quest

  2. #2

    Re: dBExpress met mySQL performance

    M'n statistieken programma, haalt de hele mySQL tabel op, en die gooi ik in een TList. Daarna parse ik een groot XML bestand en werk alle items bij in de TList. Dit gaat natuurlijk supersnel
    Voor hoelang gaat dit snel? Als ik jou goed begrijp groeit deze tabel alleen maar.

    Daarna bekijk ik ieder record in de TList of deze gewijzigd is en zo ja, dan update ik het record in de mySQL database. Daarnaast wordt een insert query gedaan in een history tabel.

    Het gaat me om het laatste. De update en insert querys op mySQL lijken mega traag (tenminste voor mijn gevoel). Ik zie dat m'n server niet op maximale belasting loopt tijdens dit proces (dat vind ik wel raar) en de software doet ongeveer 40 querys per seconde. (op een P4-2GHz)
    Ik ga ervan uit dat de inserts in de historie-tabel snel gaan, aangezien hier nauwelijks controle voor nodig is.

    De updates kunnen traag worden als je geen gebruik maakt van een effectieve index. Heb je een PK aangemaakt op de tabel?

    Ik zie wel wat over transactie werk, maar daar begrijp ik niet zoveel van.
    Je zou kunnen kijken wat het verschil is tussen elke update/insert per modificatie in een aparte transactie t.o.v. de hele batch in 1 transactie.

    Groeten,
    Arno
    Nederlandse Firebird Nieuwsgroep
    Hoe meer je weet, hoe meer je beseft hoe weinig je weet.

  3. #3

    Re: dBExpress met mySQL performance

    @ArnoBrinkman

    Het is niet zoveel data, maar er is veel opzoek werk. Vandaar het binnenhalen naar memory. op dit moment zijn het een slordige 100.000 records, maar ook al zijn het 10M records, dan is het nog steeds geen probleem. met een binary search heb je je record wat je moet wijzigen zeer snel te pakken.

    Ik zal timen welke query het traagst is. Het is wel zo dat zowat ieder veld in de history tabel een index heeft, dus het inserten heeft een relatief hoge load omdat alle indexen bijgewerkt moeten worden.

    De werktabel heeft inderdaad een PK, op ID.
    Last edited by Dees; 19-Nov-04 at 22:48.
    Try to find ET ? -> go to Seti@Netherlands to join our quest

  4. #4
    Member
    Join Date
    Mar 2003
    Location
    Netherlands
    Posts
    638
    Je MySQL configuratie file (my.ini) zou hiermee te maken kunnen hebben. Ik heb gelezen dat er meerdere my* files meegeleverd worden (my-small, my-medium, my-large, my-huge). Volgens mij moet je de my-huge gebruiken als je my configuratie file. Dit scheelde bij mij al aanzienlijk in mijn performance.


    verder kan je nog even op deze site kijken over de configuratie en testen van je server.

    http://www.samspublishing.com/articl...29406&seqNum=2
    Alex "leXTer" van der Vliet
    Delphi Programmer

    And may the source be with you.

  5. #5

    Re: Re: Re: dBExpress met mySQL performance

    Het is niet zoveel data, maar er is veel opzoek werk. Vandaar het binnenhalen naar memory. op dit moment zijn het een slordige 100.000 records, maar ook al zijn het 10M records, dan is het nog steeds geen probleem. met een binary search heb je je record wat je moet wijzigen zeer snel te pakken.
    Met "Voor hoelang gaat dit snel?" bedoelde ik het overhalen van de records vanaf MySQL naar de clientapplicatie.
    Kun je deze "opzoek bewerkingen" dan niet direct in een query doen?

    Ik zal timen welke query het traagst is. Het is wel zo dat zowat ieder veld in de history tabel een index heeft, dus het inserten heeft een relatief hoge load omdat alle indexen bijgewerkt moeten worden.
    Veel indexen kan de insert inderdaad welk flink beinvloeden en dit zou wel eens de vertragende factor kunnen zijn. Dus is de vraag zijn daadwerkelijk al deze indexen nodig?

    De werktabel heeft inderdaad een PK, op ID.
    Dan zou dit voor de update geen probleem mogen zijn (Ik ga er dan vanuit dat MySQL voor de PK een index aanmaakt of op een andere manier snel behandeld).

    Groeten,
    Arno
    Nederlandse Firebird Nieuwsgroep
    Hoe meer je weet, hoe meer je beseft hoe weinig je weet.

  6. #6
    • Overbodige quotes verwijderd, zie Quoten

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. verbinding maken met mysql database
    By sneezesnoeze in forum Databases
    Replies: 6
    Last Post: 23-Dec-04, 17:41
  2. Replies: 26
    Last Post: 05-Oct-04, 23:13
  3. dbExpress met Mysql
    By Zwakstroom in forum Databases
    Replies: 4
    Last Post: 23-Aug-04, 00:32
  4. Remote MySQL connecten met DBExpress
    By bartje in forum Databases
    Replies: 2
    Last Post: 07-Jun-04, 16:02
  5. Replies: 10
    Last Post: 26-Mar-04, 16:40

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •