|
Category: ASE: Data Storage
Page, Logical Page, Adaptive Server Page, Sybase Page
A page is the basic unit for data storage in
ASE.
The size of a page, which is maintained by ASE, is set during installation of ASE to
2K (prior to version 12.5), 4K, 8K or 16K betragen (starting with version 12.5.0). After successfully
installing ASE Server the page size cannot be changed.
The size of a page together with the
size of the buffer cache
determines the
memory
used and the i/o throughput of the server.
Pages store
database
objects.
Depending on their usage, certain page types are differentiated.
Page Types
-
data pages
– store data rows for
tables.
-
index pages
- store index rows for all types of
indexes.
-
large object pages
– (large object = LOB) LOB pages store data for
columns
defined with a
text
and
image
datatype
as well as for all
Java
off-row columns.
-
Global allocation map pages
or GAM pages
- contain allocation bitmaps for
databases.
-
Object allocation map pages
or OAM pages
- OAM pages contain information on used
extents
for an
object.
Every table or index contains at least one OAM page and tracks information on the location of
pages for each object in the database.
-
Allocation pages
- allocation pages contain information on space usage and objects
in groups of 256 pages.
-
Control pages
- Control pages govern the space usages for
partitioned tables. Every
partition
is administered by an own control page.
Pages: Important Commands and Topics
The size of pages controls the storage utilisation in ASE.
Every
allocation page,
object allocation map (OAM) page,
data page,
index page,
LOB page
is based on a logical page size defined when installing ASE.
If ASE was installed with 16K page size, all pages types are 16K in size and consequently,
all page types will take up 16KB of physical storage. Additionally, large OAM pages (in this case 16K OAM pages)
contain more
OAM
entries than smaller (8K, 4K oder 2K) pages.
Page headers/overhead and page sizes
All pages contain a so-called header or overhead. The header stores
information like "previous page pointer" in an
object,
"next page pointer" in an object, "page id Nummer", the "Object id" to which a page
belongs, or data for storage maintenance of the page. The size of the header depends on the
locking scheme:
-
The header of an
APL
2K page ist 32
bytes
large. This leaves 2016 bytes for storing data.
-
The header of a
DOL
2K page is 44 bytes. In addition, the bottom end of a DOL-page contains a 2-byte timestamp, used for
database consistency checks. This leaves 2002 bytes for storing data.
As the size of the page header does not vary for different page sizes, the relative amount of space
available for storing data is larger for larger page sizes than for the standard 2K page size.
|