> On 07/05/11 7:10 AM, Charles Polisher wrote: > > In general and with some simplifiying assumptions, a database > > consists of statically pre-allocated files. The process of extending > > the files happens at birth. The relative speed over the lifetime > > of the database is dominated by raw I/O, not by extending the files. > > thats not even remotely true of many databases. PostgreSQL, for > example, the files are extended as they are updated/inserted, as are the > WAL files. The PostgreSQL wiki seems to say that database tables are allocated in 1GB extents. In workloads with which I am familiar, with an RDBMS the extents don't bounce around all that much, i.e. the vast majority of writes do not result in a change to the underlying database's storage allocation. Once in a while a new extent is allocated. http://www.postgresql.org/docs/current/static/storage-file-layout.html I suppose there could be exceptions, but I haven't run across one personally. The "WAL" files you refer to are apparently database transaction logs. According to the wiki, these too are allocated in extents (WAL segments) of 16MB each. I am not persuaded that the point I was making was erroneous. -- Charles Polisher