Book Image

PostgreSQL 9.6 High Performance

By : Ibrar Ahmed, Gregory Smith
Book Image

PostgreSQL 9.6 High Performance

By: Ibrar Ahmed, Gregory Smith

Overview of this book

<p>Database administrators and developers spend years learning techniques to configure their PostgreSQL database servers for optimal performance, mostly when they encounter performance issues. Scalability and high availability of the database solution is equally important these days. This book will show you how to configure new database installations and optimize existing database server installations using PostgreSQL 9.6.</p> <p>You will start with the basic concepts of database performance, because all successful database applications are destined to eventually run into issues when scaling up their performance. You will not only learn to optimize your database and queries for optimal performance, but also detect the real performance bottlenecks using PostgreSQL tools and some external tools. Next, you will learn how to benchmark your hardware and tune your operating system. Optimize your queries against the database with the help of right indexes, and monitor every layer, ranging from hardware to queries. Moving on, you will see how connection pooling, caching, partitioning, and replication will help you handle increasing database workloads.</p> <p>Achieving high database performance is not easy, but you can learn it by using the right guide—PostgreSQL 9.6 High Performance.</p>
Table of Contents (25 chapters)
Title Page
Credits
About the Authors
About the Reviewer
www.PacktPub.com
Customer Feedback
Preface

Cumulative and live views


There are two types of information you can monitor from the database. The main statistics are stored into counters. These counters start at 0 when you create a new database cluster, increasing with all activity related to that statistic. Counters in this category include pg_stat_database, pg_stat_bgwriter, and all of the other views whose names start with pg_stat.

The exact way that you reset these counters back to 0 again varies quite a bit based on your PostgreSQL version:

  • 8.1: pg_stat_reset() resets all statistics. Enabling stats_reset_on_server_start in the postgresql.conf file will reset everything each time the server is started.
  • 8.2: pg_stat_reset() resets just block and row level statistics. Enabling stats_reset_on_server_start allows resetting all statistics, including the database and cluster wide ones, each time the server is started.
  • 8.3, 8.4: pg_stat_reset() resets all statistics just for the current database. There is no way to reset cluster wide statistics...