The page size you choose can affect the performance of your database. There are advantages and disadvantages to whichever page size you choose.
While smaller pages hold less information and may force less efficient use of space, particularly if you insert rows that are slightly more than half a page in size, small page sizes allow SQL Anywhere to run with fewer resources because it can store more pages in a cache of the same size. Small pages are particularly useful if your database must run on small computers with limited memory. They can also help in situations when you use your database primarily to retrieve small pieces of information from random locations.
By contrast, a larger page size help SQL Anywhere read databases more efficiently. Large page sizes also tend to benefit large databases, and queries that perform sequential table scans. Often, the physical design of disks permits them to retrieve fewer large blocks more efficiently than many small ones. Other benefits of large page sizes include improving the fan-out of your indexes, thereby reducing the number of index levels, and allowing tables to include more columns.
Keep in mind that larger page sizes have additional memory requirements. As well, extremely large page sizes (16 KB or 32 KB) are not recommended for most applications unless you can be sure that a large database server cache is always available. Investigate the effects of increased memory and disk space on performance characteristics before using 16 KB or 32 KB page sizes.
The database server's memory usage is proportional to the number of databases loaded, and the page size of the databases. It is strongly recommended that you do performance testing (and testing in general) when choosing a page size. Then choose the smallest page size (>= 4 KB) that gives satisfactory results. It is particularly important to pick the correct (and reasonable) page size if a large number of databases are going to be started on the same server.
You cannot change the page size of an existing database. Instead you must create a new database and use the -p option of dbinit to specify the page size. For example, the following command creates a database with 4 KB pages.
dbinit -p 4096 new.db |
You can also use the CREATE DATABASE statement with a PAGE SIZE clause to create a database with the new page size. See CREATE DATABASE statement.
For more information about larger page sizes, see Setting a maximum page size.
If you are working with Windows, a minimum page size of 4 KB allows the database server to read a large contiguous region of database pages on disk directly into the appropriate place in cache, bypassing the 64 KB buffer entirely. This feature can significantly improve performance.
Scattered reads are not used for files on remote computers, or for files specified using a UNC name such as \\mycomputer\myshare\mydb.db.
Send feedback about this page via email or DocCommentXchange | Copyright © 2008, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.0 |