Copyright 2015 NTT corp. All Rights Reserved.



Similar documents
Development of the Incorporating System of Automatic Contrast Injector and Radiology Information System (RIS) for Contrast-enhanced CT Examination

A Shared-nothing cluster system: Postgres-XC

CN=Monitor Installation and Configuration v2.0

Managing SAS Web Infrastructure Platform Data Server High-Availability Clusters

HTSQL is a comprehensive navigational query language for relational databases.

owncloud 8 and DigitalOcean Matthew Davidson Bluegrass Linux User Group 03/09/2015

My experience of Ruby Education in Taiwan

レッドハット 製 品 プライスリスト Red Hat Enterprise Linux 製 品 (RHEL for HPC) 更 新 :2015 年 4 22

Agenda. About Gengo. Our PostgreSQL usage. pgpool-ii. Lessons

Linux Foundation Automotive Summit - Yokohama, Japan

Analyzing Plan Diagrams of Data Query Optimizers

Keep an eye on your PostgreSQL clusters

Tohoku University and the Great East Japan Earthquake Our Role, Responsibility and Mission. Susumu SATOMI President, Tohoku University

Install Cacti Network Monitoring Tool on CentOS 6.4 / RHEL 6.4 / Scientific Linux 6.4

= 注 意 = 更 新 型 番 (RN) 複 数 年 型 番 (F3 F5)も 対 象 に 含 みます 改 訂 日 付 SKU Description No.

Comparing SQL and NOSQL databases

ENHANCEMENTS TO SQL SERVER COLUMN STORES. Anuhya Mallempati #

Time series IoT data ingestion into Cassandra using Kaa

Explaining the Postgres Query Optimizer

CN=Monitor Installation and Configuration v3.2

MyOra 3.0. User Guide. SQL Tool for Oracle. Jayam Systems, LLC

Getting started with PostgreSQL

Gleb Arshinov, Alexander Dymo PGCon 2010 PostgreSQL as a secret weapon for high-performance Ruby on Rails applications

Data Mining for Risk Management in Hospital Information Systems

Getting Started with SandStorm NoSQL Benchmark

Trial version of GADD Dashboards Builder

Significant Factors Affecting Cross-Border Logistics through the Port of Laredo

OPENPROJECT INSTALL ON CENTOS 7 RUNNING IN VMWARE PLAYER

What the EU -Japan Centre for Industrial Cooperation can offer to the EU and Japanese Companies? Silviu Jora, General Manager (EU side)

IP Litigation in Europe and in Germany

PostgreSQL database performance optimization. Qiang Wang

Technology Development of GIS Software in Cloud Era. Dr. Wang Kanghong, VP SuperMap Software Co., Ltd Tokyo 17 th Nov. 2015

MySQL Storage Engines

Optimisation of the ATLAS track reconstruction software for Run-2. A. Salzburger, CERN

PostgreSQL 9.0 Streaming Replication under the hood Heikki Linnakangas

Amazon Redshift & Amazon DynamoDB Michael Hanisch, Amazon Web Services Erez Hadas-Sonnenschein, clipkit GmbH Witali Stohler, clipkit GmbH

LifeKeeper for Linux PostgreSQL Recovery Kit. Technical Documentation

Security through/under Diversity

Looking through the crystal ball: Identifying future security, privacy and social risks in a prospective IoT scenario

Installation Guide. Copyright (c) 2015 The OpenNMS Group, Inc. OpenNMS SNAPSHOT Last updated :19:20 EDT

In and Out of the PostgreSQL Shared Buffer Cache

Specify the location of an HTML control stored in the application repository. See Using the XPath search method, page 2.

Database migration. from Sybase ASE to PostgreSQL. Achim Eisele and Jens Wilke. 1&1 Internet AG

Net/FSE Installation Guide v1.0.1, 1/21/2008

Database Performance Report Using PivotalVRP

How, What, and Where of Data Warehouses for MySQL

Maintenance Training Concepts for the Wind Industry. BZEE Academy GmbH. 26 th of February, 2013, Tokyo

Toad for Oracle 8.6 SQL Tuning

Which Database is Better for Zabbix? PostgreSQL vs MySQL. Yoshiharu Mori SRA OSS Inc. Japan

レッドハット 製 品 プライスリスト 標 準 価 格. Red Hat Enterprise Linux 製 品 (RHEL Server)

Sharding with postgres_fdw

Applying Life Cycle Assessment to Drinking Water Treatment

Connecting Software. CB Mobile CRM Windows Phone 8. User Manual

Current Situation of Research Nurse Education and Future Perspectives in Japan

DNS (Domain Name System) is the system & protocol that translates domain names to IP addresses.

DB2 for Linux, UNIX, and Windows Performance Tuning and Monitoring Workshop

Panasonic AC-DC Power Supply Design Support Service

Database Administration with MySQL

レッドハット 製 品 プライスリスト Red Hat Enterprise Linux2013 新 製 品 (ベースサブスクリプション) 更 新 :2015 年 4 22

Managing rights in PostgreSQL

