Storage space creation and management
You can create multiple storage spaces to store different types of objects, such as, data, indexes, logs, temporary objects, instead of storing everything in the root dbspace. The way that you distribute the data on disks affects the performance of the database server. You can configure the database server to both automatically minimize the storage space that data requires and automatically expand storage space as needed. You can segregate storage and processing resources among multiple client organization by configuring multitenancy.
A storage space is composed of one or more chunks. The maximum chunk size is 4 TB. You can have up to 32766 chunks in an instance.
After the database server is initialized, you can create storage spaces such as dbspaces and sbspaces. Use the onspaces utility to create storage spaces and chunks.
The following storage spaces are the most common:
- dbspace
- Stores databases, tables, logical-log files, and the physical log file.
- sbspace
- Stores smart large objects. Smart large objects consist of CLOB (character large object) and BLOB (binary large object) data types. User-defined data types can also use sbspaces. Some features of Informix® require sbspaces, such as Enterprise Replication, J/Foundation, spatial data types, and basic text search queries. In some cases, sbspaces are created automatically when needed.
- plogspace
- Stores the physical log. If you do not create a plogspace, the physical log is stored in a dbspace.
Other types of storage spaces store specialized types of data.
If you create a server during installation, some storage spaces are created automatically.
Automatically minimizing storage space
You can minimize the amount of space that data needs by configuring automatic data compression and consolidation. You can compress data, consolidate and return free space, and merge extents. You can specify how frequently each of the operations occurs.
You can automatically rotate message logs to limit the amount of space for the logs.
Automatically extending storage space
After you create storage spaces, you can configure the server to automatically extend each storage space as needed. You create a storage pool of entries for available raw devices, cooked files, and directories, and you make sure that the SP_AUTOEXPAND configuration parameter set to the default value of 1. All types of storage spaces except external spaces (extspaces) are automatically expanded.
Automatically managing the location of data
You can automate the process of deciding where to locate databases, tables, and indexes. You can enable the database server to choose the most optimal location for databases, table, and indexes, and to automatically fragment tables. Instead of creating a new database in the root dbspace by default, the database server chooses the location by favoring non-critical spaces, spaces that have the most efficient page size, and other factors. The database server fragments new tables by round-robin and adds more fragments when necessary as the table grows.
You can override the automatic behavior by specifying a location for a database or table.