SlideShare a Scribd company logo
1 of 22
Download to read offline
1
PostgreSQL 最前線
JTF2021w
2021-01-24 13:45 - 14:10 (F3)
日本 PostgreSQL ユーザ会 理事 高塚 遥
~ 今大体どうなっているの? ~
2
TOC :
● 「 PostgreSQL は今ど
うなっている?」を
25 分で解説
● 「 PostgreSQL ってな
んだったっけ?」という
人でも大丈夫
講演者 :
● 高塚 遥
● 日本 PostgreSQL ユーザ会
理事
● 仕事ではヘルプデスク、
コンサルティングなど、
PostgreSQL 支援業務
3
PostgreSQL とは
● 多機能、高性能、かつオープンソースの
リレーショナルデータベース管理システム
– INGRES('70),POSTGRES('80) 由来の歴史
– BSD タイプのライセンス
– 特定オーナー企業が無い
企業
製品
ある種の OSS 開発体制
開発者
PostgreSQL
企業
企業
企業
PostgreSQL 開発体制
4
PostgreSQL リリース
0
500,000
1,000,000
1,500,000
2,000,000
2,500,000
3,000,000
3,500,000
8.0 8.1 8.2 8.3 8.4 9.0 9.1 9.2 9.3 9.4 9.5 9.6 10 11 12 13
コード行数
‘05.01
‘05.11
‘06.12
‘08.02
‘09.07
‘10.09
‘11.09
‘12.09
‘13.09
‘14.12
‘16.01
‘16.09
‘17.10
‘18.10
‘19.10
‘20.09
PITR,
MSVC
4core
scale
OLAP,
CTE
SSI,
FDW
MView,
UView
RLS,
UPSERT
logical
Repli.
Table
AM I/F
de-
duplicate
Btree
Parallel
query
JIT
compile
JSONB
many
core
scale
hot
Update
bitmap
scan
Repli-
cation
5
最近の大きなエンハンスメント
● JIT コンパイル (11)
● Table Access Method インタフェース (12)
● Btree インデックスの重複除去 (13)
● パラレルクエリ対応と強化( 9.6 - 13)
● テーブルパーティショニング対応と強化 (10 - 13)
● ロジカルレプリケーション対応 (10)
6
バージョン 14 の展望
● 例年の流れ : 5 月ごろ仕様確定 → 秋ごろリリース
● CommitFest 2020-07, 2020-09, 2020-11, 2021-01, 2021-03
● 各種拡張
● View 差分更新
● テンポラルテーブル
● Index Skip Scan ( Loose Index Scan)
● スキーマ変数(パッケージ変数相当)
● グローバル一時テーブル
● MERGE 文 /  SEARCH 、 CYCLE 句 /  標準 SQL 関数構文
● パラレル INSERT を含む並列化対応強化
● WAL 無効化オプション / 不揮発 WAL バッファ(不揮発メモリ用)
● その他にも改善多数
7
現在の PostgreSQL と周辺
SQL 機能:
● SQL:2016 の大部分に対応
● 各種のストアド言語
● 地理情報対応 (PostGIS)
● JSON 対応
● 豊富な拡張インタフェース
クラスタ構成:
● Streaming Replication  
● Logical Replication  
● HA クラスタ (active/standby)
● MPP クラスタ (shared nothing)
● RAC 型 (shared disk) は不可 ×
性能:
● 参照更新で多コア性能スケール
(ベンチマークベース)
● パーティション/パラレル対応
● Just In Compile 対応
● インメモリ対応は無し ×
運用:
● 運用監視ツール pg_statsinfo /
pg_badger / pg_monz
● クライアントツール PgAdmin4 /
SI Object Browser
● 各種クラウド、 k8s 対応
8
SQL 機能面でのアドバンテージ
● ストアド言語
● PL/pgSQL
● Perl 、 Python 、 Tcl
● V8 (JavaScript)
● JSON 対応
● JSON の内部要素に
インデックス
● JSON Path 関数
● PostGIS
● OSS 拡張
● 地理情報のデファクト
スタンダード
9
現在の PostgreSQL と周辺
SQL 機能:
● SQL:2016 の大部分に対応
● 各種のストアド言語
● 地理情報対応 (PostGIS)
● JSON 対応
● 豊富な拡張インタフェース
クラスタ構成:
● Streaming Replication  
● Logical Replication  
● HA クラスタ (active/standby)
● MPP クラスタ (shared nothing)
● RAC 型 (shared disk) は不可 ×
性能:
● 参照更新で多コア性能スケール
(ベンチマークベース)
● パーティション/パラレル対応
● Just In Compile 対応
● インメモリ対応は無し ×
運用:
● 運用監視ツール pg_statsinfo /
pg_badger / pg_monz
● クライアントツール PgAdmin4 /
SI Object Browser
● 各種クラウド、 k8s 対応
10
CPU スケール(参照系)
2012 年度 PGECons WG1 成果資料より
9.2.x の段階で
参照はスケール
コア数 =
同時実行数ピーク
の結果
11
CPU スケール(更新系)
2016 年度 PGECons WG1 成果資料より
9.6.x で
更新スケール
あくまでベンチマーク結果であることに注意!
12
現在の PostgreSQL と周辺
SQL 機能:
● SQL:2016 の大部分に対応
● 各種のストアド言語
● 地理情報対応 (PostGIS)
● JSON 対応
● 豊富な拡張インタフェース
クラスタ構成:
● Streaming Replication  
● Logical Replication  
● HA クラスタ (active/standby)
● MPP クラスタ (shared nothing)
● RAC 型 (shared disk) は不可 ×
性能:
● 参照更新で多コア性能スケール
(ベンチマークベース)
● パーティション/パラレル対応
● Just In Compile 対応
● インメモリ対応は無し ×
運用:
● 運用監視ツール pg_statsinfo /
pg_badger / pg_monz
● クライアントツール PgAdmin4 /
SI Object Browser
● 各種クラウド、 k8s 対応
13
PostgreSQL のレプリケーション
DB サーバ
DB サーバ DB サーバ
DB サーバ
DB サーバ
シングルマスタ
マルチスレーブ
カスケード
可能
DB サーバ
同期スタンバイ
を指定可能
クォーラム指定
(内何台に
    書込したら)