How To Run A Standby On Postgres (Postgres) On A Slave Server On A Standby Server On Your Computer (Mysql) On Your Server (Myscientific) (Mysberry) (

Evaluator s Guide. PC-Duo Enterprise HelpDesk v5.0. Copyright 2006 Vector Networks Ltd and MetaQuest Software Inc. All rights reserved.

Introduction of Japan Science and Technology Agency (JST)

Databases for text storage

Postgres Plus xdb Replication Server with Multi-Master User s Guide

MyOra 3.5. User Guide. SQL Tool for Oracle. Kris Murthy

NetBrain Enterprise Edition 6.0a NetBrain Server Backup and Failover Setup

ROLAP with Column Store Index Deep Dive. Alexei Khalyako SQL CAT Program Manager

HBase Schema Design. NoSQL Ma4ers, Cologne, April Lars George Director EMEA Services

Check Please! What your Postgres database wishes you would monitor. / Presentation

Administering your PostgreSQL Geodatabase

Synchronization Agent Configuration Guide

EDB-Report. 最 新 Web 脆 弱 性 トレンドレポート( ) ~ Exploit-DB( 公 開 されている 内 容 に 基 づいた 脆 弱 性 トレンド 情 報 です

SQL Server Replication Guide

Counterexample-guided Design of Property-based Dynamic Software Updates

Using Apache Derby in the real world

Online signature API. Terms used in this document. The API in brief. Version 0.20,

Monitor and Manage Your MicroStrategy BI Environment Using Enterprise Manager and Health Center

WebSphere Business Monitor V6.2 KPI history and prediction lab

Document and entity information

Informatica Data Director Performance

Using IBM dashdb With IBM Embeddable Reporting Service

NEC Storage Performance Monitor/Optimizer User s Manual

Programa de Actualización Profesional ACTI Oracle Database 11g: SQL Tuning Workshop

IBM DB2: LUW Performance Tuning and Monitoring for Single and Multiple Partition DBs

DBA Best Practices: A Primer on Managing Oracle Databases. Leng Leng Tan Vice President, Systems and Applications Management

Towards Fast SQL Query Processing in DB2 BLU Using GPUs A Technology Demonstration. Sina Meraji sinamera@ca.ibm.com

Replicating to everything

Connecting Software Connect Bridge - Mobile CRM Android User Manual

Vormetric Data Security

1Z0-117 Oracle Database 11g Release 2: SQL Tuning. Oracle

Monitoring PostgreSQL database with Verax NMS

Transcription:

2.1. Example configuration Web Browser Web Server Repository DB pg_stats_reporter stastinfo agent statsinfo agent statsinfo agent Target server(instance)s

2.2. pg_statsinfo in detail pg_statsinfo agent Repository DB Target server

2.3. pg_stats_reporter in detail pg_stats_reporter Web Browser Web Server Repository DB

3. Similar products (3/3)

Autovacuum Overview Database Schema Table Count Avg Avg Avg Avg Max Avg remain index removed remain duration duration Cancels deadd scans rows rows (sec) (sec) dbt2 public district 59 0.119 99.356 121.8 20.373 0.027 0.74 2 dbt2 pg_ca.. pg_st.. 1 1 61 491 0 0.06 0.06 0 dbt2 pg_to.. pg_to.. 5 1 56.4 81 4.4 1.03 4.79 0 dbt2 public wareh.. 36 0.028 56.167 21.389 10.528 0.005 0.13 0 Analyze Overview Database Total Avg Max Max Schema Table Count duration duration duration Last analyzed Cancels modified (sec) (sec) (sec) rows dbt2 public wareh.. 60 2.17 0.036 0.052015/3/10 17:12 0 69 dbt2 public district 60 1.18 0.02 0.132015/3/10 17:12 2 246 dbt2 public new_.. 1 066 0.66 066 0.66 0662015/3/10 0.662015/3/10 16:51 0 8963

4.2. New features latest version

4.2.1. New features - Plan Statistics Query ID User Database Plan count Calls Total time Time/call Block rd time Blockwr time 79661 horiguti postgres 3 285998 2044.929 0.007 0 0 UPDATE pgbench_branches SET bbalance = bbalance = +? + WHERE? bid bid =?; =?; Calls Total time Time/call Block r time Block w time First call Last call Plan ID Plan (child row) 2361498583 164673 1236.273 273 0.008 008 0 0 2015/6/9 18:01 2015/6/9 18:09 Update on pgbench_branches (cost=4.14..8.16 rows=1 width=370) -> Bitmap Heap Scan on on pgbench_branches (cost=4.14..8.16 rows=1 rows=1 width=370) Recheck Cond: (bid = = 2) 2) -> Bitmap p Index Scan using g pgbench _ branches p pkey _pkey (cost=0.00..4.14 rows=1 rows=1 width=0) width=0) Index Cond: (bid = = 2) 2) 273038856 69201 492.439 0.007 0 0 2015/6/9 18:05 2015/6/9 18:09 Update on pgbench_branches (cost=0.13..8.15 rows=1 width=370) -> Index Scan using pgbench_branches_pkey on pgbench_branches on (cost=0.13..8.15 rows=1 rows=1 width=370) Index Cond: (bid = = 2) 2) 4132319976 52124 316.217 0.006 0 0 2015/6/9 17:59 2015/6/9 18:01 Update on pgbench_branches (cost=0.00..8.09 rows=1 width=370) -> Seq Scan on pgbench_branches (cost=0.00..8.09 rows=1 width=370) Filter: (bid = 4) 4)

