|
|
|||||||||
|
|||||||||
| |||||||||
|
|
|
| |||||||||
![]() |
|
|
«
Previous Thread
|
Next Thread
»
|
Thread Tools | Search this Thread | Rate Thread | Display Modes |
|
#1
|
|||
|
|||
|
Firebird performance
Hi all, I have a table with an index based on a specific integer field. Daily I add and delete many records and I see performance after some days slowing down.
Many records have this field with value 7 and I noticed a very bad performance when I execute a query that contains "where MYFIELD = 7". I sweep my database every 20000 transaction as default but seems it isn't so useful... Performance is perfect if I do a backup and restore but my service is a SMS delivery and it works 24/24 7/7 ... so I'd like to avoid stopping the service and all clients (about 30 programs connected to this db). Any idea? Thank you. |
|
#2
|
||||
|
||||
|
Do you keep fresh stats for that database/specific table?
Have you considered larger page size?
__________________
My blog about OpenSource Databases PDF tutorials about OSS databases, DBMonster ... Please contribute to Open Source Development, fill bug reports!!! Developer Shed eSupport Commented my.ini/my.cnf (PLEASE ADD YOUR OWN CONFIG TRICK) Understanding SQL Joins An introduction to database normalization Natural or Surrogate key Custom ordering for your results Correlated and uncorrelated subqueries Last edited by pabloj : March 28th, 2008 at 12:19 PM. |
|
#3
|
|||
|
|||
|
if the number of distinct values for some column is small, then index cann't be solution to performance problems. Increase of pages size can help - because index can keep the records with similare values together and this decreases the number of constly I/O operations.
Anyway - maybe design should be changed a bit: separate transaction processing from data which are used for perparation of reports. |
![]() |
| Viewing: Dev Shed Forums > Databases > Firebird SQL Development > Firebird performance |
| Thread Tools | Search this Thread |
| Display Modes | Rate This Thread |
|
|
|
|
|