Database server concepts
To administer the database server, you must understand key concepts around storage, configuration, logging, CPU use, shared memory use, and automation.
- Root dbspace
- The root dbspace is the initial dbspace, or storage space, that the database server creates. The root dbspace contains reserved pages and internal tables that describe and track all physical and logical units of storage. The root dbspace is the default location for logical logs, the physical log, databases, and temporary tables. The database server cannot run without the root dbspace.
- Configuration (onconfig) file
- The database server requires a configuration file. Typically, the name of the configuration file is onconfig.server_name. The onconfig file contains configuration parameters that control database server properties. The database server reads the onconfig file during startup, shutdown, and for some operations while the server is running. Many configuration parameters can also be set dynamically while the database server is running.
- Virtual processors
- A virtual processor runs multiple threads to perform queries and other tasks. The operating system schedules virtual processors as CPU processes. Multiple virtual processors run multiple threads in parallel. Virtual processors are divided into classes where each class is dedicated to processing a specific type of thread.
- Logical logs
- The database server contains several logical log files that record data manipulation operations for logged databases, data definition operations for all databases, and administrative information such as checkpoint records and additions and deletions of chunks. A logical log is similar to a transaction log in other relational database management systems.
- Physical log
- The physical log stores the before-images of pages. "Before images" are images of pages that are taken before the database server records the changed pages on disk. The unmodified pages are available in case the database server fails or a backup procedure requires the pages to provide an accurate snapshot of the database server data.
- Buffer pool
- The buffer pool contains buffers that cache pages from disk in shared memory. Operations on pages that are cached run faster than operations on pages that must be retrieved from disk.
- Caches
- The database server uses caches to store information in shared memory instead of performing a disk read or another operation to obtain the information. Caching information improves performance for multiple queries that access the same tables.
- Scheduler
- The Scheduler is a subsystem that runs a set of tasks at predefined times or as determined internally by the server. Tasks are SQL statements can either collect information or run a specific operation. Some tasks are internal to the database server and run automatically. You can enable other tasks, if appropriate. You can also create your own tasks and schedule when they are run.
- System databases
- The system databases contain information about the database server. The sysmaster database contains the system-monitoring interface (SMI) tables. The SMI tables provide information about the state of the database server. The sysadmin database contains the tables that contain and organize the Scheduler tasks and sensors, store data that is collected by sensors, and record the results of Scheduler jobs and SQL administration API functions.