![]() | |
#21
| |||
| |||
|
|
I ran a simple dumb test, actually it seems that lowering fillfactor improves update speed and decrease insert speed as it shuld be in theory, it is a matter of tradeoffs between update speed and read speed. |
|
Perhaps for maintenance updatates on a large part of big tables as I am thinking about it is better to drop related indexes, do the update and then rebuild the index. |
#22
| |||
| |||
|
|
Anselmo Canfora wrote: I ran a simple dumb test, actually it seems that lowering fillfactor improves update speed and decrease insert speed as it shuld be in theory, it is a matter of tradeoffs between update speed and read speed. a) There's no such thing as a free lunch. b) While I expect tradeoffs, your statement confuses me: First you write that INSERT speed decreased, then you seem to refer to that as "read speed". |
|
I would expect slight decreases in INSERT speed (more empty space is written out to disk) *and* (initially) in the speed of table scans (more empty space is read in from disk). |
|
Perhaps for maintenance updatates on a large part of big tables as I am thinking about it is better to drop related indexes, do the update and then rebuild the index. I agree. Yours, Laurenz Albe |
#23
| |||
| |||
|
|
Anselmo Canfora wrote: I ran a simple dumb test, actually it seems that lowering fillfactor improves update speed and decrease insert speed as it shuld be in theory, it is a matter of tradeoffs between update speed and read speed. a) There's no such thing as a free lunch. b) While I expect tradeoffs, your statement confuses me: First you write that INSERT speed decreased, then you seem to refer to that as "read speed". |
|
I would expect slight decreases in INSERT speed (more empty space is written out to disk) *and* (initially) in the speed of table scans (more empty space is read in from disk). |
|
Perhaps for maintenance updatates on a large part of big tables as I am thinking about it is better to drop related indexes, do the update and then rebuild the index. I agree. Yours, Laurenz Albe |
#24
| |||
| |||
|
|
I would expect slight decreases in INSERT speed (more empty space is written out to disk) *and* (initially) in the speed of table scans (more empty space is read in from disk). I believe the decrease in index scans should be persistent, because one has to traverse void index areas too |
#25
| |||
| |||
|
|
Anselmo Canfora wrote: I would expect slight decreases in INSERT speed (more empty space is written out to disk) *and* (initially) in the speed of table scans (more empty space is read in from disk). I believe the decrease in index scans should be persistent, because one has to traverse void index areas too If you lower fillfactor on the table and not on the index, an index scan will not be affected at all. |

#26
| |||
| |||
|
|
psql (8.4.2, server 8.3.9) WARNING: psql version 8.4, server version 8.3. Some psql features might not work. Type "help" for help. news_archive=# set search_path=news,public; SET Time: 30.157 ms news_archive=# select count(*) from news_segments; count ---------- 16192541 (1 row) Time: 2173193.882 ms news_archive=# |
#27
| |||
| |||
|
|
On 2010-01-27, Mladen Gogala <no (AT) email (DOT) here.invalid> wrote: psql (8.4.2, server 8.3.9) WARNING: psql version 8.4, server version 8.3. Some psql features might not work. Type "help" for help. news_archive=# set search_path=news,public; SET Time: 30.157 ms news_archive=# select count(*) from news_segments; count ---------- 16192541 (1 row) Time: 2173193.882 ms news_archive=# It seems like you have some other issues here: jura=# select count(*) from transactions; count ---------- |
#28
| |||
| |||
|
|
It seems like you have some other issues here: jura=# select count(*) from transactions; count ---------- Essentially, you are right. I do have other problems, the primary of which is the size of the table. The table contains text column with a GIN index on top of it. The other problem is that I have a "toy" platform with a slow local disk, not a premium SAN which can deal with I/O requests much faster than a 3 years old local drive which is, coincidentally, the only drive at the machine. I did, however, solve the problems, to a degree. Creating the primary keys and vacuuming helped a lot. Also, I increased the file system read-ahead to 2048 (blockdev command) and increased the shared buffers. I've cut the time down to a third. |
#29
| |||
| |||
|
|
I never issue DELETE on that table, UPDATES are seldom, and I rely on autovaccum - it's working quite well in 8.4. |
#30
| |||
| |||
|
|
On Thu, 18 Feb 2010 18:48:03 +0000, Mario Splivalo wrote: I never issue DELETE on that table, UPDATES are seldom, and I rely on autovaccum - it's working quite well in 8.4. Unfortunately, I cannot upgrade to 8.4. There is no pljava for that version and my developers say that they cannot live without Java. Such situation doesn't make me happy but that's the business decision, CIO has sanctioned it and there is no further debate. |
![]() |
| Thread Tools | |
| Display Modes | |
| |