インスタンス単位
WAL ストリームによる
物理レプリケーション
10 から
9.0 から
DB サーバ
9.1 から 9.2 から
テーブル単位
論理レプリケーション
10 から
マルチマスタ
テーブル単位論理
レプリケーションは
サードパーティ製品で
Postgres-BDR, etc
14
PostgreSQL クラスタ構成
● HA クラスタ
● Pacemaker 等の各種 HA クラスタソフトで対応
● MPP クラスタ(シャーディング - データ分割格納)
● Greenplum
● Citus (Azure Hyperscale)
● Postgres-XL
● k8s オペレータ
● Pgpool-II
15
現在の PostgreSQL と周辺
SQL 機能:
● SQL:2016 の大部分に対応
● 各種のストアド言語
● 地理情報対応 (PostGIS)
● JSON 対応
● 豊富な拡張インタフェース
クラスタ構成:
● Streaming Replication  
● Logical Replication  
● HA クラスタ (active/standby)
● MPP クラスタ (shared nothing)
● RAC 型 (shared disk) は不可 ×
性能:
● 参照更新で多コア性能スケール
(ベンチマークベース)
● パーティション/パラレル対応
● Just In Compile 対応
● インメモリ対応は無し ×
運用:
● 運用監視ツール pg_statsinfo /
pg_badger / pg_monz
● クライアントツール PgAdmin4 /
SI Object Browser
● 各種クラウド、 k8s 対応
16
PostgreSQL の運用監視
https://www.sraoss.co.jp/technology/zabbix/introduction/pg_monz.php より
https://www.postgresql.jp/sites/default/files/2017-01/
B1_PGCON_JP_kondo_nttoss.pdf より
●
pg_statsinfo
●
pg_monz
(Zabbix)
●
pg_badger
17
PostgreSQL のクライアントツール
● pgAdmin 4
● 各種商用製品 PostgreSQL 対応
● Navicat for PostgreSQL
● SI Object Browser for
Postgres
● A5:SQL Mk-2
https://www.pgadmin.org/screenshots より
18
PostgreSQL で困難なケース
● データ投入性能の限界
● IOT 方面/投入量要件と構成によっては専用製品に
– WAL に直列的に書く設計であるため
● OLTP 性能の限界
● 大メモリや多 CPU コアを活かしきれない場合
– 遅いストレージ格納を前提とした基本設計に起因
● スケールアウトが難しい
● HA クラスタにおける高度要件
● 障害復旧時間の最小化要件
– 15 秒以内、など
19
PostgreSQL クラウド / コンテナ
● クラウドサービス
● Azure Database
● AWS RDS / Aurora
● GCP Cloud SQL
● K8s オペレータ
● KubeDB
● CrunchyData/
postgres-operator
● Zalando/postgres-
operator
20
コミュニティと商用サポート
● 開発コミュニティ (Mailing List, Git, Slack)
(PostgreSQL Global Development Group)
● 国内のコミュニティ活動
– 日本 PostgreSQL ユーザ会 (JPUG)
– PostgreSQL エンタープライズ・コンソーシアム
( PGECons )
● 国内の商用サポート
– 提供会社いくつかあり、取り扱い会社多数
https://www.pgecons.org/postgresql-info/services/
21
ユーザ動向
● 「より大規模」「よりクリティカル」は一巡
● 世界中どこで使われていても珍しくない
● Oracle Database からの移行、最終組がスタート
● 「 RAC 同様」の壁は残る
● JPUG による利用調査
● PostgreSQL は
4大人気 DBMS の一角
Oracle
SQLServer
MySQL
PostgreSQL
Other DBs
2019 年 JPUG 調べ :
「近年業務で関わった DBMS 」
回答数(複数回答)
22
JPUG の活動
● イベント
● PostgreSQL アンカンファレンス - 最近はオンラインで毎月
● PostgreSQL カンファレンス
● PostgreSQL 勉強会 - 各地支部でそれぞれ年1回~数回
● 合宿 (年 0 ~ 1 回程度)
● OSC など各種イベントに出展(通年)
● 文書翻訳  https://github.com/pgsql-jp/jpug-doc
● ML 運営 pgsql-jp@postgresql.jp, jpug-users@postgresql.jp
● 最近は Slack postgresql-jp が人口増加中
● Web 運営 ( www.postgresql.jp 、 lets.postgresql.jp )

