Configuring and Tuning Databases on the Solaris Platform
by Allan N. Packer, (c) Sun Microsystems Press, 2002
To my knowledge, this book is the first attempt at tackling database tuning for multiple databases. Since many aspects of database architecture and tuning are common across the major products, I have separated out generic topics such as database concepts, hardware architectures, the buffer cache and the optimizer. I hope that the opportunity to see the big picture and to compare and contrast the different implementations outweighs the inconvenience of having to follow cross-references at times.
This book is also the first published guide to database configuring and tuning for Solaris users (although most of the principles and much of the detail should be applicable to other UNIX systems). I trust that it will enhance your experience of running databases on the Solaris Operating Environment.
My aim has been to identify the highlights. An overwhelming array of statistics are reported by Solaris and the various databases; rather than attempting to define every statistic and tunable parameter, I focus on those likely to have the most impact on common database workloads.
Finally, no one person could claim a full mastery of all the topics covered in this book, and I certainly make no such assertion on my own behalf. I have tried to distill the knowledge I have acquired during my 12 years with Sun--5 years in the field organization as a Systems Engineer specializing in databases, followed by 7 years in Database Engineering (now Performance and Availability Engineering)--and add to it the research and insights of my colleagues. I was fortunate to join an engineering group that actively pursued engineering relationships with all four database vendors. This involvement has offered me direct participation in performance projects with the engineering groups at Oracle in Redwood Shores, IBM at the DB2 Development Lab in Toronto, and Sybase at Emeryville. My contact with Informix has been peripheral, and in writing the Informix chapters I have relied heavily on the wisdom and experience of my colleagues.
I have tried to go into enough depth to satisfy those looking for detailed configuration and tuning suggestions, while still making the content accessible to people who are not database or Solaris gurus.
Provides background information on Sun's relationship with database vendors and Sun's Database Engineering organization, and discusses the optimizations made to the Solaris Operating Environment to improve database performance and availability. The section concludes with a review of the major hardware architectures (including those not supported by Sun) and their implications for database deployment.
Addresses database concepts, database workloads, and explores in detail the database optimizer and the role and sizing of the database buffer cache. Separate chapters discuss the architecture of Oracle, Sybase, Informix XPS, and DB2 for Solaris; for these chapters I provide a consistent format to make it easier for those wanting to contrast an unfamiliar database with one that is more familiar.
Focuses on system sizing and configuring the CPUs, memory, and networks of a database server. The section concludes with a detailed discussion of data layout technologies, strategies, and recommendations.
Deals with the issues and tools associated with performance monitoring and tuning, and offers a drill-down method for identifying and resolving system bottlenecks. Detailed configuration and tuning advice is provided for each of Oracle, Sybase, Informix XPS, and DB2 for Solaris, and the section concludes with a discussion on how to monitor applications and what metrics to collect.
The final section of the book covers benchmarks and the role of Java technology in databases. The first chapter examines the pros and cons of industry-standard benchmarks and investigates the process and potential pitfalls involved in developing your own benchmark. The final chapter explores direct support for Java technology in databases and the Java 2 Enterprise Edition (J2EE) technology that is central to the burgeoning middleware market.
An appendix lists sources for supplementary information.