Write a document that covers the following items:
- Database design - plan your database design
- Calculate the initial database sizing
- Transaction analysis - How will we access the database?
- Look at the most frequent access paths
- What are the requirements for response times?
- Hardware configuration
- Initial performance thoughts - Will all of the data fit into the RAM?
- Choose the operating system and filesystem types
- How do we partition the disk?
- Localization plan
- Decide the server encoding, locale, and time zone
- Access and security plan
- Identify client systems and specify the required drivers
- Create roles according to a plan for access control
- Specify pg_hba.conf
- Maintenance plan - Who will keep it working? How?
- Availability plan - consider the availability requirements
- checkpoint_timeout (for more details on this parameter, see the Understanding and controlling crash recovery recipe in Chapter 11, Backup and Recovery)
- Plan your backup mechanism, and test it
- High-availability plan
- Decide which form of replication you'll need, if any