More Related Content

What's hot

PostgreSQLではじめるOSS開発@OSC 2014 Hiroshima
PostgreSQLではじめるOSS開発@OSC 2014 HiroshimaPostgreSQLではじめるOSS開発@OSC 2014 Hiroshima
PostgreSQLではじめるOSS開発@OSC 2014 HiroshimaShigeru Hanada
 
Chugoku db 17th-postgresql-9.6
Chugoku db 17th-postgresql-9.6Chugoku db 17th-postgresql-9.6
Chugoku db 17th-postgresql-9.6Toshi Harada
 
Jpug study-pq 20170121
Jpug study-pq 20170121Jpug study-pq 20170121
Jpug study-pq 20170121Kosuke Kida
 
PostgreSQLアーキテクチャ入門(INSIGHT OUT 2011)
PostgreSQLアーキテクチャ入門(INSIGHT OUT 2011)PostgreSQLアーキテクチャ入門(INSIGHT OUT 2011)
PostgreSQLアーキテクチャ入門(INSIGHT OUT 2011)Uptime Technologies LLC (JP)
 
並列クエリを実行するPostgreSQLのアーキテクチャ
並列クエリを実行するPostgreSQLのアーキテクチャ並列クエリを実行するPostgreSQLのアーキテクチャ
並列クエリを実行するPostgreSQLのアーキテクチャKohei KaiGai
 
BigDataを迎え撃つ! PostgreSQL並列分散ミドルウェア「Stado」の紹介と検証報告
BigDataを迎え撃つ! PostgreSQL並列分散ミドルウェア「Stado」の紹介と検証報告BigDataを迎え撃つ! PostgreSQL並列分散ミドルウェア「Stado」の紹介と検証報告
BigDataを迎え撃つ! PostgreSQL並列分散ミドルウェア「Stado」の紹介と検証報告Uptime Technologies LLC (JP)
 
PostgreSQLのリカバリ超入門(もしくはWAL、CHECKPOINT、オンラインバックアップの仕組み)
PostgreSQLのリカバリ超入門(もしくはWAL、CHECKPOINT、オンラインバックアップの仕組み)PostgreSQLのリカバリ超入門(もしくはWAL、CHECKPOINT、オンラインバックアップの仕組み)
PostgreSQLのリカバリ超入門(もしくはWAL、CHECKPOINT、オンラインバックアップの仕組み)Hironobu Suzuki
 
Jpug study-postgre sql-10-pub
Jpug study-postgre sql-10-pubJpug study-postgre sql-10-pub
Jpug study-postgre sql-10-pubToshi Harada
 
PostgreSQL10徹底解説
PostgreSQL10徹底解説PostgreSQL10徹底解説
PostgreSQL10徹底解説Masahiko Sawada
 
MySQLメインの人がPostgreSQLのベンチマークをしてみた話
MySQLメインの人がPostgreSQLのベンチマークをしてみた話MySQLメインの人がPostgreSQLのベンチマークをしてみた話
MySQLメインの人がPostgreSQLのベンチマークをしてみた話hiroi10
 
PostgreSQLアーキテクチャ入門(PostgreSQL Conference 2012)
PostgreSQLアーキテクチャ入門(PostgreSQL Conference 2012)PostgreSQLアーキテクチャ入門(PostgreSQL Conference 2012)
PostgreSQLアーキテクチャ入門(PostgreSQL Conference 2012)Uptime Technologies LLC (JP)
 
PostgreSQLの新バージョン -PostgreSQL9.4- のご紹介
PostgreSQLの新バージョン -PostgreSQL9.4- のご紹介PostgreSQLの新バージョン -PostgreSQL9.4- のご紹介
PostgreSQLの新バージョン -PostgreSQL9.4- のご紹介Insight Technology, Inc.
 
[Postgre sql9.4新機能]レプリケーション・スロットの活用
[Postgre sql9.4新機能]レプリケーション・スロットの活用[Postgre sql9.4新機能]レプリケーション・スロットの活用
[Postgre sql9.4新機能]レプリケーション・スロットの活用Kosuke Kida
 
PostgreSQLのトラブルシューティング@第5回中国地方DB勉強会
PostgreSQLのトラブルシューティング@第5回中国地方DB勉強会PostgreSQLのトラブルシューティング@第5回中国地方DB勉強会
PostgreSQLのトラブルシューティング@第5回中国地方DB勉強会Shigeru Hanada
 
まずやっとくPostgreSQLチューニング
まずやっとくPostgreSQLチューニングまずやっとくPostgreSQLチューニング
まずやっとくPostgreSQLチューニングKosuke Kida
 
JPUG 沖縄支部セミナー資料(2013-04-27)
JPUG 沖縄支部セミナー資料(2013-04-27)JPUG 沖縄支部セミナー資料(2013-04-27)
JPUG 沖縄支部セミナー資料(2013-04-27)Chika SATO
 
