Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
EN
Uploaded by
Insight Technology, Inc.
3,155 views
C16 45分でわかるPostgreSQLの仕組み by 山田努
Technology
◦
Read more
3
Save
Share
Embed
Embed presentation
Download
Downloaded 58 times
1
/ 25
2
/ 25
3
/ 25
4
/ 25
5
/ 25
6
/ 25
7
/ 25
8
/ 25
9
/ 25
10
/ 25
11
/ 25
12
/ 25
13
/ 25
14
/ 25
15
/ 25
16
/ 25
17
/ 25
18
/ 25
19
/ 25
20
/ 25
21
/ 25
22
/ 25
23
/ 25
24
/ 25
25
/ 25
More Related Content
PDF
PostgreSQLレプリケーション10周年!徹底紹介!(PostgreSQL Conference Japan 2019講演資料)
by
NTT DATA Technology & Innovation
PDF
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
by
NTT DATA Technology & Innovation
PDF
PG-REXで学ぶPacemaker運用の実例
by
kazuhcurry
PDF
速習!論理レプリケーション ~基礎から最新動向まで~(PostgreSQL Conference Japan 2022 発表資料)
by
NTT DATA Technology & Innovation
PDF
アーキテクチャから理解するPostgreSQLのレプリケーション
by
Masahiko Sawada
PPTX
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...
by
NTT DATA Technology & Innovation
PDF
統計情報のリセットによるautovacuumへの影響について(第39回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
PPTX
PostgreSQLモニタリング機能の現状とこれから(Open Developers Conference 2020 Online 発表資料)
by
NTT DATA Technology & Innovation
PostgreSQLレプリケーション10周年!徹底紹介!(PostgreSQL Conference Japan 2019講演資料)
by
NTT DATA Technology & Innovation
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
by
NTT DATA Technology & Innovation
PG-REXで学ぶPacemaker運用の実例
by
kazuhcurry
速習!論理レプリケーション ~基礎から最新動向まで~(PostgreSQL Conference Japan 2022 発表資料)
by
NTT DATA Technology & Innovation
アーキテクチャから理解するPostgreSQLのレプリケーション
by
Masahiko Sawada
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...
by
NTT DATA Technology & Innovation
統計情報のリセットによるautovacuumへの影響について(第39回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
PostgreSQLモニタリング機能の現状とこれから(Open Developers Conference 2020 Online 発表資料)
by
NTT DATA Technology & Innovation
What's hot
PPTX
PostgreSQL14の pg_stat_statements 改善(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
PDF
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
PPTX
世の中のPostgreSQLエンジニアのpsql設定(第34回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
PDF
YugabyteDBを使ってみよう(NewSQL/分散SQLデータベースよろず勉強会 #1 発表資料)
by
NTT DATA Technology & Innovation
PDF
PostgreSQL 15の新機能を徹底解説
by
Masahiko Sawada
PPTX
押さえておきたい、PostgreSQL 13 の新機能!!(Open Source Conference 2021 Online/Hokkaido 発表資料)
by
NTT DATA Technology & Innovation
PPTX
祝!PostgreSQLレプリケーション10周年!徹底紹介!!
by
NTT DATA Technology & Innovation
PDF
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(PostgreSQL Conference Japa...
by
NTT DATA Technology & Innovation
PDF
Vacuum徹底解説
by
Masahiko Sawada
PDF
トランザクション処理可能な分散DB 「YugabyteDB」入門(Open Source Conference 2022 Online/Fukuoka 発...
by
NTT DATA Technology & Innovation
PDF
PostgreSQLの運用・監視にまつわるエトセトラ
by
NTT DATA OSS Professional Services
PDF
Inside vacuum - 第一回PostgreSQLプレ勉強会
by
Masahiko Sawada
PDF
PostgreSQL13でのレプリケーション関連の改善について(第14回PostgreSQLアンカンファレンス@オンライン)
by
NTT DATA Technology & Innovation
PDF
Memoizeの仕組み(第41回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
PPTX
トランザクションの設計と進化
by
Kumazaki Hiroki
PPTX
PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
PDF
オンライン物理バックアップの排他モードと非排他モードについて(第15回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
PPTX
iostat await svctm の 見かた、考え方
by
歩 柴田
PDF
PostgreSQLでスケールアウト
by
Masahiko Sawada
PDF
TIME_WAITに関する話
by
Takanori Sejima
PostgreSQL14の pg_stat_statements 改善(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
世の中のPostgreSQLエンジニアのpsql設定(第34回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
YugabyteDBを使ってみよう(NewSQL/分散SQLデータベースよろず勉強会 #1 発表資料)
by
NTT DATA Technology & Innovation
PostgreSQL 15の新機能を徹底解説
by
Masahiko Sawada
押さえておきたい、PostgreSQL 13 の新機能!!(Open Source Conference 2021 Online/Hokkaido 発表資料)
by
NTT DATA Technology & Innovation
祝!PostgreSQLレプリケーション10周年!徹底紹介!!
by
NTT DATA Technology & Innovation
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(PostgreSQL Conference Japa...
by
NTT DATA Technology & Innovation
Vacuum徹底解説
by
Masahiko Sawada
トランザクション処理可能な分散DB 「YugabyteDB」入門(Open Source Conference 2022 Online/Fukuoka 発...
by
NTT DATA Technology & Innovation
PostgreSQLの運用・監視にまつわるエトセトラ
by
NTT DATA OSS Professional Services
Inside vacuum - 第一回PostgreSQLプレ勉強会
by
Masahiko Sawada
PostgreSQL13でのレプリケーション関連の改善について(第14回PostgreSQLアンカンファレンス@オンライン)
by
NTT DATA Technology & Innovation
Memoizeの仕組み(第41回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
トランザクションの設計と進化
by
Kumazaki Hiroki
PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
オンライン物理バックアップの排他モードと非排他モードについて(第15回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
iostat await svctm の 見かた、考え方
by
歩 柴田
PostgreSQLでスケールアウト
by
Masahiko Sawada
TIME_WAITに関する話
by
Takanori Sejima
Viewers also liked
PDF
OSS-DB Gold技術解説セミナー@db tech showcase 東京 2014
by
Shigeru Hanada
PDF
OSC東京2013/Spring_JPUG資料
by
Chika SATO
PDF
PostgreSQLのリカバリ超入門(もしくはWAL、CHECKPOINT、オンラインバックアップの仕組み)
by
Hironobu Suzuki
PDF
PostgreSQL SQLチューニング入門 実践編(pgcon14j)
by
Satoshi Yamada
PDF
OSS-DB Silver ポイント解説セミナー ~SQL編~ (PostgreSQL9.0)
by
Ryota Watabe
PDF
いまさら聞けないPostgreSQL運用管理
by
Uptime Technologies LLC (JP)
OSS-DB Gold技術解説セミナー@db tech showcase 東京 2014
by
Shigeru Hanada
OSC東京2013/Spring_JPUG資料
by
Chika SATO
PostgreSQLのリカバリ超入門(もしくはWAL、CHECKPOINT、オンラインバックアップの仕組み)
by
Hironobu Suzuki
PostgreSQL SQLチューニング入門 実践編(pgcon14j)
by
Satoshi Yamada
OSS-DB Silver ポイント解説セミナー ~SQL編~ (PostgreSQL9.0)
by
Ryota Watabe
いまさら聞けないPostgreSQL運用管理
by
Uptime Technologies LLC (JP)
Similar to C16 45分でわかるPostgreSQLの仕組み by 山田努
PDF
PostgreSQLバックアップの基本
by
Uptime Technologies LLC (JP)
PDF
PostgreSQLアーキテクチャ入門(INSIGHT OUT 2011)
by
Uptime Technologies LLC (JP)
PDF
PostgreSQLアーキテクチャ入門
by
Uptime Technologies LLC (JP)
PDF
PostgreSQLアーキテクチャ入門(PostgreSQL Conference 2012)
by
Uptime Technologies LLC (JP)
PDF
PostgreSQL 9.2 新機能 - 新潟オープンソースセミナー2012
by
Shigeru Hanada
ODP
PostgreSQL 9.2 新機能 - OSC 2012 Kansai@Kyoto
by
Shigeru Hanada
PDF
PostgreSQL安定運用のコツ2009 @hbstudy#5
by
Uptime Technologies LLC (JP)
PDF
PostgreSQL運用管理入門
by
Yoshiyuki Asaba
PDF
PostgreSQLのパラレル化に向けた取り組み@第30回(仮名)PostgreSQL勉強会
by
Shigeru Hanada
PDF
PostgreSQLではじめるOSS開発@OSC 2014 Hiroshima
by
Shigeru Hanada
PDF
外部データラッパによる PostgreSQL の拡張
by
Shigeru Hanada
PDF
C27 基幹領域への適用におけるpostgre sqlの抱える課題 by 原嘉彦
by
Insight Technology, Inc.
PDF
Heroku Postgres
by
Ayumu Aizawa
PDF
Heroku Postgres
by
Salesforce Developers Japan
PDF
Kof2016 postgresql-9.6
by
Toshi Harada
PDF
PostgreSQL10徹底解説
by
Masahiko Sawada
PDF
OSC沖縄2014_JPUG資料
by
kasaharatt
PDF
PostgreSQLのSQL処理の流れとMVCC (第48回 PostgreSQLアンカンファレンス 発表資料)
by
NTT DATA Technology & Innovation
PDF
5ステップで始めるPostgreSQLレプリケーション@hbstudy#13
by
Uptime Technologies LLC (JP)
PDF
[db tech showcase Tokyo 2014] B26: PostgreSQLを拡張してみよう by SRA OSS, Inc. 日本支社 高塚遥
by
Insight Technology, Inc.
PostgreSQLバックアップの基本
by
Uptime Technologies LLC (JP)
PostgreSQLアーキテクチャ入門(INSIGHT OUT 2011)
by
Uptime Technologies LLC (JP)
PostgreSQLアーキテクチャ入門
by
Uptime Technologies LLC (JP)
PostgreSQLアーキテクチャ入門(PostgreSQL Conference 2012)
by
Uptime Technologies LLC (JP)
PostgreSQL 9.2 新機能 - 新潟オープンソースセミナー2012
by
Shigeru Hanada
PostgreSQL 9.2 新機能 - OSC 2012 Kansai@Kyoto
by
Shigeru Hanada
PostgreSQL安定運用のコツ2009 @hbstudy#5
by
Uptime Technologies LLC (JP)
PostgreSQL運用管理入門
by
Yoshiyuki Asaba
PostgreSQLのパラレル化に向けた取り組み@第30回(仮名)PostgreSQL勉強会
by
Shigeru Hanada
PostgreSQLではじめるOSS開発@OSC 2014 Hiroshima
by
Shigeru Hanada
外部データラッパによる PostgreSQL の拡張
by
Shigeru Hanada
C27 基幹領域への適用におけるpostgre sqlの抱える課題 by 原嘉彦
by
Insight Technology, Inc.
Heroku Postgres
by
Ayumu Aizawa
Heroku Postgres
by
Salesforce Developers Japan
Kof2016 postgresql-9.6
by
Toshi Harada
PostgreSQL10徹底解説
by
Masahiko Sawada
OSC沖縄2014_JPUG資料
by
kasaharatt
PostgreSQLのSQL処理の流れとMVCC (第48回 PostgreSQLアンカンファレンス 発表資料)
by
NTT DATA Technology & Innovation
5ステップで始めるPostgreSQLレプリケーション@hbstudy#13
by
Uptime Technologies LLC (JP)
[db tech showcase Tokyo 2014] B26: PostgreSQLを拡張してみよう by SRA OSS, Inc. 日本支社 高塚遥
by
Insight Technology, Inc.
More from Insight Technology, Inc.
PDF
グラフデータベースは如何に自然言語を理解するか?
by
Insight Technology, Inc.
PDF
Docker and the Oracle Database
by
Insight Technology, Inc.
PDF
Great performance at scale~次期PostgreSQL12のパーティショニング性能の実力に迫る~
by
Insight Technology, Inc.
PDF
事例を通じて機械学習とは何かを説明する
by
Insight Technology, Inc.
PDF
仮想通貨ウォレットアプリで理解するデータストアとしてのブロックチェーン
by
Insight Technology, Inc.
PDF
MBAAで覚えるDBREの大事なおしごと
by
Insight Technology, Inc.
PDF
グラフデータベースは如何に自然言語を理解するか?
by
Insight Technology, Inc.
PDF
DBREから始めるデータベースプラットフォーム
by
Insight Technology, Inc.
PDF
SQL Server エンジニアのためのコンテナ入門
by
Insight Technology, Inc.
PDF
Lunch & Learn, AWS NoSQL Services
by
Insight Technology, Inc.
PDF
db tech showcase2019オープニングセッション @ 森田 俊哉
by
Insight Technology, Inc.
PDF
db tech showcase2019 オープニングセッション @ 石川 雅也
by
Insight Technology, Inc.
PDF
db tech showcase2019 オープニングセッション @ マイナー・アレン・パーカー
by
Insight Technology, Inc.
PPTX
難しいアプリケーション移行、手軽に試してみませんか?
by
Insight Technology, Inc.
PPTX
Attunityのソリューションと異種データベース・クラウド移行事例のご紹介
by
Insight Technology, Inc.
PPTX
そのデータベース、クラウドで使ってみませんか?
by
Insight Technology, Inc.
PPTX
コモディティサーバー3台で作る高速処理 “ハイパー・コンバージド・データベース・インフラストラクチャー(HCDI)” システム『Insight Qube』...
by
Insight Technology, Inc.
PDF
複数DBのバックアップ・切り戻し運用手順が異なって大変?!運用性の大幅改善、その先に。。
by
Insight Technology, Inc.
PPTX
Attunity社のソリューションの日本国内外適用事例及びロードマップ紹介[ATTUNITY & インサイトテクノロジー IoT / Big Data フ...
by
Insight Technology, Inc.
PPTX
レガシーに埋もれたデータをリアルタイムでクラウドへ [ATTUNITY & インサイトテクノロジー IoT / Big Data フォーラム 2018]
by
Insight Technology, Inc.
グラフデータベースは如何に自然言語を理解するか?
by
Insight Technology, Inc.
Docker and the Oracle Database
by
Insight Technology, Inc.
Great performance at scale~次期PostgreSQL12のパーティショニング性能の実力に迫る~
by
Insight Technology, Inc.
事例を通じて機械学習とは何かを説明する
by
Insight Technology, Inc.
仮想通貨ウォレットアプリで理解するデータストアとしてのブロックチェーン
by
Insight Technology, Inc.
MBAAで覚えるDBREの大事なおしごと
by
Insight Technology, Inc.
グラフデータベースは如何に自然言語を理解するか?
by
Insight Technology, Inc.
DBREから始めるデータベースプラットフォーム
by
Insight Technology, Inc.
SQL Server エンジニアのためのコンテナ入門
by
Insight Technology, Inc.
Lunch & Learn, AWS NoSQL Services
by
Insight Technology, Inc.
db tech showcase2019オープニングセッション @ 森田 俊哉
by
Insight Technology, Inc.
db tech showcase2019 オープニングセッション @ 石川 雅也
by
Insight Technology, Inc.
db tech showcase2019 オープニングセッション @ マイナー・アレン・パーカー
by
Insight Technology, Inc.
難しいアプリケーション移行、手軽に試してみませんか?
by
Insight Technology, Inc.
Attunityのソリューションと異種データベース・クラウド移行事例のご紹介
by
Insight Technology, Inc.
そのデータベース、クラウドで使ってみませんか?
by
Insight Technology, Inc.
コモディティサーバー3台で作る高速処理 “ハイパー・コンバージド・データベース・インフラストラクチャー(HCDI)” システム『Insight Qube』...
by
Insight Technology, Inc.
複数DBのバックアップ・切り戻し運用手順が異なって大変?!運用性の大幅改善、その先に。。
by
Insight Technology, Inc.
Attunity社のソリューションの日本国内外適用事例及びロードマップ紹介[ATTUNITY & インサイトテクノロジー IoT / Big Data フ...
by
Insight Technology, Inc.
レガシーに埋もれたデータをリアルタイムでクラウドへ [ATTUNITY & インサイトテクノロジー IoT / Big Data フォーラム 2018]
by
Insight Technology, Inc.
C16 45分でわかるPostgreSQLの仕組み by 山田努
1.
45分でわかる
PostgreSQLの仕組み 2012/10/17 SRA OSS, Inc. Japan 山田 努 tsutomu@sraoss.co.jp 2012/10/17 Copyright © 2012 SRA OSS, Inc. Japan All rights reserved. 1
2.
序:目次
各サーバプロセス クライアント/サーバ通信 データ格納、ストレージ上の記録方式 SQL実行 トランザクション処理 トランザクションログとリカバリ、レプリケーション 2012/10/17 Copyright © 2012 SRA OSS, Inc. Japan All rights reserved. 2
3.
プロセス構成 postmaterがメイン 常駐支援プロセス
一部設定に依存 postmaster postgres 接続要求に応じて startup postgres 子プロセスを起動 writer wal writer checkpointer archiver stats collector logger wal receiver wal sender autovacuum launcher autovacuum worker 2012/10/17 Copyright © 2012 SRA OSS, Inc. Japan All rights reserved. 3
4.
各プロセスの役割 プロセス postmaster
PostgreSQLの親プロセス。接続を待ち受けるプロセス。 postgres 個々のクライアントの要求を処理するプロセス。 writer 共有バッファをディスクに書き出すプロセス。 wal writer WAL書き込みを行うプロセス。 checkpointer CHECKPOINT処理を行うプロセス。(9.2) archiver WALログをアーカイブするプロセス。 logger PostgreSQLのログをファイルへ書き出すプロセス。 stats collector 統計情報を収集するプロセス。 autovacuum launcher 不要領域を監視するプロセス。 autovacuum worker 自動VACUUMを実行するプロセス。複数起動することがある。 wal sender WALをスタンバイサーバへ転送するプロセス。 wal receiver WALをマスターサーバから受信するプロセス。
5.
プロセス間通信 signalによる通知(INT,TERM,USR1)
Windows版はEvent を使う latch (9.1~) pipeを使ってsignalを捉える仕組み SysV IPC 共有メモリ セマフォ localhost udp statistic collecter 2012/10/17 Copyright © 2012 SRA OSS, Inc. Japan All rights reserved. 5
6.
クライアント/サーバ ソケット通信(tcp/stream)
unix domain IPv4,v6 接続要求を受けてから fork() する ユーザ認証は、子プロセス側で行なわれる pg_hba.conf 2012/10/17 Copyright © 2012 SRA OSS, Inc. Japan All rights reserved. 6
7.
通信プロトコル プロトコルバージョン3.0 認証
キャンセルキー 別の接続経路を使って、中止依頼を送信する 簡易問い合わせ、SQL文字列で送信 拡張問い合わせ、PREPAREとEXECUTE parse/bind/excute notice バックエンドからの通知 2012/10/17 Copyright © 2012 SRA OSS, Inc. Japan All rights reserved. 7
8.
データベースクラスタ データベースクラスタ
ファイルシステムに記録されるデータ一式 initdbコマンドで作成される プロセスの集合体 postmasterプロセス他 (前述) データベースクラスタで共有される情報 ロール、データベース global/ ディレクトリ = pg_globalテーブルスペース 2012/10/17 Copyright © 2012 SRA OSS, Inc. Japan All rights reserved. 8
9.
プロセスとデータベースクラスタ
データベースクラスタ initdb 生成 コマンド テンプレート template0 template1 データベース postmaster プロセス 対応 userdb1 userdb2 postgres postgres プロセス データベース 対応 postgres postgres user1 user2 ロール プロセス
10.
データ格納 ファイルシステム上の1ディレクトリ
ディレクトリ構成 global/ pg_control … base/数字(データベース)/数字(リレーション) pg_clog/ pg_xlog/16進数24桁(トランザクションログ) pg_tblspc/シンボリックリンク(テーブルスペース) *.conf (設定ファイル) 2012/10/17 Copyright © 2012 SRA OSS, Inc. Japan All rights reserved. 10
11.
テーブルデータ リレーション単位(テーブル、インデックス)
pg_class.relfilenode, oidで管理 pg_filenode.map, pg_relation_filenode() 1ファイル 1GBに分割 TOAST (The Oversized-Attribute Storage Technique) _fsm (Free Space Map),_vm (Visibility Map) タプルが見える = 有効である = VACUUM不要 index only scanでも利用 2012/10/17 Copyright © 2012 SRA OSS, Inc. Japan All rights reserved. 11
12.
ブロック構造 タプル(行)データはブロック単位で管理
テーブルファイル ctid = (1, 1) pd_linp[0] ctid = (1, 2) ctid = (1, 3) 8kB 0ページ PageHeaderData pd_linp[1] pd_linp[2] pd_linp[3] … pd_linp[n] 8kB 1ページ ctid = (1, 4) ctid = (1, n + 1) pd_lower 8kB 2ページ フリースペース フリースペース pd_upper … タプルn … タプル3 タプル2 タプル1 特殊データ 8kB nページ nページ pd_special ページサイズは最大32kB 2012/10/17 Copyright © 2012 SRA OSS, Inc. Japan All rights reserved. 12
13.
VACUUM 追記型アーキテクチャ
世代管理 トランザクションID周回問題 不要領域の回収 HOT (Heap Only Tuple) 更新内容を同じページ内に記録してリンクを作る。インデッ クスの更新を不要にする。適時不要領域の回収が可能。 fill factor
14.
SQL実行処理 parse
prepare/bind rewrite planner/optimizer executer 2012/10/17 Copyright © 2012 SRA OSS, Inc. Japan All rights reserved. 14
15.
パース、リライト パースツリー
デバックログ debug_print_parse / debug_print_rewritten / debug_print_plan SQLの書き換え(rewrite) pg_rules (pg_rewrite) pg_views
16.
最適化処理 optimizer
ルールによるクエリ書き換え FROM JOINの組合せ、順序 コスト計算 スキャン方法の選択 ANALYZEによる統計情報 ヒント句はない 設定パラメータの影響も少ない 2012/10/17 Copyright © 2012 SRA OSS, Inc. Japan All rights reserved. 16
17.
executor プランに従って、データの参照・更新を行なう 共有バッファの管理
ページ エグゼキュータ 対応する ブロック ページが 既にあれば 共有バッファメ ブロックは テーブルファイル クライアント モリ 読まない
18.
データ書き込み 更新はトランザクションログと共有バッファに行なう
エグゼキュータ データ変更 非同期書き込み 変更01 (1) (2) クラッシュしたら 変更02 ページ トランザクションログ 変更03 から復旧 ブロック トランザクションログ 共有バッファメモリ (pg_xlog)
19.
トランザクション隔離と同時実行 MVCC (MultiVersion
Concurrency Control) 多版型同時実行制御 追記型 トランザクションIDを使った管理 タプルは特殊なカラムを持っている xmin,xmax,cmin,cmax 作られた時、消された時、その操作をしたトランザクション コマンドID (ex) CURSOR FETCHで見えるか見えないか 2012/10/17 Copyright © 2012 SRA OSS, Inc. Japan All rights reserved. 19
20.
コミットログ pg_clog/
トランザクションの状態 実行中 / COMMITED / ABORTED 参考文献 Mvcc Unmasked - Bruce Momjian January, 2012 http://momjian.us/main/writings/pgsql/mvcc.pdf
21.
トランザクションログ pg_xlog/ WAL
(write ahead log) 何を実行したかの記録 バッファに対する変更内容を記録 XLogInsert() 確実に記録するために同期書き込み 複数の実行バックエンドのための処理が入る 共有バッファの更新前に処理される(共有バッファの同期は後述) 2012/10/17 Copyright © 2012 SRA OSS, Inc. Japan All rights reserved. 21
22.
リカバリ recoveryモード
プログラム起動時の初期処理 WALファイルを元に再実行(replay) standbyモードやreplicationは、常時リカバリ状態になっ ている 2012/10/17 Copyright © 2012 SRA OSS, Inc. Japan All rights reserved. 22
23.
同期処理 共有バッファの更新内容をディスクへ書き込む checkpoint
過去のトランザクションログが不要になる WALのリサイクル WALが不足すると強制checkpoint 最後のcheckpoint以降の更新がクラッシュリカバリに必要 共有バッファが不足した時は随時書き出す バックグラウンド書き込み writerプロセス 2012/10/17 Copyright © 2012 SRA OSS, Inc. Japan All rights reserved. 23
24.
レプリケーション streaming replication
ネットワーク経由でWALを受信 非同期・同期 詳しくは、別のところで… 2012/10/17 Copyright © 2012 SRA OSS, Inc. Japan All rights reserved. 24
25.
終り 各項目についての解説は他にも色々とありますので
、探してみて下さい。 他データベースでの各処理の仕組みと比較するのも 良いだろう。 ご静聴ありがとうございました。
Download