Suche senden
Hochladen
PostgreSQL 9.6 新機能紹介
•
16 gefällt mir
•
17,844 views
Masahiko Sawada
Folgen
NTTデータ オープンソースンDAY 2016の講演で使用したPostgreSQL 9.6の新機能紹介資料です。
Weniger lesen
Mehr lesen
Software
Melden
Teilen
Melden
Teilen
1 von 48
Jetzt herunterladen
Downloaden Sie, um offline zu lesen
Empfohlen
PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
PostgreSQL: XID周回問題に潜む別の問題
PostgreSQL: XID周回問題に潜む別の問題
NTT DATA OSS Professional Services
オンライン物理バックアップの排他モードと非排他モードについて ~PostgreSQLバージョン15対応版~(第34回PostgreSQLアンカンファレンス...
オンライン物理バックアップの排他モードと非排他モードについて ~PostgreSQLバージョン15対応版~(第34回PostgreSQLアンカンファレンス...
NTT DATA Technology & Innovation
Vacuum徹底解説
Vacuum徹底解説
Masahiko Sawada
オンライン物理バックアップの排他モードと非排他モードについて(第15回PostgreSQLアンカンファレンス@オンライン 発表資料)
オンライン物理バックアップの排他モードと非排他モードについて(第15回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
PostgreSQLのリカバリ超入門(もしくはWAL、CHECKPOINT、オンラインバックアップの仕組み)
PostgreSQLのリカバリ超入門(もしくはWAL、CHECKPOINT、オンラインバックアップの仕組み)
Hironobu Suzuki
PostgreSQLの関数属性を知ろう
PostgreSQLの関数属性を知ろう
kasaharatt
まずやっとくPostgreSQLチューニング
まずやっとくPostgreSQLチューニング
Kosuke Kida
Weitere ähnliche Inhalte
Was ist angesagt?
[B23] PostgreSQLのインデックス・チューニング by Tomonari Katsumata
[B23] PostgreSQLのインデックス・チューニング by Tomonari Katsumata
Insight Technology, Inc.
PostgreSQL13でのpg_basebackupの改善について(第13回PostgreSQLアンカンファレンス@オンライン)
PostgreSQL13でのpg_basebackupの改善について(第13回PostgreSQLアンカンファレンス@オンライン)
NTT DATA Technology & Innovation
Inside vacuum - 第一回PostgreSQLプレ勉強会
Inside vacuum - 第一回PostgreSQLプレ勉強会
Masahiko Sawada
YugabyteDBを使ってみよう(NewSQL/分散SQLデータベースよろず勉強会 #1 発表資料)
YugabyteDBを使ってみよう(NewSQL/分散SQLデータベースよろず勉強会 #1 発表資料)
NTT DATA Technology & Innovation
PostgreSQLの運用・監視にまつわるエトセトラ
PostgreSQLの運用・監視にまつわるエトセトラ
NTT DATA OSS Professional Services
押さえておきたい、PostgreSQL 13 の新機能!!(Open Source Conference 2021 Online/Hokkaido 発表資料)
押さえておきたい、PostgreSQL 13 の新機能!!(Open Source Conference 2021 Online/Hokkaido 発表資料)
NTT DATA Technology & Innovation
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...
NTT DATA Technology & Innovation
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
PostgreSQLレプリケーション10周年!徹底紹介!(PostgreSQL Conference Japan 2019講演資料)
PostgreSQLレプリケーション10周年!徹底紹介!(PostgreSQL Conference Japan 2019講演資料)
NTT DATA Technology & Innovation
監査要件を有するシステムに対する PostgreSQL 導入の課題と可能性
監査要件を有するシステムに対する PostgreSQL 導入の課題と可能性
Ohyama Masanori
PostgreSQLでスケールアウト
PostgreSQLでスケールアウト
Masahiko Sawada
統計情報のリセットによるautovacuumへの影響について(第39回PostgreSQLアンカンファレンス@オンライン 発表資料)
統計情報のリセットによるautovacuumへの影響について(第39回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
[Postgre sql9.4新機能]レプリケーション・スロットの活用
[Postgre sql9.4新機能]レプリケーション・スロットの活用
Kosuke Kida
PostgreSQLの統計情報について(第26回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQLの統計情報について(第26回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
今秋リリース予定のPostgreSQL11を徹底解説
今秋リリース予定のPostgreSQL11を徹底解説
Masahiko Sawada
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
トランザクション処理可能な分散DB 「YugabyteDB」入門(Open Source Conference 2022 Online/Fukuoka 発...
トランザクション処理可能な分散DB 「YugabyteDB」入門(Open Source Conference 2022 Online/Fukuoka 発...
NTT DATA Technology & Innovation
PostgreSQL 15 開発最新情報
PostgreSQL 15 開発最新情報
Masahiko Sawada
アーキテクチャから理解するPostgreSQLのレプリケーション
アーキテクチャから理解するPostgreSQLのレプリケーション
Masahiko Sawada
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
NTT DATA Technology & Innovation
Was ist angesagt?
(20)
[B23] PostgreSQLのインデックス・チューニング by Tomonari Katsumata
[B23] PostgreSQLのインデックス・チューニング by Tomonari Katsumata
PostgreSQL13でのpg_basebackupの改善について(第13回PostgreSQLアンカンファレンス@オンライン)
PostgreSQL13でのpg_basebackupの改善について(第13回PostgreSQLアンカンファレンス@オンライン)
Inside vacuum - 第一回PostgreSQLプレ勉強会
Inside vacuum - 第一回PostgreSQLプレ勉強会
YugabyteDBを使ってみよう(NewSQL/分散SQLデータベースよろず勉強会 #1 発表資料)
YugabyteDBを使ってみよう(NewSQL/分散SQLデータベースよろず勉強会 #1 発表資料)
PostgreSQLの運用・監視にまつわるエトセトラ
PostgreSQLの運用・監視にまつわるエトセトラ
押さえておきたい、PostgreSQL 13 の新機能!!(Open Source Conference 2021 Online/Hokkaido 発表資料)
押さえておきたい、PostgreSQL 13 の新機能!!(Open Source Conference 2021 Online/Hokkaido 発表資料)
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQLレプリケーション10周年!徹底紹介!(PostgreSQL Conference Japan 2019講演資料)
PostgreSQLレプリケーション10周年!徹底紹介!(PostgreSQL Conference Japan 2019講演資料)
監査要件を有するシステムに対する PostgreSQL 導入の課題と可能性
監査要件を有するシステムに対する PostgreSQL 導入の課題と可能性
PostgreSQLでスケールアウト
PostgreSQLでスケールアウト
統計情報のリセットによるautovacuumへの影響について(第39回PostgreSQLアンカンファレンス@オンライン 発表資料)
統計情報のリセットによるautovacuumへの影響について(第39回PostgreSQLアンカンファレンス@オンライン 発表資料)
[Postgre sql9.4新機能]レプリケーション・スロットの活用
[Postgre sql9.4新機能]レプリケーション・スロットの活用
PostgreSQLの統計情報について(第26回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQLの統計情報について(第26回PostgreSQLアンカンファレンス@オンライン 発表資料)
今秋リリース予定のPostgreSQL11を徹底解説
今秋リリース予定のPostgreSQL11を徹底解説
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
トランザクション処理可能な分散DB 「YugabyteDB」入門(Open Source Conference 2022 Online/Fukuoka 発...
トランザクション処理可能な分散DB 「YugabyteDB」入門(Open Source Conference 2022 Online/Fukuoka 発...
PostgreSQL 15 開発最新情報
PostgreSQL 15 開発最新情報
アーキテクチャから理解するPostgreSQLのレプリケーション
アーキテクチャから理解するPostgreSQLのレプリケーション
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
Ähnlich wie PostgreSQL 9.6 新機能紹介
ISUCON夏期講習2015_2 実践編
ISUCON夏期講習2015_2 実践編
SATOSHI TAGOMORI
[db tech showcase Tokyo 2015] B15:最新PostgreSQLはパフォーマンスが飛躍的に向上する!? - PostgreSQ...
[db tech showcase Tokyo 2015] B15:最新PostgreSQLはパフォーマンスが飛躍的に向上する!? - PostgreSQ...
Insight Technology, Inc.
FPGAによる大規模データ処理の高速化
FPGAによる大規模データ処理の高速化
Kazunori Sato
Prometech Particleworks on Rescale
Prometech Particleworks on Rescale
Rescale Japan株式会社
[db tech showcase Tokyo 2016] B31: Spark Summit 2016@SFに参加してきたので最新事例などを紹介しつつデ...
[db tech showcase Tokyo 2016] B31: Spark Summit 2016@SFに参加してきたので最新事例などを紹介しつつデ...
Insight Technology, Inc.
楽天のプライベートクラウドを支えるフラッシュストレージ
楽天のプライベートクラウドを支えるフラッシュストレージ
Rakuten Group, Inc.
次世代の高速メモリストレージ利用に向けたソフトウェアのモダナイゼーション
次世代の高速メモリストレージ利用に向けたソフトウェアのモダナイゼーション
NTT Software Innovation Center
NTT DATA と PostgreSQL が挑んだ総力戦
NTT DATA と PostgreSQL が挑んだ総力戦
NTT DATA OSS Professional Services
PostgreSQLでpg_bigmを使って日本語全文検索 (MySQLとPostgreSQLの日本語全文検索勉強会 発表資料)
PostgreSQLでpg_bigmを使って日本語全文検索 (MySQLとPostgreSQLの日本語全文検索勉強会 発表資料)
NTT DATA OSS Professional Services
Spring I/O 2017 報告 ThymeleafのWebFlux対応
Spring I/O 2017 報告 ThymeleafのWebFlux対応
Takuya Iwatsuka
PostgreSQLによるデータ分析ことはじめ
PostgreSQLによるデータ分析ことはじめ
Ohyama Masanori
Gmo media.inc 第9回西日本ossの普及を考える会
Gmo media.inc 第9回西日本ossの普及を考える会
Dai Utsui
Sparkパフォーマンス検証
Sparkパフォーマンス検証
BrainPad Inc.
押さえておきたい、PostgreSQL 13 の新機能!! (PostgreSQL Conference Japan 2020講演資料)
押さえておきたい、PostgreSQL 13 の新機能!! (PostgreSQL Conference Japan 2020講演資料)
NTT DATA Technology & Innovation
[D20] 高速Software Switch/Router 開発から得られた高性能ソフトウェアルータ・スイッチ活用の知見 (July Tech Fest...
[D20] 高速Software Switch/Router 開発から得られた高性能ソフトウェアルータ・スイッチ活用の知見 (July Tech Fest...
Tomoya Hibi
PostgreSQL10を導入!大規模データ分析事例からみるDWHとしてのPostgreSQL活用のポイント
PostgreSQL10を導入!大規模データ分析事例からみるDWHとしてのPostgreSQL活用のポイント
NTT DATA OSS Professional Services
実践!DBベンチマークツールの使い方
実践!DBベンチマークツールの使い方
Fujishiro Takuya
pg_bigmを用いた全文検索のしくみ(前編)
pg_bigmを用いた全文検索のしくみ(前編)
NTT DATA OSS Professional Services
[db tech showcase Tokyo 2014] B33: 超高速データベースエンジンでのビッグデータ分析活用事例 by 株式会社日立製作所 ...
[db tech showcase Tokyo 2014] B33: 超高速データベースエンジンでのビッグデータ分析活用事例 by 株式会社日立製作所 ...
Insight Technology, Inc.
MySQL Technology Cafe No3
MySQL Technology Cafe No3
DAISUKE INAGAKI
Ähnlich wie PostgreSQL 9.6 新機能紹介
(20)
ISUCON夏期講習2015_2 実践編
ISUCON夏期講習2015_2 実践編
[db tech showcase Tokyo 2015] B15:最新PostgreSQLはパフォーマンスが飛躍的に向上する!? - PostgreSQ...
[db tech showcase Tokyo 2015] B15:最新PostgreSQLはパフォーマンスが飛躍的に向上する!? - PostgreSQ...
FPGAによる大規模データ処理の高速化
FPGAによる大規模データ処理の高速化
Prometech Particleworks on Rescale
Prometech Particleworks on Rescale
[db tech showcase Tokyo 2016] B31: Spark Summit 2016@SFに参加してきたので最新事例などを紹介しつつデ...
[db tech showcase Tokyo 2016] B31: Spark Summit 2016@SFに参加してきたので最新事例などを紹介しつつデ...
楽天のプライベートクラウドを支えるフラッシュストレージ
楽天のプライベートクラウドを支えるフラッシュストレージ
次世代の高速メモリストレージ利用に向けたソフトウェアのモダナイゼーション
次世代の高速メモリストレージ利用に向けたソフトウェアのモダナイゼーション
NTT DATA と PostgreSQL が挑んだ総力戦
NTT DATA と PostgreSQL が挑んだ総力戦
PostgreSQLでpg_bigmを使って日本語全文検索 (MySQLとPostgreSQLの日本語全文検索勉強会 発表資料)
PostgreSQLでpg_bigmを使って日本語全文検索 (MySQLとPostgreSQLの日本語全文検索勉強会 発表資料)
Spring I/O 2017 報告 ThymeleafのWebFlux対応
Spring I/O 2017 報告 ThymeleafのWebFlux対応
PostgreSQLによるデータ分析ことはじめ
PostgreSQLによるデータ分析ことはじめ
Gmo media.inc 第9回西日本ossの普及を考える会
Gmo media.inc 第9回西日本ossの普及を考える会
Sparkパフォーマンス検証
Sparkパフォーマンス検証
押さえておきたい、PostgreSQL 13 の新機能!! (PostgreSQL Conference Japan 2020講演資料)
押さえておきたい、PostgreSQL 13 の新機能!! (PostgreSQL Conference Japan 2020講演資料)
[D20] 高速Software Switch/Router 開発から得られた高性能ソフトウェアルータ・スイッチ活用の知見 (July Tech Fest...
[D20] 高速Software Switch/Router 開発から得られた高性能ソフトウェアルータ・スイッチ活用の知見 (July Tech Fest...
PostgreSQL10を導入!大規模データ分析事例からみるDWHとしてのPostgreSQL活用のポイント
PostgreSQL10を導入!大規模データ分析事例からみるDWHとしてのPostgreSQL活用のポイント
実践!DBベンチマークツールの使い方
実践!DBベンチマークツールの使い方
pg_bigmを用いた全文検索のしくみ(前編)
pg_bigmを用いた全文検索のしくみ(前編)
[db tech showcase Tokyo 2014] B33: 超高速データベースエンジンでのビッグデータ分析活用事例 by 株式会社日立製作所 ...
[db tech showcase Tokyo 2014] B33: 超高速データベースエンジンでのビッグデータ分析活用事例 by 株式会社日立製作所 ...
MySQL Technology Cafe No3
MySQL Technology Cafe No3
Mehr von Masahiko Sawada
PostgreSQL 15の新機能を徹底解説
PostgreSQL 15の新機能を徹底解説
Masahiko Sawada
行ロックと「LOG: process 12345 still waiting for ShareLock on transaction 710 afte...
行ロックと「LOG: process 12345 still waiting for ShareLock on transaction 710 afte...
Masahiko Sawada
Transparent Data Encryption in PostgreSQL
Transparent Data Encryption in PostgreSQL
Masahiko Sawada
PostgreSQL 12の話
PostgreSQL 12の話
Masahiko Sawada
OSS活動のやりがいとそれから得たもの - PostgreSQLコミュニティにて -
OSS活動のやりがいとそれから得たもの - PostgreSQLコミュニティにて -
Masahiko Sawada
Transparent Data Encryption in PostgreSQL and Integration with Key Management...
Transparent Data Encryption in PostgreSQL and Integration with Key Management...
Masahiko Sawada
Bloat and Fragmentation in PostgreSQL
Bloat and Fragmentation in PostgreSQL
Masahiko Sawada
Database Encryption and Key Management for PostgreSQL - Principles and Consid...
Database Encryption and Key Management for PostgreSQL - Principles and Consid...
Masahiko Sawada
Vacuum more efficient than ever
Vacuum more efficient than ever
Masahiko Sawada
Vacuumとzheap
Vacuumとzheap
Masahiko Sawada
Parallel Vacuum
Parallel Vacuum
Masahiko Sawada
OSS 開発ってどうやっているの? ~ PostgreSQL の現場から~
OSS 開発ってどうやっているの? ~ PostgreSQL の現場から~
Masahiko Sawada
PostgreSQL10徹底解説
PostgreSQL10徹底解説
Masahiko Sawada
FDW-based Sharding Update and Future
FDW-based Sharding Update and Future
Masahiko Sawada
What’s new in 9.6, by PostgreSQL contributor
What’s new in 9.6, by PostgreSQL contributor
Masahiko Sawada
pg_bigmと類似度検索
pg_bigmと類似度検索
Masahiko Sawada
pg_bigmを触り始めた人に伝えたいこと
pg_bigmを触り始めた人に伝えたいこと
Masahiko Sawada
Introduction VAUUM, Freezing, XID wraparound
Introduction VAUUM, Freezing, XID wraparound
Masahiko Sawada
XID周回問題に潜む別の問題
XID周回問題に潜む別の問題
Masahiko Sawada
PostgreSQL共有バッファと関連ツール
PostgreSQL共有バッファと関連ツール
Masahiko Sawada
Mehr von Masahiko Sawada
(20)
PostgreSQL 15の新機能を徹底解説
PostgreSQL 15の新機能を徹底解説
行ロックと「LOG: process 12345 still waiting for ShareLock on transaction 710 afte...
行ロックと「LOG: process 12345 still waiting for ShareLock on transaction 710 afte...
Transparent Data Encryption in PostgreSQL
Transparent Data Encryption in PostgreSQL
PostgreSQL 12の話
PostgreSQL 12の話
OSS活動のやりがいとそれから得たもの - PostgreSQLコミュニティにて -
OSS活動のやりがいとそれから得たもの - PostgreSQLコミュニティにて -
Transparent Data Encryption in PostgreSQL and Integration with Key Management...
Transparent Data Encryption in PostgreSQL and Integration with Key Management...
Bloat and Fragmentation in PostgreSQL
Bloat and Fragmentation in PostgreSQL
Database Encryption and Key Management for PostgreSQL - Principles and Consid...
Database Encryption and Key Management for PostgreSQL - Principles and Consid...
Vacuum more efficient than ever
Vacuum more efficient than ever
Vacuumとzheap
Vacuumとzheap
Parallel Vacuum
Parallel Vacuum
OSS 開発ってどうやっているの? ~ PostgreSQL の現場から~
OSS 開発ってどうやっているの? ~ PostgreSQL の現場から~
PostgreSQL10徹底解説
PostgreSQL10徹底解説
FDW-based Sharding Update and Future
FDW-based Sharding Update and Future
What’s new in 9.6, by PostgreSQL contributor
What’s new in 9.6, by PostgreSQL contributor
pg_bigmと類似度検索
pg_bigmと類似度検索
pg_bigmを触り始めた人に伝えたいこと
pg_bigmを触り始めた人に伝えたいこと
Introduction VAUUM, Freezing, XID wraparound
Introduction VAUUM, Freezing, XID wraparound
XID周回問題に潜む別の問題
XID周回問題に潜む別の問題
PostgreSQL共有バッファと関連ツール
PostgreSQL共有バッファと関連ツール
PostgreSQL 9.6 新機能紹介
1.
Copyright©2016 NTT corp.
All Rights Reserved. 祝リリース!PostgreSQL 9.6新機能紹介! ~長年待ち望まれてきた機能から、NTTデータ、NTTOSSセン タがホンキで開発貢献した機能までトコトン解説~ 日本電信電話株式会社 NTTオープンソースソフトウェアセンタ 澤田 雅彦 @NTTデータオープンソースDAY 2016 (11/16)
2.
2Copyright©2016 NTT corp.
All Rights Reserved. 1. PostgreSQLについて簡単に紹介 2. PostgreSQL9.6新機能紹介 3. 今後のPostgreSQL 4. まとめ 目次
3.
3Copyright©2016 NTT corp.
All Rights Reserved. • PostgreSQL Global Development Groupが主体となり開発 • 1994年にSQLをサポートし、1996年にPostgreSQLに名前 を変えた • 今年20周年 • 最新バージョンは9.6.1 (10/27リリース) • 同時に9.1系がEOL PostgreSQLとは?
4.
4Copyright©2016 NTT corp.
All Rights Reserved. • Uberの記事 (7月26日) • “Why Uber Engineering Switched from Postgres to MySQL” • 初PGConf.ASIA 2016開催予定 (12月1,2,3日@秋葉原) • アジアを横断したPostgreSQLの国際カンファレンス • 第二回PgDay Asia 2017開催予定(2017年3月@シンガポール) • アジアを横断したPostgreSQLの国際カンファレンス 最近話題になっているPostgreSQL
5.
5Copyright©2016 NTT corp.
All Rights Reserved. PostgreSQL 9.6新機能紹介
6.
6Copyright©2016 NTT corp.
All Rights Reserved. 2011 2012 2013 PostgreSQLは、年1回のメジャーバージョンアップをし ています。 PostgreSQLのこれまで 9.1 (2011-09) ・同期レプリケーション 9.2 (2012-09) ・大幅な性能向上 9.3 (2013-09) ・マテリアライズドビューの実装 ・更新可能ビューの実装 ・フェイルオーバ時間の大幅な短縮 ・DDLトリガの実装 2014 9.4(2014-12) ・更新ログの書き出し性能向上 ・マテリアライズドビューの改善 ・遅延レプリケーションの実装 ・ロジカルデコーディングの実装 2015 9.6(2016-9) ・パラレルクエリ ・VACUUM性能向上 ・マルチ同期レプリケーション ・FDW強化 本日ご紹介部分 2016 9.5(2016-1) ・UPSERTの実装 ・BRINの実装 ・Row-Level Securityの実装 ・pg_rewindのコア機能化 ・同時実行性の改善
7.
7Copyright©2016 NTT corp.
All Rights Reserved. 主要機能を解説します 性能向上 • パラレルクエリ VACUUMの性能、運用性向上 • Freeze Map • VACUUM進捗 レプリケーション • マルチ同期レプリケーション 外部データ連携(FDW) • FDW強化
8.
8Copyright©2016 NTT corp.
All Rights Reserved. パラレルクエリ (Robert Haas, Amit Kapila, David Rowley, many others) “Parallelism” by Maciej Meller
9.
9Copyright©2016 NTT corp.
All Rights Reserved. 多くのユーザが待ち望んでいた機能の一つ https://postgresql.uservoice.com/forums/21853-general
10.
10Copyright©2016 NTT corp.
All Rights Reserved. CPU パラレルクエリってどんな機能? -これまでのPG - サーバプロセス 巨大なテーブル SELECT * FROM tbl; • 1つのSQLを1つのプロセスでしか処理できない • 巨大なテーブルを扱うと、処理に時間がかかってしまう • 特に集計、結合処理を行うと1プロセスにかかる負担は増大する スキャン
11.
11Copyright©2016 NTT corp.
All Rights Reserved. CPU CPU CPU サーバプロセス パラレルクエリってどんな機能? 巨大なテーブル SELECT * FROM tbl; サーバプロセス サーバプロセス スキャン スキャン スキャン 連携 連携 • 1つのSQLを複数のプロセスで分担して処理できる • 1つのSQL処理速度が向上する • CPUリソースを効率的に使うことができる • パラレルクエリはシーケンシャルスキャン、結合処理、集計処理で有効
12.
12Copyright©2016 NTT corp.
All Rights Reserved. パラレルクエリ実現には以下の機能が必要 ① 実際に処理を行うプロセスを制御する機能 ② プロセス間のコミュニケーション領域を作る機能 ③ 並列処理中は一貫した情報を見えるようにする機能 ④ 並列結果をまとめる機能 ⑤ 並列処理を意識した実行計画を立てる PostgreSQLコミュニティが長年準備してきた機能の一つ PG9.3 (2013) PG9.4 (2014) ① ワーカープロセスを 動的に起動可能 ② 共有メモリを動的 に確保可能 ③ ワーカープロセス で一貫した情報 がみれる機能 ④ 並列処理結果をまと める機能 ⑤ 並列処理を意識した 実行計画を立てる ① 独自のワーカー プロセスが定義、 起動可能 完成 PG9.5 (2015) PG9.6 (2016)
13.
13Copyright©2016 NTT corp.
All Rights Reserved. 9.6でパラレル(並列)処理できるのは、 検索と集計と結合 何がパラレルになる? Seq Scan Nested Loop Join Hash Join avg() min() max() count() など
14.
14Copyright©2016 NTT corp.
All Rights Reserved. これまでの集計処理 集計 (Agg) 集計 結果 テーブルスキャン (SeqScan) テーブル =# SELECT count(*) FROM test_table; 1プロセスで スキャン、集計を 実施
15.
15Copyright©2016 NTT corp.
All Rights Reserved. 集計処理の並列化 部分集計 (Partial Agg) 部分集計 (Partial Agg) 部分集計 (Partial Agg) 集める (Gather) 集計 結果 集計 結果 集計 結果 集計 結果 テーブルスキャン (Partial SeqScan) テーブルスキャン (Partial SeqScan) テーブルスキャン (Partial SeqScan) 集計 結果 集計 結果 テーブル 集計 結果 • テーブルスキャン、集計を並列で実行可能 • 各プロセスで部分的な集計を行い、最後に結果をまとめる 行数/3 行数/3 行数/3 最終集計 (Final Agg)
16.
16Copyright©2016 NTT corp.
All Rights Reserved. これまでの結合処理 結合 (Nested Loop Join) テーブルスキャン (Partial SeqScan) インデックススキャン (IndexScan) 内部表 外部表 =# SELECT id FROM hoge h, bar b WHERE h.id = b.id;
17.
17Copyright©2016 NTT corp.
All Rights Reserved. 結合処理の並列化 結合 (Nested Loop Join) テーブルスキャン (Partial SeqScan) インデックススキャン (IndexScan) 結合 (Nested Loop Join) テーブルスキャン (Partial SeqScan) インデックススキャン (IndexScan) 内部表 内部表 結果をまとめる (Gather) 外部表 • 各プロセスで外部表のスキャン、内部表との結合を実施 • Hash Joinも並列実行可能 行数/2 行数/2
18.
18Copyright©2016 NTT corp.
All Rights Reserved. • クエリ実行の並列度を変えて全件スキャンを実施 • CPUコア数分(並列度4)までクエリが高速化した どれくらい速くなる? 0 5 10 15 20 25 1 2 3 4 5 実行時間(秒) 並列度 13GBテーブルの全件スキャン CPU:4コア メモリ:32GB 約1/4の 実行時間
19.
19Copyright©2016 NTT corp.
All Rights Reserved. • 並列度決定に物理CPU数は考慮されない • テーブルサイズを元に並列度を算出 • CPUコア数以上の並列度が設定されないように • ディスクI/Oに気を使おう! 使用上の注意点
20.
20Copyright©2016 NTT corp.
All Rights Reserved. • 1つのSQL処理を複数のCPUで並列に実行 • 1つのSQL処理速度を上げる機能 • Seq Scan、Nested Loop Join、Hash Join、集計が対応 • 更新、削除、ソート、Merge Join、Index Scanは未対応 • 「並列に処理する実行計画」も含み、最適な実行計画が選択 される • “パラレルクエリを使った方が遅い”と判断されることも • 並列度はテーブルサイズを元に設定される 絶賛機能、性能検証中! 詳しい情報は随時発信していきます! パラレルクエリ まとめ
21.
21Copyright©2016 NTT corp.
All Rights Reserved. PostgreSQLが管理するトランザクションIDのメンテナン スのために、定期的(デフォルトでは2億トランザクショ ン毎)にデータベース全体のVACUUMが実行されます。 9.5までのPostgreSQL いつも通りの処理♪ 急にDB全体が 重くなった! 半年後の ある日
22.
22Copyright©2016 NTT corp.
All Rights Reserved. =# SELECT pid, state, now() – query_start as duration, query FROM pg_stat_activity; -[ RECORD 1 ]--------------------------------------- pid | 43556 query | autovacuum: VACUUM | public.very_large_table (to prevent | wraparound) state | active duration | 5 days 18:50:44.256561 ② 5日間以上 VACUUM 実行中 PostgreSQLで実行されているSQLの状況を見てみると・・・ ① “to prevent wraparound” が付いている
23.
23Copyright©2016 NTT corp.
All Rights Reserved. Freeze Map (Masahiko Sawada, Robert Haas) The Unsung Founders Memorial at UNC. It's an interesting table sculpture dedicated to the men and women of color who helped build the University. by Jed Record
24.
24Copyright©2016 NTT corp.
All Rights Reserved. 非常に重要な機能 (でも内部の細かい話になるので、その重要さが伝わりづらい。。) Freeze Mapとは?
25.
25Copyright©2016 NTT corp.
All Rights Reserved. 内部構造に興味がある方は http://www.slideshare.net/pgdayasia/introduction-to-vacuum-freezing-and-xid
26.
26Copyright©2016 NTT corp.
All Rights Reserved. このVACUUM(通称XID周回防止VACUUM)では全テーブルを問答 無用でフルスキャン • ディスクI/OやCPUを消費 • DBサイズに比例してより大きい影響を受けやすくなる XID周回防止VACUUMがいつ発生するかはPostgreSQL次第 • 繁忙期、閑散期関係なく実行される • ただし、事前に意識的にメンテナンスしておくことで、ある程度制御す ることは可能 キャンセルできるが、実行しないままでいると、PostgreSQLがあ る日突然停止する Q. なぜ今になって解決されたのか?(これまで問題にならなかったのか?) A. 近年DBに格納するデータが大きくなってきたことにより、問題 が顕在化してきたため。 甘く見ていると危険
27.
27Copyright©2016 NTT corp.
All Rights Reserved. • これらの悩みを解消 • デフォルトで有効 • オーバーヘッドを極力少なくなるように実装しているため、新 機能導入によるデメリットはほぼない • OFFにできない • DBMSの重要な部分を改変したため、万が一のときの対 処策も一緒に追加 • pg_visibilityモジュール • pg_truncate_visibility_map • pg_check_visible, pg_check_frozen • VACUUM (DISABLE_PAGE_SKIPPING) Freeze Map
28.
28Copyright©2016 NTT corp.
All Rights Reserved. =# SELECT pid, state, now() – query_start as duration, query FROM pg_stat_activity; -[ RECORD 1 ]--------------------------------------- pid | 43556 query | autovacuum: VACUUM | public.very_large_table (to prevent | wraparound) state | active duration | 5 days 18:50:44.256561 ② 5日間以上 VACUUM 実行中 PostgreSQLで実行されているSQLの状況を見てみると・・・ ① “to prevent wraparound” が付いている
29.
29Copyright©2016 NTT corp.
All Rights Reserved. Vacuum Progress Checker (Amit Langote, Robert Haas, Vinayak Pokale, Rahila Syed)
30.
30Copyright©2016 NTT corp.
All Rights Reserved. • VACUUMの進捗状況をレポートするビューが導入 • どのテーブルのVACUUMが、どれくらい進んでいるのかを数値でレ ポート VACUUMの進捗状況が見える =# ¥d pg_stat_progress_vacuum Column | Type | Modifiers -------------------+---------+---------- pid | integer | datid | oid | datname | name | relid | oid | phase | text | heap_blks_total | bigint | heap_blks_scanned | bigint | heap_blks_vacuumed | bigint | index_vacuum_count | bigint | max_dead_tuples | bigint | num_dead_tuples | bigint |
31.
31Copyright©2016 NTT corp.
All Rights Reserved. =# SELECT pid, datname, relname, ((heap_blks_scanned / heap_blks_total::numeric(10,2)) * 100)::numeric(10,2) as percentage, p.phase, index_vacuum_count FROM pg_stat_progress_vacuum as p, pg_class as c WHERE p.relid = c.oid; -[ RECORD 1 ]------+----------------- pid | 100026 datname | postgres relname | pgbench_accounts percentage | 19.72 phase | scanning heap index_vacuum_count | 10 -[ RECORD 2 ]------+----------------- pid | 100027 datname | postgres relname | very_large_table percentage | 95.12 phase | scanning heap index_vacuum_count | 300 進捗状況の確認やチューニングにも使える 他ビューと組み合わせることで、 ・VACUUM対象のテーブル ・進捗状況(パーセンテージ) ・今何をしているか ・VACUUMの効率 など算出可能
32.
32Copyright©2016 NTT corp.
All Rights Reserved. 主要機能を解説します 性能向上 • パラレルクエリ VACUUMの性能、運用性向上 • Freeze Map • VACUUM進捗 レプリケーション • マルチ同期レプリケーション 外部データ連携(FDW) • FDW強化
33.
33Copyright©2016 NTT corp.
All Rights Reserved. レプリケーション機能の歴史 9.0 (2010) 9.4 (2014) 9.5 (2015) 9.6 (2016) 9.2 (2012) 9.3 (2013) 9.1 (2011) ・同期 レプリケーション ・カスケード レプリケーション ・スタンバイサーバへ の高速切り替え ・レプリケーションスロット ・ロジカルデコーディング ・高速フェイル オーバー M S S M S S レプリケーション機能の拡充、使いやすさの向上 ・非同期 レプリケーション
34.
34Copyright©2016 NTT corp.
All Rights Reserved. マルチ同期レプリケーション (Masahiko Sawada, Beena Emerson, Michael Paquier, Fujii Masao, Kyotaro Horiguchi) Polska > Kraków by antifluor
35.
35Copyright©2016 NTT corp.
All Rights Reserved. 同期レプリケーション http://www.slideshare.net/hadoopxnttdata/postgresql-39739357
36.
36Copyright©2016 NTT corp.
All Rights Reserved. PG9.5 までのレプリケーション マスタ スタンバイ A スタンバイ B スタンバイ C 同期 レプリケーション 非同期 レプリケーション 非同期 レプリケーション • マスタサーバは複数のスタンバイサーバを持つことができるが、同期レプリケーションを使用 できるのは最大1台まで 同期レプリケーションを 使えるのはスタンバイAの1台のみ
37.
37Copyright©2016 NTT corp.
All Rights Reserved. マルチ同期レプリケーション マスタ スタンバイ A スタンバイ B スタンバイ C 同期 レプリケーション 同期 レプリケーション 非同期 レプリケーション • 複数のスタンバイサーバに対して同期レプリケーションを使用可能 • より高可用な構成を組むことが可能に スタンバイAとスタンバイBに 同期レプリケーションを使用
38.
38Copyright©2016 NTT corp.
All Rights Reserved. 構成例 マスタ ● 同期レプリケーションを使用したWAL二重書き込み(pg_receivexlog使用) WAL WAL のみ スタンバイ 同期 レプリケーション 同期 レプリケーション ● 同一DC内に同期スタンバイを複数配置 マスタ スタンバイ スタンバイ 同期 レプリケーション 同期 レプリケーション
39.
39Copyright©2016 NTT corp.
All Rights Reserved. Foreign Data Wrapper(FDW)強化 (Etsuro Fujita, Shigeru Hanada, Ashutosh Bapat) pot shards by psyberartist
40.
40Copyright©2016 NTT corp.
All Rights Reserved. 新機能紹介の前に - Foreign Data Wrapper(FDW)とは? ID, COL 100, 北海道 200, 青森県 id col 100 北海道 200 青森県 id col 100 北海道 200 青森県 PostgreSQL Oracle CSVファイル oracle_fdw file_fdw SELECT id, col FROM tbl 外部データをあたかもPostgreSQLのデータとして扱える機能
41.
41Copyright©2016 NTT corp.
All Rights Reserved. • postgres_fdwを使った分散処理構成は、「どれだけ外部サーバで処理させ るか」が重要 • 親サーバが全てのデータを取得して計算、では外部サーバを使うメリットを生かせな い • 演算子、条件句も一緒に送る(Push Downする)ことが大切 分散処理基盤を続々と強化中 SELECT price FROM 3月分 WHERE genre = … 1,2月分 postgres_fdw 子サーバ 3,4月分 5,6月分 SELECT … WHERE … 親サーバ
42.
42Copyright©2016 NTT corp.
All Rights Reserved. • 参照 • スキャンやWHERE句により絞込み外部サーバで実行される • New!! 結合、ソート処理も外部サーバのリソースが使える • 更新 • New!! 更新、削除を外部サーバに依頼可能 挿入、集計、他の結合等は現在開発中! 分散処理基盤を続々と強化中
43.
43Copyright©2016 NTT corp.
All Rights Reserved. 今後のPostgreSQL Future Energy by Floris Oosterveld
44.
44Copyright©2016 NTT corp.
All Rights Reserved. • PostgreSQL開発に注力している会社が、PostgreSQL開発 のロードマップを公開 • パラレルクエリ導入が、PostgreSQLの様々な処理のパラレル化 を加速 • ロジカルレプリケーションを含め、様々なレプリケーション機 能が追加されていく • 外部データ連携機能(FDW)がさらに強化されていく • パーティショニング専用の構文が導入され、簡単に使えるよう になる https://wiki.postgresql.org/wiki/PostgreSQL10_Roadmap • PostgreSQLのバージョニングが変わる 今後のPostgreSQL
45.
45Copyright©2016 NTT corp.
All Rights Reserved. バージョニングが変わります! ~PG9.6 PG10~ 9.6.0 9.5.0 メジャー マイナー 9.5.1 11.0 10.0 メジャー マイナー 10.1
46.
46Copyright©2016 NTT corp.
All Rights Reserved. • 本日はPG9.6の目玉機能を紹介しました • PostgreSQL 9.6でパラレルクエリを初めとした200以上の 機能が追加されました • NTTデータ、NTT OSSセンタが開発貢献した機能も多数 • 大規模データの管理、処理がH/Wリソースを効率的に使 いながら可能になった • 今後のPostgreSQLはパラレル化、レプリケーション強化 にも期待 まとめ
47.
47Copyright©2016 NTT corp.
All Rights Reserved. ご清聴ありがとうございました
48.
48Copyright©2016 NTT corp.
All Rights Reserved. • Too old snapshot • Idle_in_transaction_session_timeout • CREATE ACCESS METHOD • Generic WAL Interface • Bloomインデックス • 類似度検索の強化(Word Similarity Search) • 待機イベント • postgres_fdwで演算子をPush Down可能に • 部分インデックスを使用した、Index Only Scan (参考) その他の改善
Jetzt herunterladen