OSC東京2013/Spring_JPUG資料
OSC東京2013/Spring_JPUG資料OSC東京2013/Spring_JPUG資料
OSC東京2013/Spring_JPUG資料Chika SATO
 

What's hot (20)

PostgreSQLではじめるOSS開発@OSC 2014 Hiroshima
PostgreSQLではじめるOSS開発@OSC 2014 HiroshimaPostgreSQLではじめるOSS開発@OSC 2014 Hiroshima
PostgreSQLではじめるOSS開発@OSC 2014 Hiroshima
 
Chugoku db 17th-postgresql-9.6
Chugoku db 17th-postgresql-9.6Chugoku db 17th-postgresql-9.6
Chugoku db 17th-postgresql-9.6
 
Jpug study-pq 20170121
Jpug study-pq 20170121Jpug study-pq 20170121
Jpug study-pq 20170121
 
PostgreSQLアーキテクチャ入門(INSIGHT OUT 2011)
PostgreSQLアーキテクチャ入門(INSIGHT OUT 2011)PostgreSQLアーキテクチャ入門(INSIGHT OUT 2011)
PostgreSQLアーキテクチャ入門(INSIGHT OUT 2011)
 
並列クエリを実行するPostgreSQLのアーキテクチャ
並列クエリを実行するPostgreSQLのアーキテクチャ並列クエリを実行するPostgreSQLのアーキテクチャ
並列クエリを実行するPostgreSQLのアーキテクチャ
 
BigDataを迎え撃つ! PostgreSQL並列分散ミドルウェア「Stado」の紹介と検証報告
BigDataを迎え撃つ! PostgreSQL並列分散ミドルウェア「Stado」の紹介と検証報告BigDataを迎え撃つ! PostgreSQL並列分散ミドルウェア「Stado」の紹介と検証報告
BigDataを迎え撃つ! PostgreSQL並列分散ミドルウェア「Stado」の紹介と検証報告
 
PostgreSQLのリカバリ超入門(もしくはWAL、CHECKPOINT、オンラインバックアップの仕組み)
PostgreSQLのリカバリ超入門(もしくはWAL、CHECKPOINT、オンラインバックアップの仕組み)PostgreSQLのリカバリ超入門(もしくはWAL、CHECKPOINT、オンラインバックアップの仕組み)
PostgreSQLのリカバリ超入門(もしくはWAL、CHECKPOINT、オンラインバックアップの仕組み)
 
Jpug study-postgre sql-10-pub
Jpug study-postgre sql-10-pubJpug study-postgre sql-10-pub
Jpug study-postgre sql-10-pub
 
PostgreSQLバックアップの基本
PostgreSQLバックアップの基本PostgreSQLバックアップの基本
PostgreSQLバックアップの基本
 
PostgreSQL10徹底解説
PostgreSQL10徹底解説PostgreSQL10徹底解説
PostgreSQL10徹底解説
 
MySQLメインの人がPostgreSQLのベンチマークをしてみた話
MySQLメインの人がPostgreSQLのベンチマークをしてみた話MySQLメインの人がPostgreSQLのベンチマークをしてみた話
MySQLメインの人がPostgreSQLのベンチマークをしてみた話
 
PostgreSQLアーキテクチャ入門(PostgreSQL Conference 2012)
PostgreSQLアーキテクチャ入門(PostgreSQL Conference 2012)PostgreSQLアーキテクチャ入門(PostgreSQL Conference 2012)
PostgreSQLアーキテクチャ入門(PostgreSQL Conference 2012)
 
PostgreSQLの新バージョン -PostgreSQL9.4- のご紹介
PostgreSQLの新バージョン -PostgreSQL9.4- のご紹介PostgreSQLの新バージョン -PostgreSQL9.4- のご紹介
PostgreSQLの新バージョン -PostgreSQL9.4- のご紹介
 
[Postgre sql9.4新機能]レプリケーション・スロットの活用
[Postgre sql9.4新機能]レプリケーション・スロットの活用[Postgre sql9.4新機能]レプリケーション・スロットの活用
[Postgre sql9.4新機能]レプリケーション・スロットの活用
 
PostgreSQLのトラブルシューティング@第5回中国地方DB勉強会
PostgreSQLのトラブルシューティング@第5回中国地方DB勉強会PostgreSQLのトラブルシューティング@第5回中国地方DB勉強会
PostgreSQLのトラブルシューティング@第5回中国地方DB勉強会
 
まずやっとくPostgreSQLチューニング
まずやっとくPostgreSQLチューニングまずやっとくPostgreSQLチューニング
まずやっとくPostgreSQLチューニング
 
PostgreSQL Query Cache - "pqc"
PostgreSQL Query Cache - "pqc"PostgreSQL Query Cache - "pqc"
PostgreSQL Query Cache - "pqc"
 
JPUG 沖縄支部セミナー資料(2013-04-27)
JPUG 沖縄支部セミナー資料(2013-04-27)JPUG 沖縄支部セミナー資料(2013-04-27)
JPUG 沖縄支部セミナー資料(2013-04-27)
 
いまさら聞けないPostgreSQL運用管理
いまさら聞けないPostgreSQL運用管理いまさら聞けないPostgreSQL運用管理
いまさら聞けないPostgreSQL運用管理
 
