org.apache.ws.jaxme.sqls.db2
public interface TableSpace
Interface of a DB2 TableSpace. An object of this kind is used to
create a CREATE TABLESPACE ...
statement.
A TableSpace can be associated to a {@link BufferPool}. If it is, it inherits certain settings from the {@link BufferPool}, in particular the {@link #getPageSize() pageSize}.
A tablespace needs to know where data is stored physically. DB2 distinguishes between two possible data locations: System managed (Files handled by the operating system) and Database managed (Files handled by the database or Devices). In the latter case the database will preallocate space for the files or devices, giving a slightly faster operation. On the other hand, database managed files cannot grow automatically.
A tablespaces data location is called container. Any tablespace must have at least one container. Note, that one tablespace cannot have both system managed containers and database managed containers. If the first container is system managed, then all containers are, and vice versa.
Nested Class Summary | |
---|---|
static interface | TableSpace.Container Interface of a TableSpace Container. |
static interface | TableSpace.DatabaseManagedContainer Interface of a database managed container. |
static interface | TableSpace.Name |
static interface | TableSpace.SystemManagedContainer Interface of a system managed container, aka operating system file. |
static class | TableSpace.Type A DB2 TableSpace type. |
Method Summary | |
---|---|
BufferPool | getBufferPool() Returns the {@link BufferPool} used by this {@link TableSpace}. |
Iterator | getContainers() Returns an {@link Iterator} to the table spaces containers. |
Long | getExtentSize() Returns the number of {@link #getPageSize() pageSize} pages that will be written to a container before skipping to the next container. |
TableSpace.Name | getName() Returns the tablespace name. |
Number | getOverhead() Returns the I/O controller overhead and disk seek and latency time, in milliseconds. |
PageSize | getPageSize() Returns the tablespaces page size. |
Long | getPrefetchSize() Returns the number of {@link #getPageSize() pageSize} pages that will be read from the tablespace when data prefetching is being performed. |
DB2SQLFactory | getSQLFactory() Returns the {@link org.apache.ws.jaxme.sqls.SQLFactory} that created this
|
Number | getTransferRate() Returns the transfer rate, which is defined as the time to read one page into memory, in milliseconds. |
TableSpace.Type | getType() Returns the tablespace type. |
Boolean | hasDroppedTableRecovery() Returns whether dropped tables in the specified tablespace may be
recovered using the |
boolean | isPredefined() Returns whether this TableSpace is predefined by the system. |
TableSpace.Container | newDatabaseManagedContainerInDevice(String pDevice, long pNumPages) Creates a new database managed container with the given raw operating system device and the given number of pages. |
TableSpace.Container | newDatabaseManagedContainerInFile(String pFile, long pNumPages) Creates a new database managed container with the given file or device and the given number of pages. |
TableSpace.Container | newSystemManagedContainer(String pFile) Creates a new system managed container with the given file. |
void | setBufferPool(BufferPool pBufferPool) Sets the {@link BufferPool} used by this {@link TableSpace}. |
void | setDroppedTableRecovery(Boolean pRecoverable) Sets whether dropped tables in the specified tablespace may be
recovered using the |
void | setExtentSize(Long pSize) Sets the number of {@link #getPageSize() pageSize} pages that will be written to a container before skipping to the next container. |
void | setOverhead(Number pOverhead) Sets the I/O controller overhead and disk seek and latency time, in milliseconds. |
void | setPageSize(PageSize pSize) Sets the tablespaces page size. |
void | setPrefetchSize(Long pSize) Sets the number of {@link #getPageSize() pageSize} pages that will be read from the tablespace when data prefetching is being performed. |
void | setTransferRate(Number pNumber) Sets the transfer rate, which is defined as the time to read one page into memory, in milliseconds. |
Returns the {@link BufferPool} used by this {@link TableSpace}.
Returns an {@link Iterator} to the table spaces containers. Any element in the {@link java.util.Iterator} is an instance of {@link org.apache.ws.jaxme.sqls.db2.TableSpace.Container}, which was created using {@link #newSystemManagedContainer(String)}, {@link #newDatabaseManagedContainerInFile(String, long)}, or {@link #newDatabaseManagedContainerInDevice(String, long)}.
Returns the number of {@link #getPageSize() pageSize} pages that will be written to a container before skipping to the next container. The database manager cycles repeatedly through the containers as data is stored. Defaults to null, in which case the DB2 configuration parameter DFT_EXTENT_SZ applies.
Returns the tablespace name. Tablespace names must be unique in the database.
Returns the I/O controller overhead and disk seek and latency time, in milliseconds. The number should be an average for all containers that belong to the tablespace, if not the same for all containers. This value is used to determine the cost of I/O during query optimization. Defaults to null, in which case the DB2 default (24.1) applies.
Returns the tablespaces page size. If the TableSpace
has an associated {@link BufferPool}, returns the BufferPool's page
size. Otherwise returns the page size configured via
{@link #setPageSize(PageSize)}.
Returns the number of {@link #getPageSize() pageSize} pages that will be read from the tablespace when data prefetching is being performed. Prefetching reads in data needed by a query prior to it being referenced by the query, so that the query need not wait for I/O to be performed. Defaults to null, in which case the DB2 configuration parameter DFT_PREFETCH_SZ applies.
Returns the {@link org.apache.ws.jaxme.sqls.SQLFactory} that created this
TableSpace
object.
Returns the transfer rate, which is defined as the time to read one page into memory, in milliseconds. The number shouldbe an average for all containers that belong to the tablespace, if not the same for all containers. This value is used to determine the cost of I/O during query optimization. Defaults to null, in which case the DB2 default (0.9) applies.
Returns the tablespace type.
Returns whether dropped tables in the specified tablespace may be
recovered using the RECOVER TABLE ON
option of the
ROLLFORWARD
command. This clause can only be specified
for a {@link Type#REGULAR} tablespace (SQLSTATE 42613). For more
information on recovering dropped tables, refer to the Administration
Guide. Defaults to null, in which case the DB2 default applies.
Returns whether this TableSpace is predefined by the system.
Creates a new database managed container with the given raw operating system device and the given number of pages.
Creates a new database managed container with the given file or device and the given number of pages.
Creates a new system managed container with the given file.
Sets the {@link BufferPool} used by this {@link TableSpace}.
Sets whether dropped tables in the specified tablespace may be
recovered using the RECOVER TABLE ON
option of the
ROLLFORWARD
command. This clause can only be specified
for a {@link Type#REGULAR} tablespace (SQLSTATE 42613). For more
information on recovering dropped tables, refer to the Administration
Guide. Defaults to null, in which case the DB2 default applies.
Sets the number of {@link #getPageSize() pageSize} pages that will be written to a container before skipping to the next container. The database manager cycles repeatedly through the containers as data is stored. Defaults to null, in which case the DB2 configuration parameter DFT_EXTENT_SZ applies.
Sets the I/O controller overhead and disk seek and latency time, in milliseconds. The number should be an average for all containers that belong to the tablespace, if not the same for all containers. This value is used to determine the cost of I/O during query optimization. Defaults to null, in which case the DB2 default (24.1) applies.
Sets the tablespaces page size. This value will be ignored,
if the TableSpace
has an associated {@link BufferPool}.
Sets the number of {@link #getPageSize() pageSize} pages that will be read from the tablespace when data prefetching is being performed. Prefetching reads in data needed by a query prior to it being referenced by the query, so that the query need not wait for I/O to be performed. Defaults to null, in which case the DB2 configuration parameter DFT_PREFETCH_SZ applies.
Sets the transfer rate, which is defined as the time to read one page into memory, in milliseconds. The number shouldbe an average for all containers that belong to the tablespace, if not the same for all containers. This value is used to determine the cost of I/O during query optimization. Defaults to null, in which case the DB2 default (0.9) applies.