If the DBMS does not automate the process of determining storage locations and data access paths, physical design requires well-developed technical skills and a precise knowledge of the physical-level details of the database, operating system, and hardware used by the database, fortunately, the more recent versions of relational DBMS software hide most of the complexities inherent the physical design phase.
The database designer must make decisions that affect data access time by fine-tuning the buffer pool size, the page frame size, and so on. These decisions will be based on the selected hardware platform and the DBMS.
Indexes created for all primary keys will increase access speed when you use foreign key references in tables. This is done automatically by the DBMS.
Indexes can also be created for all alternate search keys. For example, if we want to search the LAB-ASSITANCE table by user name, we should create an index for the LALNAME attribute. Example: CERATE INDEX LA001 ON LAB-ASSISTANT )LA-LNAME);
Indexes can be created for all secondary access keys used in report or queries. For example, an inventory movement report is likely to be ordered by inventory type and item ID. Therefore, an index is create for the ITEM table: CREATE INDEX INV002 ON ITEM(TY-GROUP, ITEM-ID);
Indexes can be created for all columns used in the WHERE, ORDER BY, and GROUP BY clauses of a SELECT statement