OSC東京2013/Spring_JPUG資料
OSC東京2013/Spring_JPUG資料OSC東京2013/Spring_JPUG資料
OSC東京2013/Spring_JPUG資料
 

Similar to JTF2021w F3 postgresql frontline

PostgreSQL 9.2 新機能 - OSC 2012 Kansai@Kyoto
PostgreSQL 9.2 新機能 - OSC 2012 Kansai@KyotoPostgreSQL 9.2 新機能 - OSC 2012 Kansai@Kyoto
PostgreSQL 9.2 新機能 - OSC 2012 Kansai@KyotoShigeru Hanada
 
OSC沖縄2014_JPUG資料
OSC沖縄2014_JPUG資料OSC沖縄2014_JPUG資料
OSC沖縄2014_JPUG資料kasaharatt
 
PostgreSQL 9.2 新機能 - 新潟オープンソースセミナー2012
PostgreSQL 9.2 新機能 - 新潟オープンソースセミナー2012PostgreSQL 9.2 新機能 - 新潟オープンソースセミナー2012
PostgreSQL 9.2 新機能 - 新潟オープンソースセミナー2012Shigeru Hanada
 
GPUとSSDがPostgreSQLを加速する~クエリ処理スループット10GB/sへの挑戦~ [DB Tech Showcase Tokyo/2017]
GPUとSSDがPostgreSQLを加速する~クエリ処理スループット10GB/sへの挑戦~ [DB Tech Showcase Tokyo/2017]GPUとSSDがPostgreSQLを加速する~クエリ処理スループット10GB/sへの挑戦~ [DB Tech Showcase Tokyo/2017]
GPUとSSDがPostgreSQLを加速する~クエリ処理スループット10GB/sへの挑戦~ [DB Tech Showcase Tokyo/2017]Kohei KaiGai
 
SSDとGPUがPostgreSQLを加速する【OSC.Enterprise】
SSDとGPUがPostgreSQLを加速する【OSC.Enterprise】SSDとGPUがPostgreSQLを加速する【OSC.Enterprise】
SSDとGPUがPostgreSQLを加速する【OSC.Enterprise】Kohei KaiGai
 
Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)
Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)
Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)Keisuke Takahashi
 
PostgreSQLレプリケーション(pgcon17j_t4)
PostgreSQLレプリケーション(pgcon17j_t4)PostgreSQLレプリケーション(pgcon17j_t4)
PostgreSQLレプリケーション(pgcon17j_t4)Kosuke Kida
 
明日から使えるPostgre sql運用管理テクニック(監視編)
明日から使えるPostgre sql運用管理テクニック(監視編)明日から使えるPostgre sql運用管理テクニック(監視編)
明日から使えるPostgre sql運用管理テクニック(監視編)kasaharatt
 
Extending PostgreSQL - PgDay 2012 Japan
Extending PostgreSQL - PgDay 2012 JapanExtending PostgreSQL - PgDay 2012 Japan
Extending PostgreSQL - PgDay 2012 JapanShigeru Hanada
 
PostgreSQLでスケールアウト
PostgreSQLでスケールアウトPostgreSQLでスケールアウト
PostgreSQLでスケールアウトMasahiko Sawada
 
20210511_PGStrom_GpuCache
20210511_PGStrom_GpuCache20210511_PGStrom_GpuCache
20210511_PGStrom_GpuCacheKohei KaiGai
 
[db tech showcase Tokyo 2014] D21: Postgres Plus Advanced Serverはここが使える&9.4新機...
[db tech showcase Tokyo 2014] D21: Postgres Plus Advanced Serverはここが使える&9.4新機...[db tech showcase Tokyo 2014] D21: Postgres Plus Advanced Serverはここが使える&9.4新機...
[db tech showcase Tokyo 2014] D21: Postgres Plus Advanced Serverはここが使える&9.4新機...Insight Technology, Inc.
 
20201113_PGconf_Japan_GPU_PostGIS
20201113_PGconf_Japan_GPU_PostGIS20201113_PGconf_Japan_GPU_PostGIS
20201113_PGconf_Japan_GPU_PostGISKohei KaiGai
 
Graviton2プロセッサの性能特性と適用箇所/Supership株式会社 中野 豊
Graviton2プロセッサの性能特性と適用箇所/Supership株式会社 中野 豊Graviton2プロセッサの性能特性と適用箇所/Supership株式会社 中野 豊
Graviton2プロセッサの性能特性と適用箇所/Supership株式会社 中野 豊Supership株式会社
 
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜Takahiro Inoue
 
20190518 27th-chugoku db-lt-pg12
20190518 27th-chugoku db-lt-pg1220190518 27th-chugoku db-lt-pg12
20190518 27th-chugoku db-lt-pg12Toshi Harada
 
C16 45分でわかるPostgreSQLの仕組み by 山田努
C16 45分でわかるPostgreSQLの仕組み by 山田努C16 45分でわかるPostgreSQLの仕組み by 山田努
C16 45分でわかるPostgreSQLの仕組み by 山田努Insight Technology, Inc.
 