4.5. New features I/O Peak Graph

5. What is pg_store_plans? http://osdn.jp/projects/pgstoreplans/

5.1. Why pg_store_plans {"p":{"t":"b","!":"u","n":"snapshot","a":"snapshot","1":27.63,"2":35.65," 3":1,"4":33,"l":[{"t":"z","g":"p","h":"I","q":"InitPlan 2 (returns $1)", "1":27 1:27.34, "2":27 2:27.35, "3":1 3:1, "4":4 4:4, "l":[{"t":"h" l:[{t:h, "h":"i "q":"initplan h:i, q:initplan 1 (returns $0)","n":"pg_namespace","a":"pg_namespace","1":0.00, "2":1.10,"3":1,"4":4,"5":"(nspname = 'statsrepo'::name)"},{"t":"h", "h":"o","n":"pg_class","a":"pg_class","1":0.00,"2":25.79,"3":90,"4":4, "5":"(relnamespace = $0)"}]},{"t":"i","h":"m","d":"f", "i":"snapshot_pkey","n":"snapshot","a":"snapshot","1":0.28,"2":8.30, "3":1,"4":33,"8":"(snapid = 3165::bigint)"}]}} An Example of Internal Format for Plan Strings

5.2. pg_store_plans in detail queryid - hash of the query calculated by pg_store_plans planid - hash of the plan queryid_stat_statements - query ID calculated by pg_stat_statements, if any plan - plan representation first_call - time when the plan executed first last_call - time when the plan is most recently executed

Installation

of pg_statsinfo shared_preload_libraries = pg_statsinfo Repository DB Target server

6.2. Typical installation of pg_statsinfo pg_statsinfo.repository_server = hostname=si_repos dbname=repos user=repos shared_preload_libraries = 'pg_statsinfo, pg_stat_statements, pg_store_plans log_checkpoints = yes log_autovacuumacuu _ min_duration = 0 track_io_timing = yes track_functions = all track_activities = yes Repository DB@si_repos Target server

6.3. Installation of pg_stats_reporter # yum install httpd php php-pgsql php-intl php-cli # rpm ivh pg_ stats_ reporter-3.1.0-el7.noarch.rpm p # firewall-cmd -zone=public -add-service=http # setsebool -P httpd_can_network_connect_db 1 # semanage fcontext -a -t httpd_sys_rw_content_t /var/www/pg_stats_reporter_lib/cache # semanage fcontext -a -t httpd_sys_rw_content_t /var/www/pg_stats_reporter_lib/compiled # restorecon -v /var/www/pg_stats_reporter_lib/cache # restorecon -v /var/www/pg_stats_reporter_lib/compiled reporter

7. Demonstration ## Installing binaries of php, httpd, PostgreSQL, ## pg_stat_statements, pg_store_plans, ## pg_statsinfo/pg_stats_reporter firewall-cmd zone=public -add-service=http setsebool -P httpd_can_network_connect_db 1 semanage fcontext -a -t httpd_sys_rw_content_t /var/www/pg_stats_reporter_lib/cache semanage age fcontext t -a -t httpd_sys_ rw_content t_t t /var/www/pg / /pg_stats_ reporter _ lib/compiled restorecon -v /var/www/pg_stats_reporter_lib/cache restorecon -v /var/www/pg_stats_reporter_lib/compiled

7.1 Demo 1 Quick Run # 1. initialize the cluster initdb # 2. add the following to $PGDATA/postgresql.conf shared_preload_libraries = 'pg_statsinfo, pg_store_plans, pg_stat_statements' pg_statsinfo.sampling_interval = 1s pg_statsinfo.snapshot_interval = 3s log_line_prefix='%m [%p] ' log_checkpoints = yes log_autovacuum_min_duration = 0 track_io_timing = yes track_functions = all track_activities = yes # 3. start the server and register the additional extensios. pg_ctl start t -w psql postgres -c 'create extension pg_store_plans' psql postgres -c 'create extension pg_stat_statements # 4. run a benchmark pgbench -i postgres pgbench -c 10 -T 30 postgres # - Then, stop pg_statsinfo pg_statsinfo --stop -d postgres ## 5. pg_stats_reporter shows data in the time resolution of 1 minutes, ## so tweak the timestamps of the snapshots to fit the limitaion. psql postgres -c 'update statsrepo.snapshot set time = now() - ((select max(snapid) from statsrepo.snapshot) * 60)::text::interval + (snapid * 60)::text::interval;'

7.2. Creating offline report # Creating offline report for the whole period where snapshots populate. pg_stats_reporter O myreport

Thank you ご 静 聴 ありがとうございました