db blocksize bigger than filesystem blocksize - any issues?

Calvin Crawford

New Member
my employer wants to move from 10.1C on HP-UX to 10.2B on Linux. The HP-UX filesystem blocksize is 8k, while the Linux is 4k. Are there any known issues using a db blocksize of 8k on the 4k blocksize filesystem? Or should I simply make the db blocksize the same as the filesystem? ... the physical disk is some kind of SAN.
 
The conservitive approach is db blocksize = filesystem blocksize (see kb# 26191), I have always used 4k on linux but know of others that have used 8k.
 

rstanciu

Member
you can use the 8k block-size with no problem. If you change to linux chage the HDD drive to
a intel solid-state-drive SSD, you can find 250 Go for 450 Eur ... this can change your live ....
boot on 20 seconds, database access 45.000 record/reads per second,
hdparm -t /dev/sda9
Timing buffered disk reads: 596 MB in 3.01 seconds = 198.14 MB/sec
:)
and if you hava a SATA 6Go .... you get the double ... 300 Mb/sec !
 

Calvin Crawford

New Member
thanks for the replies.... I'd love to have solid state drives, but that's not happening. The main issue is that the records/block for my data areas will have to be updated if I go with 4k blocksize, tables may need to go in different storage areas, area sizes to be estimated, etc., etc.
 

TomBascom

Curmudgeon
From a performance perspective using a larger db blocksize than the FS size is ok. And larger blocks are generally better from a performance POV.

You want to avoid having a smaller db block than the FS block because it will result in multiple OS IO ops for ever db IO op. And that is a very, very bad thing.

It is very rare but, when using a larger db block than the OS block there is a small chance that only part of a db block will be written if the OS crashes and the FS buffers are not completely flushed (it would take a power outage or hardware failure for this to happen). This is known as a "torn page". In older releases of Progress you might not know that this had happened for quite a while (if ever). In newer releases there are block checksums which will detect it. I have not personally ever encountered this. And I almost always use 8k blocks.
 

TomBascom

Curmudgeon
It would be detected when accessed. Repair is offline, via dbrpr.

It is mostly a theoretical possibility. Your db could also be corrupted by a metorite crashing through the roof... as always the best protection is after-imaging with archives stored in a remote location.
 
Top