Pgcon2012 ori-20120224
Pgcon2012 ori-20120224Pgcon2012 ori-20120224
Pgcon2012 ori-20120224Manabu Ori
 

Similar to JTF2021w F3 postgresql frontline (20)

PostgreSQL 9.2 新機能 - OSC 2012 Kansai@Kyoto
PostgreSQL 9.2 新機能 - OSC 2012 Kansai@KyotoPostgreSQL 9.2 新機能 - OSC 2012 Kansai@Kyoto
PostgreSQL 9.2 新機能 - OSC 2012 Kansai@Kyoto
 
OSC沖縄2014_JPUG資料
OSC沖縄2014_JPUG資料OSC沖縄2014_JPUG資料
OSC沖縄2014_JPUG資料
 
PostgreSQL 9.2 新機能 - 新潟オープンソースセミナー2012
PostgreSQL 9.2 新機能 - 新潟オープンソースセミナー2012PostgreSQL 9.2 新機能 - 新潟オープンソースセミナー2012
PostgreSQL 9.2 新機能 - 新潟オープンソースセミナー2012
 
GPUとSSDがPostgreSQLを加速する~クエリ処理スループット10GB/sへの挑戦~ [DB Tech Showcase Tokyo/2017]
GPUとSSDがPostgreSQLを加速する~クエリ処理スループット10GB/sへの挑戦~ [DB Tech Showcase Tokyo/2017]GPUとSSDがPostgreSQLを加速する~クエリ処理スループット10GB/sへの挑戦~ [DB Tech Showcase Tokyo/2017]
GPUとSSDがPostgreSQLを加速する~クエリ処理スループット10GB/sへの挑戦~ [DB Tech Showcase Tokyo/2017]
 
SSDとGPUがPostgreSQLを加速する【OSC.Enterprise】
SSDとGPUがPostgreSQLを加速する【OSC.Enterprise】SSDとGPUがPostgreSQLを加速する【OSC.Enterprise】
SSDとGPUがPostgreSQLを加速する【OSC.Enterprise】
 
Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)
Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)
Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)
 
PostgreSQLレプリケーション(pgcon17j_t4)
PostgreSQLレプリケーション(pgcon17j_t4)PostgreSQLレプリケーション(pgcon17j_t4)
PostgreSQLレプリケーション(pgcon17j_t4)
 
明日から使えるPostgre sql運用管理テクニック(監視編)
明日から使えるPostgre sql運用管理テクニック(監視編)明日から使えるPostgre sql運用管理テクニック(監視編)
明日から使えるPostgre sql運用管理テクニック(監視編)
 
Extending PostgreSQL - PgDay 2012 Japan
Extending PostgreSQL - PgDay 2012 JapanExtending PostgreSQL - PgDay 2012 Japan
Extending PostgreSQL - PgDay 2012 Japan
 
PostgreSQLでスケールアウト
PostgreSQLでスケールアウトPostgreSQLでスケールアウト
PostgreSQLでスケールアウト
 
20210511_PGStrom_GpuCache
20210511_PGStrom_GpuCache20210511_PGStrom_GpuCache
20210511_PGStrom_GpuCache
 
[db tech showcase Tokyo 2014] D21: Postgres Plus Advanced Serverはここが使える&9.4新機...
[db tech showcase Tokyo 2014] D21: Postgres Plus Advanced Serverはここが使える&9.4新機...[db tech showcase Tokyo 2014] D21: Postgres Plus Advanced Serverはここが使える&9.4新機...
[db tech showcase Tokyo 2014] D21: Postgres Plus Advanced Serverはここが使える&9.4新機...
 
20201113_PGconf_Japan_GPU_PostGIS
20201113_PGconf_Japan_GPU_PostGIS20201113_PGconf_Japan_GPU_PostGIS
20201113_PGconf_Japan_GPU_PostGIS
 
Graviton2プロセッサの性能特性と適用箇所/Supership株式会社 中野 豊
Graviton2プロセッサの性能特性と適用箇所/Supership株式会社 中野 豊Graviton2プロセッサの性能特性と適用箇所/Supership株式会社 中野 豊
Graviton2プロセッサの性能特性と適用箇所/Supership株式会社 中野 豊
 
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
 
20190518 27th-chugoku db-lt-pg12
20190518 27th-chugoku db-lt-pg1220190518 27th-chugoku db-lt-pg12
20190518 27th-chugoku db-lt-pg12
 
OSC2015kyoto
OSC2015kyotoOSC2015kyoto
OSC2015kyoto
 
OSC2015nagoya
OSC2015nagoyaOSC2015nagoya
OSC2015nagoya
 
C16 45分でわかるPostgreSQLの仕組み by 山田努
C16 45分でわかるPostgreSQLの仕組み by 山田努C16 45分でわかるPostgreSQLの仕組み by 山田努
C16 45分でわかるPostgreSQLの仕組み by 山田努
 
Pgcon2012 ori-20120224
Pgcon2012 ori-20120224Pgcon2012 ori-20120224
Pgcon2012 ori-20120224
 

Recently uploaded

AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 

Recently uploaded (8)

AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 

