Storage Focus: Databases and Storage Architecture
All too often I have seen the process of determining what storage and configuration settings should be assigned to a database become a completely disjointed process. The database architect is typically a database expert and knows little about the low-level details of storage configuration. Combine this with the fact that the storage administrators and architects often know little about how the database will use the underlying storage and what the requirements and best configuration are for the database, index files, the log files, and of course, the file system and volume manager.
This typically results in an inefficient use of storage resources that can increase the overall cost and reduce the performance to a point where you might not be able to meet your requirements. Add to this the ever looming budget and the fact that management needs things to work efficiently with the available budget. This article will address some of the issues that DBAs and storage architecture must work together on when addressing the architecture problems.
The hardware and software requirements for end-to-end storage architecture for most databases are:
- Control files
- Table space
- Index files
- Redo logs
- Operating System
- File system and volume manager (this may not be relevant if the database runs on a raw device)
- Host bus adapters (HBAs)
- Storage hardware
Each of these areas has multiple components, features, and functions that can have a significant impact on the overall performance.