JTF2021w F3 postgresql frontline

  • 1. 1 PostgreSQL 最前線 JTF2021w 2021-01-24 13:45 - 14:10 (F3) 日本 PostgreSQL ユーザ会 理事 高塚 遥 ~ 今大体どうなっているの? ~
  • 2. 2 TOC : ● 「 PostgreSQL は今ど うなっている?」を 25 分で解説 ● 「 PostgreSQL ってな んだったっけ?」という 人でも大丈夫 講演者 : ● 高塚 遥 ● 日本 PostgreSQL ユーザ会 理事 ● 仕事ではヘルプデスク、 コンサルティングなど、 PostgreSQL 支援業務
  • 3. 3 PostgreSQL とは ● 多機能、高性能、かつオープンソースの リレーショナルデータベース管理システム – INGRES('70),POSTGRES('80) 由来の歴史 – BSD タイプのライセンス – 特定オーナー企業が無い 企業 製品 ある種の OSS 開発体制 開発者 PostgreSQL 企業 企業 企業 PostgreSQL 開発体制
  • 4. 4 PostgreSQL リリース 0 500,000 1,000,000 1,500,000 2,000,000 2,500,000 3,000,000 3,500,000 8.0 8.1 8.2 8.3 8.4 9.0 9.1 9.2 9.3 9.4 9.5 9.6 10 11 12 13 コード行数 ‘05.01 ‘05.11 ‘06.12 ‘08.02 ‘09.07 ‘10.09 ‘11.09 ‘12.09 ‘13.09 ‘14.12 ‘16.01 ‘16.09 ‘17.10 ‘18.10 ‘19.10 ‘20.09 PITR, MSVC 4core scale OLAP, CTE SSI, FDW MView, UView RLS, UPSERT logical Repli. Table AM I/F de- duplicate Btree Parallel query JIT compile JSONB many core scale hot Update bitmap scan Repli- cation
  • 5. 5 最近の大きなエンハンスメント ● JIT コンパイル (11) ● Table Access Method インタフェース (12) ● Btree インデックスの重複除去 (13) ● パラレルクエリ対応と強化( 9.6 - 13) ● テーブルパーティショニング対応と強化 (10 - 13) ● ロジカルレプリケーション対応 (10)
  • 6. 6 バージョン 14 の展望 ● 例年の流れ : 5 月ごろ仕様確定 → 秋ごろリリース ● CommitFest 2020-07, 2020-09, 2020-11, 2021-01, 2021-03 ● 各種拡張 ● View 差分更新 ● テンポラルテーブル ● Index Skip Scan ( Loose Index Scan) ● スキーマ変数(パッケージ変数相当) ● グローバル一時テーブル ● MERGE 文 /  SEARCH 、 CYCLE 句 /  標準 SQL 関数構文 ● パラレル INSERT を含む並列化対応強化 ● WAL 無効化オプション / 不揮発 WAL バッファ(不揮発メモリ用) ● その他にも改善多数
  • 7. 7 現在の PostgreSQL と周辺 SQL 機能: ● SQL:2016 の大部分に対応 ● 各種のストアド言語 ● 地理情報対応 (PostGIS) ● JSON 対応 ● 豊富な拡張インタフェース クラスタ構成: ● Streaming Replication   ● Logical Replication   ● HA クラスタ (active/standby) ● MPP クラスタ (shared nothing) ● RAC 型 (shared disk) は不可 × 性能: ● 参照更新で多コア性能スケール (ベンチマークベース) ● パーティション/パラレル対応 ● Just In Compile 対応 ● インメモリ対応は無し × 運用: ● 運用監視ツール pg_statsinfo / pg_badger / pg_monz ● クライアントツール PgAdmin4 / SI Object Browser ● 各種クラウド、 k8s 対応
  • 8. 8 SQL 機能面でのアドバンテージ ● ストアド言語 ● PL/pgSQL ● Perl 、 Python 、 Tcl ● V8 (JavaScript) ● JSON 対応 ● JSON の内部要素に インデックス ● JSON Path 関数 ● PostGIS ● OSS 拡張 ● 地理情報のデファクト スタンダード
  • 9. 9 現在の PostgreSQL と周辺 SQL 機能: ● SQL:2016 の大部分に対応 ● 各種のストアド言語 ● 地理情報対応 (PostGIS) ● JSON 対応 ● 豊富な拡張インタフェース クラスタ構成: ● Streaming Replication   ● Logical Replication   ● HA クラスタ (active/standby) ● MPP クラスタ (shared nothing) ● RAC 型 (shared disk) は不可 × 性能: ● 参照更新で多コア性能スケール (ベンチマークベース) ● パーティション/パラレル対応 ● Just In Compile 対応 ● インメモリ対応は無し × 運用: ● 運用監視ツール pg_statsinfo / pg_badger / pg_monz ● クライアントツール PgAdmin4 / SI Object Browser ● 各種クラウド、 k8s 対応
  • 10. 10 CPU スケール(参照系) 2012 年度 PGECons WG1 成果資料より 9.2.x の段階で 参照はスケール コア数 = 同時実行数ピーク の結果
  • 11. 11 CPU スケール(更新系) 2016 年度 PGECons WG1 成果資料より 9.6.x で 更新スケール あくまでベンチマーク結果であることに注意!
  • 12. 12 現在の PostgreSQL と周辺 SQL 機能: ● SQL:2016 の大部分に対応 ● 各種のストアド言語 ● 地理情報対応 (PostGIS) ● JSON 対応 ● 豊富な拡張インタフェース クラスタ構成: ● Streaming Replication   ● Logical Replication   ● HA クラスタ (active/standby) ● MPP クラスタ (shared nothing) ● RAC 型 (shared disk) は不可 × 性能: ● 参照更新で多コア性能スケール (ベンチマークベース) ● パーティション/パラレル対応 ● Just In Compile 対応 ● インメモリ対応は無し × 運用: ● 運用監視ツール pg_statsinfo / pg_badger / pg_monz ● クライアントツール PgAdmin4 / SI Object Browser ● 各種クラウド、 k8s 対応
  • 13. 13 PostgreSQL のレプリケーション DB サーバ DB サーバ DB サーバ DB サーバ DB サーバ シングルマスタ マルチスレーブ カスケード 可能 DB サーバ 同期スタンバイ を指定可能 クォーラム指定 (内何台に     書込したら) インスタンス単位 WAL ストリームによる 物理レプリケーション 10 から 9.0 から DB サーバ 9.1 から 9.2 から テーブル単位 論理レプリケーション 10 から マルチマスタ テーブル単位論理 レプリケーションは サードパーティ製品で Postgres-BDR, etc
  • 14. 14 PostgreSQL クラスタ構成 ● HA クラスタ ● Pacemaker 等の各種 HA クラスタソフトで対応 ● MPP クラスタ(シャーディング - データ分割格納) ● Greenplum ● Citus (Azure Hyperscale) ● Postgres-XL ● k8s オペレータ ● Pgpool-II
  • 15. 15 現在の PostgreSQL と周辺 SQL 機能: ● SQL:2016 の大部分に対応 ● 各種のストアド言語 ● 地理情報対応 (PostGIS) ● JSON 対応 ● 豊富な拡張インタフェース クラスタ構成: ● Streaming Replication   ● Logical Replication   ● HA クラスタ (active/standby) ● MPP クラスタ (shared nothing) ● RAC 型 (shared disk) は不可 × 性能: ● 参照更新で多コア性能スケール (ベンチマークベース) ● パーティション/パラレル対応 ● Just In Compile 対応 ● インメモリ対応は無し × 運用: ● 運用監視ツール pg_statsinfo / pg_badger / pg_monz ● クライアントツール PgAdmin4 / SI Object Browser ● 各種クラウド、 k8s 対応
  • 17. 17 PostgreSQL のクライアントツール ● pgAdmin 4 ● 各種商用製品 PostgreSQL 対応 ● Navicat for PostgreSQL ● SI Object Browser for Postgres ● A5:SQL Mk-2 https://www.pgadmin.org/screenshots より
  • 18. 18 PostgreSQL で困難なケース ● データ投入性能の限界 ● IOT 方面/投入量要件と構成によっては専用製品に – WAL に直列的に書く設計であるため ● OLTP 性能の限界 ● 大メモリや多 CPU コアを活かしきれない場合 – 遅いストレージ格納を前提とした基本設計に起因 ● スケールアウトが難しい ● HA クラスタにおける高度要件 ● 障害復旧時間の最小化要件 – 15 秒以内、など
  • 19. 19 PostgreSQL クラウド / コンテナ ● クラウドサービス ● Azure Database ● AWS RDS / Aurora ● GCP Cloud SQL ● K8s オペレータ ● KubeDB ● CrunchyData/ postgres-operator ● Zalando/postgres- operator
  • 20. 20 コミュニティと商用サポート ● 開発コミュニティ (Mailing List, Git, Slack) (PostgreSQL Global Development Group) ● 国内のコミュニティ活動 – 日本 PostgreSQL ユーザ会 (JPUG) – PostgreSQL エンタープライズ・コンソーシアム ( PGECons ) ● 国内の商用サポート – 提供会社いくつかあり、取り扱い会社多数 https://www.pgecons.org/postgresql-info/services/
  • 21. 21 ユーザ動向 ● 「より大規模」「よりクリティカル」は一巡 ● 世界中どこで使われていても珍しくない ● Oracle Database からの移行、最終組がスタート ● 「 RAC 同様」の壁は残る ● JPUG による利用調査 ● PostgreSQL は 4大人気 DBMS の一角 Oracle SQLServer MySQL PostgreSQL Other DBs 2019 年 JPUG 調べ : 「近年業務で関わった DBMS 」 回答数(複数回答)
  • 22. 22 JPUG の活動 ● イベント ● PostgreSQL アンカンファレンス - 最近はオンラインで毎月 ● PostgreSQL カンファレンス ● PostgreSQL 勉強会 - 各地支部でそれぞれ年1回~数回 ● 合宿 (年 0 ~ 1 回程度) ● OSC など各種イベントに出展(通年) ● 文書翻訳  https://github.com/pgsql-jp/jpug-doc ● ML 運営 pgsql-jp@postgresql.jp, jpug-users@postgresql.jp ● 最近は Slack postgresql-jp が人口増加中 ● Web 運営 ( www.postgresql.jp 、 lets.postgresql.jp )