SlideShare una empresa de Scribd logo
1 de 30
NTTデータ テクノロジーカンファレンス 2020
© 2020 NTT DATA Corporation
スケールアウトするPostgreSQLを目指して!その第一歩!
2020年10月16日
株式会社NTTデータ 藤井 雅雄
2
© 2020 NTT DATA Corporation
自己紹介
藤井 雅雄
Database Technical Lead
データベース研究開発
PostgreSQL 技術支援
PostgreSQLコミッタ
レプリケーション
WAL圧縮、バックアップ進捗
@fujii_masao
3
© 2020 NTT DATA Corporation
アジェンダ
 スケールアウトとは?
 PostgreSQLで利用できるスケールアウト機能とその課題について
 よりよいスケールアウト機能を目指して、
その第一歩としてのグローバルトランザクションの実現について
4
© 2020 NTT DATA Corporation
スケールアウトとは?
スケールアップ
サーバのスペックを増強して、システム全体の性能を向上させること
スケールアウト
サーバの台数を増やして、システム全体の性能を向上させること
スペック増強
(CPU/メモリ等)
サーバ追加
5
© 2020 NTT DATA Corporation
PostgreSQLで利用できるスケールアウト機能と課題
レプリケーション
FDW (Foreign Data Wrapper)
1
2
6
© 2020 NTT DATA Corporation
PostgreSQLで利用できるスケールアウト機能と課題
レプリケーション
 プライマリ1台からレプリカ複数台にDBを複製
 参照SQLを実行可能なレプリカの台数を増やすことで、参照処理をスケールアウトできる
 更新SQLを実行可能なプライマリは1台のみのため、更新処理はスケールアウトできない
1
複製
参照と更新
プライマリ レプリカ1 レプリカ2 レプリカ3
複製
複製
参照のみ 参照のみ 参照のみ
7
© 2020 NTT DATA Corporation
PostgreSQLで利用できるスケールアウト機能と課題
FDW (Foreign Data Wrapper)
 外部のデータをPostgreSQLのテーブル(外部テーブル)として扱う機能
 FDWを介してサーバ間でデータを参照・更新できる
2
ID 場所
1 千葉
2 埼玉
…
外部
テーブル
サーバ1
1,千葉
2,埼玉
…
CSV
ファイル
ID 部署
a1 総務
a2 営業
…
実
テーブル
外部
テーブル サーバ2
ID 部署
a1 総務
a2 営業
…
FDW
FDW
SELECT read()
8
© 2020 NTT DATA Corporation
PostgreSQLで利用できるスケールアウト機能と課題
FDW (Foreign Data Wrapper)
 外部のデータをPostgreSQLのテーブル(外部テーブル)として扱う機能
 FDWを介してサーバ間でデータを参照・更新できる
2
ID 場所
1 千葉
2 埼玉
…
外部
テーブル
サーバ1
1,千葉
2,埼玉
…
CSV
ファイル
ID 部署
a1 総務
a2 営業
…
実
テーブル
外部
テーブル サーバ2
ID 部署
a1 総務
a2 営業
…
FDW
FDW
UPDATE
UPDATE
9
© 2020 NTT DATA Corporation
PostgreSQLで利用できるスケールアウト機能と課題
FDW (Foreign Data Wrapper)
 データベースを複数台のPostgreSQLに分割配置して、
FDWを介して処理を分散することで、参照と更新ともにスケールアウトできる
 複数台のサーバをまたがったトランザクションであるグローバルトランザクションをサポートしていない
A B C
B C
2
サーバ1
サーバ2 サーバ3
参照と更新 参照と更新 参照と更新
FDW FDW
10
© 2020 NTT DATA Corporation
よりよいスケールアウト機能を目指して
参照と更新ともにスケールアウトさせる
グローバルトランザクションをサポートする
目指す方向性
PostgreSQLコミュニティで、
スケールアウト機能の開発・改善が始まっている
レプリケーション
更新をスケールアウトできない
FDW
グローバルトランザクションを未サポート
既存機能の課題
2
1
11
© 2020 NTT DATA Corporation
よりよいスケールアウト機能を目指して
参照と更新ともにスケールアウトさせる
レプリケーション
更新をスケールアウトできない
グローバルトランザクションをサポートする
FDW
グローバルトランザクションを未サポート
目指す方向性
既存機能の課題
PostgreSQLコミュニティで、
スケールアウト機能の開発・改善が始まっている
PostgreSQL本体に機能を組み込む!!
2
1
© 2020 NTT DATA Corporation 12
【アンケート】
実際、PostgreSQLのスケールアウトは必要でしょうか?
A. トランザクションを保証した上で、参照も更新もスケールアウトしたい!
B. 課題はあるが、既存機能のスケールアウトで十分!
C. スケールアップで十分で、スケールアウトまでは不要!
D. スケールアップとスケールアウトのどちらも不要!
13
© 2020 NTT DATA Corporation
よりよいスケールアウト機能を目指して、その第一歩
FDWベースのスケールアウト構成に、
グローバルトランザクションのサポートを追加する方向性
1
2
Atomic Commit
Atomic Visibility
グローバル
トランザクション
A B C
B C
サーバ1
サーバ2 サーバ3
参照と更新 参照と更新 参照と更新
FDW FDW
14
© 2020 NTT DATA Corporation
Atomic Commit
サーバ間でトランザクションの実行結果に整合性があること
複数のサーバ上で行われる複数の操作について、
すべての操作が成功(COMMIT)するか、
すべての操作が失敗(ROLLBACK)すること
A B C
FDW FDW
B C
サーバ1
サーバ2 サーバ3
トランザクション
COMMIT
成功
Atomic Commitで解消したいトランザクションの不整合
15
© 2020 NTT DATA Corporation
Atomic Commit
サーバ間でトランザクションの実行結果に整合性があること
複数のサーバ上で行われる複数の操作について、
すべての操作が成功(COMMIT)するか、
すべての操作が失敗(ROLLBACK)すること
A B C
FDW FDW
B C
サーバ1
サーバ2 サーバ3
トランザクション
COMMIT
成功
COMMIT
成功
Atomic Commitで解消したいトランザクションの不整合
16
© 2020 NTT DATA Corporation
Atomic Commit
サーバ間でトランザクションの実行結果に整合性があること
複数のサーバ上で行われる複数の操作について、
すべての操作が成功(COMMIT)するか、
すべての操作が失敗(ROLLBACK)すること
A B C
FDW FDW
B C
サーバ1
サーバ2 サーバ3
トランザクション
COMMIT
失敗
COMMIT
成功
COMMIT
成功
Atomic Commitで解消したいトランザクションの不整合
トランザクションがサーバ3のみ
COMMITに失敗すると、
サーバ間のトランザクションの
整合性が失われる!!
17
© 2020 NTT DATA Corporation
二相コミットによるAtomic Commitの実現
複数台のサーバをまたがったトランザクションをCOMMITする際に、
二相コミットを使って、Atomic Commitを実現する方向性
COMMIT要求
COMMIT準備
トランザクション
COMMIT準備
A
サーバ1 サーバ2 サーバ3
B C
FDW
FDW
まずはFDWを介して
COMMIT準備を行い、
すべてのCOMMIT準備が
成功したらCOMMITを行う
18
© 2020 NTT DATA Corporation
二相コミットによるAtomic Commitの実現
複数台のサーバをまたがったトランザクションをCOMMITする際に、
二相コミットを使って、Atomic Commitを実現する方向性
COMMIT要求
COMMIT準備
トランザクション
COMMIT
COMMIT準備
COMMIT
A
サーバ1 サーバ2 サーバ3
B C
COMMIT成功
COMMIT
まずはFDWを介して
COMMIT準備を行い、
すべてのCOMMIT準備が
成功したらCOMMITを行う
FDW
FDW
FDW
FDW
19
© 2020 NTT DATA Corporation
二相コミットによるAtomic Commitの実現
複数台のサーバをまたがったトランザクションをCOMMITする際に、
二相コミットを使って、Atomic Commitを実現する方向性
COMMIT要求
COMMIT準備
トランザクション
COMMIT準備
A
サーバ1 サーバ2 サーバ3
B C
FDW
FDW
まずはFDWを介して
COMMIT準備を行い、
COMMIT準備が
失敗したサーバがあれば、
ROLLBACKを行う
20
© 2020 NTT DATA Corporation
二相コミットによるAtomic Commitの実現
複数台のサーバをまたがったトランザクションをCOMMITする際に、
二相コミットを使って、Atomic Commitを実現する方向性
COMMIT要求
COMMIT準備
トランザクション
COMMIT準備失敗
A
サーバ1 サーバ2 サーバ3
B C
FDW
FDW
まずはFDWを介して
COMMIT準備を行い、
COMMIT準備が
失敗したサーバがあれば、
ROLLBACKを行う
ROLLBACK
COMMIT失敗
ROLLBACK
FDW
© 2020 NTT DATA Corporation 21
【アンケート結果】
実際、PostgreSQLのスケールアウトは必要でしょうか?
A. トランザクションを保証した上で、参照も更新もスケールアウトしたい!
B. 課題はあるが、既存機能のスケールアウトで十分!
C. スケールアップで十分で、スケールアウトまでは不要!
D. スケールアップとスケールアウトのどちらも不要!
22
© 2020 NTT DATA Corporation
Atomic Visibility
A B C
FDW FDW
B C
サーバ1
サーバ2 サーバ3
トランザクション①
COMMIT
途中
COMMIT
成功
COMMIT
成功
サーバ間でトランザクション実行の観測結果に整合性があること
複数のサーバ上で行われる複数の操作について
すべての操作が成功(COMMIT)、すべての操作が失敗(ROLLBACK)、
すべての操作が実行中のいずれかだと、他のトランザクションから観測できること
Atomic Visibilityで解消したいトランザクションの不整合 トランザクション①がCOMMITしたとき、
実行タイミングのずれにより、
サーバ3のみCOMMIT実行途中の状態
23
© 2020 NTT DATA Corporation
Atomic Visibility
A B C
FDW FDW
B C
サーバ1
サーバ2 サーバ3
トランザクション①
COMMIT
途中
COMMIT
成功
COMMIT
成功
トランザクション②
サーバ間でトランザクション実行の観測結果に整合性があること
複数のサーバ上で行われる複数の操作について
すべての操作が成功(COMMIT)、すべての操作が失敗(ROLLBACK)、
すべての操作が実行中のいずれかだと、他のトランザクションから観測できること
Atomic Visibilityで解消したいトランザクションの不整合 トランザクション②が全サーバを参照すると、
サーバ3だけトランザクション①は
未COMMITに見えて不整合が発生!!
参照
参照
参照
24
© 2020 NTT DATA Corporation
集中管理によるAtomic Visibilityの実現
A B C
FDW FDW
B C
サーバ1
サーバ2 サーバ3
グローバルトランザクションマネージャでサーバ間のトランザクションを集中管理
 トランザクションの開始・終了を管理
 トランザクションの開始・終了を通知 → 通知結果をベースに参照
グローバル
トランザクション
マネージャ
25
© 2020 NTT DATA Corporation
集中管理によるAtomic Visibilityの実現
A B C
FDW FDW
B C
サーバ1
サーバ2 サーバ3
トランザクション①
グローバルトランザクションマネージャでサーバ間のトランザクションを集中管理
 トランザクションの開始・終了を管理
 トランザクションの開始・終了を通知 → 通知結果をベースに参照
COMMIT
途中
COMMIT
成功
COMMIT
成功
グローバル
トランザクション
マネージャ
「トランザクション①のCOMMITは
まだ完了していない」と管理
26
© 2020 NTT DATA Corporation
集中管理によるAtomic Visibilityの実現
A B C
FDW FDW
B C
サーバ1
サーバ2 サーバ3
トランザクション①
グローバルトランザクションマネージャでサーバ間のトランザクションを集中管理
 トランザクションの開始・終了を管理
 トランザクションの開始・終了を通知 → 通知結果をベースに参照
COMMIT
途中
COMMIT
成功
COMMIT
成功
グローバル
トランザクション
マネージャ
トランザクション②
「トランザクション①のCOMMITは
まだ完了していない」と通知
27
© 2020 NTT DATA Corporation
集中管理によるAtomic Visibilityの実現
A B C
FDW FDW
B C
サーバ1
サーバ2 サーバ3
トランザクション①
グローバルトランザクションマネージャでサーバ間のトランザクションを集中管理
 トランザクションの開始・終了を管理
 トランザクションの開始・終了を通知 → 通知結果をベースに参照
COMMIT
途中
COMMIT
成功
COMMIT
成功
グローバル
トランザクション
マネージャ
トランザクション②
参照
参照
参照
通知結果から、トランザクション①の処理結果
はすべてのサーバで参照しないと判断
28
© 2020 NTT DATA Corporation
集中管理しないAtomic Visibilityの実現
A B C
FDW FDW
B C
サーバ1
サーバ2 サーバ3
トランザクション①
集中管理しない Clock-SI などの方式も検討されている
 集中管理の方式では、グローバルトランザクションマネージャが
性能ボトルネックやSPoFになるリスクがある
COMMIT
途中
COMMIT
成功
COMMIT
成功
トランザクション②
参照
参照
参照
• どのトランザクションの処理結果を参照してよいか、
サーバの時刻情報から判断
• 参照先がCOMMIT途中の場合は、
COMMIT/ROLLBACKが確定するまで待つ
29
© 2020 NTT DATA Corporation
おわりに
よりよいスケールアウト機能を目指して開発が始まっています。
その第一弾として、複数台のPostgreSQLをまたがる
グローバルトランザクションをサポートするために
の実現に取り組んでいます!
PostgreSQLのスケールアウト機能に、
ぜひご期待ください!
1
2
Atomic Commit
Atomic Visibility
© 2020 NTT DATA Corporation

Más contenido relacionado

La actualidad más candente

PostgreSQLでスケールアウト
PostgreSQLでスケールアウトPostgreSQLでスケールアウト
PostgreSQLでスケールアウトMasahiko Sawada
 
分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)
分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)
分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)NTT DATA Technology & Innovation
 
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)NTT DATA Technology & Innovation
 
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)NTT DATA Technology & Innovation
 
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~NTT DATA OSS Professional Services
 
PG-REXで学ぶPacemaker運用の実例
PG-REXで学ぶPacemaker運用の実例PG-REXで学ぶPacemaker運用の実例
PG-REXで学ぶPacemaker運用の実例kazuhcurry
 
大規模データ処理の定番OSS Hadoop / Spark 最新動向 - 2021秋 -(db tech showcase 2021 / ONLINE 発...
大規模データ処理の定番OSS Hadoop / Spark 最新動向 - 2021秋 -(db tech showcase 2021 / ONLINE 発...大規模データ処理の定番OSS Hadoop / Spark 最新動向 - 2021秋 -(db tech showcase 2021 / ONLINE 発...
大規模データ処理の定番OSS Hadoop / Spark 最新動向 - 2021秋 -(db tech showcase 2021 / ONLINE 発...NTT DATA Technology & Innovation
 
Javaコードが速く実⾏される秘密 - JITコンパイラ⼊⾨(JJUG CCC 2020 Fall講演資料)
Javaコードが速く実⾏される秘密 - JITコンパイラ⼊⾨(JJUG CCC 2020 Fall講演資料)Javaコードが速く実⾏される秘密 - JITコンパイラ⼊⾨(JJUG CCC 2020 Fall講演資料)
Javaコードが速く実⾏される秘密 - JITコンパイラ⼊⾨(JJUG CCC 2020 Fall講演資料)NTT DATA Technology & Innovation
 
Apache Sparkの基本と最新バージョン3.2のアップデート(Open Source Conference 2021 Online/Fukuoka ...
Apache Sparkの基本と最新バージョン3.2のアップデート(Open Source Conference 2021 Online/Fukuoka ...Apache Sparkの基本と最新バージョン3.2のアップデート(Open Source Conference 2021 Online/Fukuoka ...
Apache Sparkの基本と最新バージョン3.2のアップデート(Open Source Conference 2021 Online/Fukuoka ...NTT DATA Technology & Innovation
 
Dockerfile を書くためのベストプラクティス解説編
Dockerfile を書くためのベストプラクティス解説編Dockerfile を書くためのベストプラクティス解説編
Dockerfile を書くためのベストプラクティス解説編Masahito Zembutsu
 
DockerとPodmanの比較
DockerとPodmanの比較DockerとPodmanの比較
DockerとPodmanの比較Akihiro Suda
 
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...NTT DATA Technology & Innovation
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Akihiro Suda
 
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(PostgreSQL Conference Japa...
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(PostgreSQL Conference Japa...PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(PostgreSQL Conference Japa...
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(PostgreSQL Conference Japa...NTT DATA Technology & Innovation
 
Linux女子部 systemd徹底入門
Linux女子部 systemd徹底入門Linux女子部 systemd徹底入門
Linux女子部 systemd徹底入門Etsuji Nakai
 
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)NTT DATA Technology & Innovation
 
AlloyDBを触ってみた!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)
AlloyDBを触ってみた!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)AlloyDBを触ってみた!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)
AlloyDBを触ってみた!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)NTT DATA Technology & Innovation
 

La actualidad más candente (20)

PostgreSQLでスケールアウト
PostgreSQLでスケールアウトPostgreSQLでスケールアウト
PostgreSQLでスケールアウト
 
分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)
分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)
分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)
 
Docker Compose 徹底解説
Docker Compose 徹底解説Docker Compose 徹底解説
Docker Compose 徹底解説
 
Vacuum徹底解説
Vacuum徹底解説Vacuum徹底解説
Vacuum徹底解説
 
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
 
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
 
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
 
PG-REXで学ぶPacemaker運用の実例
PG-REXで学ぶPacemaker運用の実例PG-REXで学ぶPacemaker運用の実例
PG-REXで学ぶPacemaker運用の実例
 
大規模データ処理の定番OSS Hadoop / Spark 最新動向 - 2021秋 -(db tech showcase 2021 / ONLINE 発...
大規模データ処理の定番OSS Hadoop / Spark 最新動向 - 2021秋 -(db tech showcase 2021 / ONLINE 発...大規模データ処理の定番OSS Hadoop / Spark 最新動向 - 2021秋 -(db tech showcase 2021 / ONLINE 発...
大規模データ処理の定番OSS Hadoop / Spark 最新動向 - 2021秋 -(db tech showcase 2021 / ONLINE 発...
 
Javaコードが速く実⾏される秘密 - JITコンパイラ⼊⾨(JJUG CCC 2020 Fall講演資料)
Javaコードが速く実⾏される秘密 - JITコンパイラ⼊⾨(JJUG CCC 2020 Fall講演資料)Javaコードが速く実⾏される秘密 - JITコンパイラ⼊⾨(JJUG CCC 2020 Fall講演資料)
Javaコードが速く実⾏される秘密 - JITコンパイラ⼊⾨(JJUG CCC 2020 Fall講演資料)
 
Apache Sparkの基本と最新バージョン3.2のアップデート(Open Source Conference 2021 Online/Fukuoka ...
Apache Sparkの基本と最新バージョン3.2のアップデート(Open Source Conference 2021 Online/Fukuoka ...Apache Sparkの基本と最新バージョン3.2のアップデート(Open Source Conference 2021 Online/Fukuoka ...
Apache Sparkの基本と最新バージョン3.2のアップデート(Open Source Conference 2021 Online/Fukuoka ...
 
Dockerfile を書くためのベストプラクティス解説編
Dockerfile を書くためのベストプラクティス解説編Dockerfile を書くためのベストプラクティス解説編
Dockerfile を書くためのベストプラクティス解説編
 
DockerとPodmanの比較
DockerとPodmanの比較DockerとPodmanの比較
DockerとPodmanの比較
 
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
 
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(PostgreSQL Conference Japa...
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(PostgreSQL Conference Japa...PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(PostgreSQL Conference Japa...
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(PostgreSQL Conference Japa...
 
Linux女子部 systemd徹底入門
Linux女子部 systemd徹底入門Linux女子部 systemd徹底入門
Linux女子部 systemd徹底入門
 
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
 
AlloyDBを触ってみた!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)
AlloyDBを触ってみた!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)AlloyDBを触ってみた!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)
AlloyDBを触ってみた!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)
 
PostgreSQLの運用・監視にまつわるエトセトラ
PostgreSQLの運用・監視にまつわるエトセトラPostgreSQLの運用・監視にまつわるエトセトラ
PostgreSQLの運用・監視にまつわるエトセトラ
 

Similar a スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)

サーバを仮想化したのにネットワークはこれまで通りでいい?←いや、いや、そんなわけないでしょ
サーバを仮想化したのにネットワークはこれまで通りでいい?←いや、いや、そんなわけないでしょサーバを仮想化したのにネットワークはこれまで通りでいい?←いや、いや、そんなわけないでしょ
サーバを仮想化したのにネットワークはこれまで通りでいい?←いや、いや、そんなわけないでしょBrocade
 
AWS で Presto を徹底的に使いこなすワザ
AWS で Presto を徹底的に使いこなすワザAWS で Presto を徹底的に使いこなすワザ
AWS で Presto を徹底的に使いこなすワザNoritaka Sekiyama
 
【HinemosWorld2014】A1-3_01_NTT Comのグローバルクラウド戦略とHinemosとの連携について
【HinemosWorld2014】A1-3_01_NTT Comのグローバルクラウド戦略とHinemosとの連携について【HinemosWorld2014】A1-3_01_NTT Comのグローバルクラウド戦略とHinemosとの連携について
【HinemosWorld2014】A1-3_01_NTT Comのグローバルクラウド戦略とHinemosとの連携についてHinemos
 
Airflowを広告データのワークフローエンジンとして運用してみた話
Airflowを広告データのワークフローエンジンとして運用してみた話Airflowを広告データのワークフローエンジンとして運用してみた話
Airflowを広告データのワークフローエンジンとして運用してみた話Katsunori Kanda
 
【HinemosWorld2015】A1-3_コンテナ技術Dockerの導入事例と完全運用自動化
【HinemosWorld2015】A1-3_コンテナ技術Dockerの導入事例と完全運用自動化【HinemosWorld2015】A1-3_コンテナ技術Dockerの導入事例と完全運用自動化
【HinemosWorld2015】A1-3_コンテナ技術Dockerの導入事例と完全運用自動化Hinemos
 
AZAREA-Clusterセミナー(クラウドEXPO2013春)
AZAREA-Clusterセミナー(クラウドEXPO2013春)AZAREA-Clusterセミナー(クラウドEXPO2013春)
AZAREA-Clusterセミナー(クラウドEXPO2013春)AzareaCluster
 
話題のNode-REDでIoTアプリを作ってみよう
話題のNode-REDでIoTアプリを作ってみよう話題のNode-REDでIoTアプリを作ってみよう
話題のNode-REDでIoTアプリを作ってみようKimihiko Kitase
 
OSC 2020 Fukuoka IT運用自動化を支援する「運用レコメンドプラットフォーム」実現の舞台裏
OSC 2020 Fukuoka IT運用自動化を支援する「運用レコメンドプラットフォーム」実現の舞台裏OSC 2020 Fukuoka IT運用自動化を支援する「運用レコメンドプラットフォーム」実現の舞台裏
OSC 2020 Fukuoka IT運用自動化を支援する「運用レコメンドプラットフォーム」実現の舞台裏Daisuke Ikeda
 
物理サーバとクラウドの運用管理の違い 2010 03 24 馬場
物理サーバとクラウドの運用管理の違い 2010 03 24 馬場物理サーバとクラウドの運用管理の違い 2010 03 24 馬場
物理サーバとクラウドの運用管理の違い 2010 03 24 馬場Toshiaki Baba
 
GraalVMを3つの主機能から眺めてみよう(Oracle Groundbreakers APAC Virtual Tour 2020 講演資料)
GraalVMを3つの主機能から眺めてみよう(Oracle Groundbreakers APAC Virtual Tour 2020 講演資料)GraalVMを3つの主機能から眺めてみよう(Oracle Groundbreakers APAC Virtual Tour 2020 講演資料)
GraalVMを3つの主機能から眺めてみよう(Oracle Groundbreakers APAC Virtual Tour 2020 講演資料)NTT DATA Technology & Innovation
 
Developer summit continuous deliveryとjenkins
Developer summit   continuous deliveryとjenkinsDeveloper summit   continuous deliveryとjenkins
Developer summit continuous deliveryとjenkinsKohsuke Kawaguchi
 
[Cloud OnAir] Talks by DevRel Vol. 1 インフラストラクチャ 2020年7月30日 放送
[Cloud OnAir] Talks by DevRel Vol. 1 インフラストラクチャ 2020年7月30日 放送[Cloud OnAir] Talks by DevRel Vol. 1 インフラストラクチャ 2020年7月30日 放送
[Cloud OnAir] Talks by DevRel Vol. 1 インフラストラクチャ 2020年7月30日 放送Google Cloud Platform - Japan
 
RWC2012(ワコムアイティ&テクノプロジェクト)
RWC2012(ワコムアイティ&テクノプロジェクト)RWC2012(ワコムアイティ&テクノプロジェクト)
RWC2012(ワコムアイティ&テクノプロジェクト)Techno Project Co., Ltd.
 
Prometheus超基礎公開用.pdf
Prometheus超基礎公開用.pdfPrometheus超基礎公開用.pdf
Prometheus超基礎公開用.pdf勇 黒沢
 
災害対策セミナー 「検証プロジェクト報告と事例紹介」
災害対策セミナー 「検証プロジェクト報告と事例紹介」災害対策セミナー 「検証プロジェクト報告と事例紹介」
災害対策セミナー 「検証プロジェクト報告と事例紹介」Masaru Hiroki
 
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...NTT DATA Technology & Innovation
 

Similar a スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料) (20)

サーバを仮想化したのにネットワークはこれまで通りでいい?←いや、いや、そんなわけないでしょ
サーバを仮想化したのにネットワークはこれまで通りでいい?←いや、いや、そんなわけないでしょサーバを仮想化したのにネットワークはこれまで通りでいい?←いや、いや、そんなわけないでしょ
サーバを仮想化したのにネットワークはこれまで通りでいい?←いや、いや、そんなわけないでしょ
 
Ajn24
Ajn24Ajn24
Ajn24
 
AWS で Presto を徹底的に使いこなすワザ
AWS で Presto を徹底的に使いこなすワザAWS で Presto を徹底的に使いこなすワザ
AWS で Presto を徹底的に使いこなすワザ
 
XDev2010 WindowsAzure
XDev2010 WindowsAzureXDev2010 WindowsAzure
XDev2010 WindowsAzure
 
【HinemosWorld2014】A1-3_01_NTT Comのグローバルクラウド戦略とHinemosとの連携について
【HinemosWorld2014】A1-3_01_NTT Comのグローバルクラウド戦略とHinemosとの連携について【HinemosWorld2014】A1-3_01_NTT Comのグローバルクラウド戦略とHinemosとの連携について
【HinemosWorld2014】A1-3_01_NTT Comのグローバルクラウド戦略とHinemosとの連携について
 
NTT DATA と PostgreSQL が挑んだ総力戦
NTT DATA と PostgreSQL が挑んだ総力戦NTT DATA と PostgreSQL が挑んだ総力戦
NTT DATA と PostgreSQL が挑んだ総力戦
 
Airflowを広告データのワークフローエンジンとして運用してみた話
Airflowを広告データのワークフローエンジンとして運用してみた話Airflowを広告データのワークフローエンジンとして運用してみた話
Airflowを広告データのワークフローエンジンとして運用してみた話
 
【HinemosWorld2015】A1-3_コンテナ技術Dockerの導入事例と完全運用自動化
【HinemosWorld2015】A1-3_コンテナ技術Dockerの導入事例と完全運用自動化【HinemosWorld2015】A1-3_コンテナ技術Dockerの導入事例と完全運用自動化
【HinemosWorld2015】A1-3_コンテナ技術Dockerの導入事例と完全運用自動化
 
AZAREA-Clusterセミナー(クラウドEXPO2013春)
AZAREA-Clusterセミナー(クラウドEXPO2013春)AZAREA-Clusterセミナー(クラウドEXPO2013春)
AZAREA-Clusterセミナー(クラウドEXPO2013春)
 
話題のNode-REDでIoTアプリを作ってみよう
話題のNode-REDでIoTアプリを作ってみよう話題のNode-REDでIoTアプリを作ってみよう
話題のNode-REDでIoTアプリを作ってみよう
 
OSC 2020 Fukuoka IT運用自動化を支援する「運用レコメンドプラットフォーム」実現の舞台裏
OSC 2020 Fukuoka IT運用自動化を支援する「運用レコメンドプラットフォーム」実現の舞台裏OSC 2020 Fukuoka IT運用自動化を支援する「運用レコメンドプラットフォーム」実現の舞台裏
OSC 2020 Fukuoka IT運用自動化を支援する「運用レコメンドプラットフォーム」実現の舞台裏
 
Ajn24
Ajn24Ajn24
Ajn24
 
物理サーバとクラウドの運用管理の違い 2010 03 24 馬場
物理サーバとクラウドの運用管理の違い 2010 03 24 馬場物理サーバとクラウドの運用管理の違い 2010 03 24 馬場
物理サーバとクラウドの運用管理の違い 2010 03 24 馬場
 
GraalVMを3つの主機能から眺めてみよう(Oracle Groundbreakers APAC Virtual Tour 2020 講演資料)
GraalVMを3つの主機能から眺めてみよう(Oracle Groundbreakers APAC Virtual Tour 2020 講演資料)GraalVMを3つの主機能から眺めてみよう(Oracle Groundbreakers APAC Virtual Tour 2020 講演資料)
GraalVMを3つの主機能から眺めてみよう(Oracle Groundbreakers APAC Virtual Tour 2020 講演資料)
 
Developer summit continuous deliveryとjenkins
Developer summit   continuous deliveryとjenkinsDeveloper summit   continuous deliveryとjenkins
Developer summit continuous deliveryとjenkins
 
[Cloud OnAir] Talks by DevRel Vol. 1 インフラストラクチャ 2020年7月30日 放送
[Cloud OnAir] Talks by DevRel Vol. 1 インフラストラクチャ 2020年7月30日 放送[Cloud OnAir] Talks by DevRel Vol. 1 インフラストラクチャ 2020年7月30日 放送
[Cloud OnAir] Talks by DevRel Vol. 1 インフラストラクチャ 2020年7月30日 放送
 
RWC2012(ワコムアイティ&テクノプロジェクト)
RWC2012(ワコムアイティ&テクノプロジェクト)RWC2012(ワコムアイティ&テクノプロジェクト)
RWC2012(ワコムアイティ&テクノプロジェクト)
 
Prometheus超基礎公開用.pdf
Prometheus超基礎公開用.pdfPrometheus超基礎公開用.pdf
Prometheus超基礎公開用.pdf
 
災害対策セミナー 「検証プロジェクト報告と事例紹介」
災害対策セミナー 「検証プロジェクト報告と事例紹介」災害対策セミナー 「検証プロジェクト報告と事例紹介」
災害対策セミナー 「検証プロジェクト報告と事例紹介」
 
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
 

Más de NTT DATA Technology & Innovation

NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 
OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)
OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)
OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)NTT DATA Technology & Innovation
 
COPY FROMで異常データをスキップできるようになった話(第45回 PostgreSQLアンカンファレンス@オンライン 発表資料)
COPY FROMで異常データをスキップできるようになった話(第45回 PostgreSQLアンカンファレンス@オンライン 発表資料)COPY FROMで異常データをスキップできるようになった話(第45回 PostgreSQLアンカンファレンス@オンライン 発表資料)
COPY FROMで異常データをスキップできるようになった話(第45回 PostgreSQLアンカンファレンス@オンライン 発表資料)NTT DATA Technology & Innovation
 
Cloud Skills Challenge 2023 winter 〜Azureを頑張る理由と頑張り方
Cloud Skills Challenge 2023 winter 〜Azureを頑張る理由と頑張り方Cloud Skills Challenge 2023 winter 〜Azureを頑張る理由と頑張り方
Cloud Skills Challenge 2023 winter 〜Azureを頑張る理由と頑張り方NTT DATA Technology & Innovation
 
Unlocking Transformation: Implementing GitOps Practices in Conservative Organ...
Unlocking Transformation: Implementing GitOps Practices in Conservative Organ...Unlocking Transformation: Implementing GitOps Practices in Conservative Organ...
Unlocking Transformation: Implementing GitOps Practices in Conservative Organ...NTT DATA Technology & Innovation
 
Databricksチューニングあれこれ(JEDAI 2023 X‘mas/忘年会 Meetup! LT登壇資料)
Databricksチューニングあれこれ(JEDAI 2023 X‘mas/忘年会 Meetup! LT登壇資料)Databricksチューニングあれこれ(JEDAI 2023 X‘mas/忘年会 Meetup! LT登壇資料)
Databricksチューニングあれこれ(JEDAI 2023 X‘mas/忘年会 Meetup! LT登壇資料)NTT DATA Technology & Innovation
 
詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)
詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)
詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)NTT DATA Technology & Innovation
 
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)NTT DATA Technology & Innovation
 
pgvectorを使ってChatGPTとPostgreSQLを連携してみよう!(PostgreSQL Conference Japan 2023 発表資料)
pgvectorを使ってChatGPTとPostgreSQLを連携してみよう!(PostgreSQL Conference Japan 2023 発表資料)pgvectorを使ってChatGPTとPostgreSQLを連携してみよう!(PostgreSQL Conference Japan 2023 発表資料)
pgvectorを使ってChatGPTとPostgreSQLを連携してみよう!(PostgreSQL Conference Japan 2023 発表資料)NTT DATA Technology & Innovation
 
マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)
マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)
マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)NTT DATA Technology & Innovation
 
最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)
最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)
最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)NTT DATA Technology & Innovation
 
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...NTT DATA Technology & Innovation
 
骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)
骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)
骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)NTT DATA Technology & Innovation
 
機械学習モデルを REST API としてサービングするシステム開発における上流プロセスの絞り込みと効果検証(PM学会2023年度秋季研究発表大会 発表資料)
機械学習モデルを REST API としてサービングするシステム開発における上流プロセスの絞り込みと効果検証(PM学会2023年度秋季研究発表大会 発表資料)機械学習モデルを REST API としてサービングするシステム開発における上流プロセスの絞り込みと効果検証(PM学会2023年度秋季研究発表大会 発表資料)
機械学習モデルを REST API としてサービングするシステム開発における上流プロセスの絞り込みと効果検証(PM学会2023年度秋季研究発表大会 発表資料)NTT DATA Technology & Innovation
 
ChatGPTのデータソースにPostgreSQLを使う[詳細版](オープンデベロッパーズカンファレンス2023 発表資料)
ChatGPTのデータソースにPostgreSQLを使う[詳細版](オープンデベロッパーズカンファレンス2023 発表資料)ChatGPTのデータソースにPostgreSQLを使う[詳細版](オープンデベロッパーズカンファレンス2023 発表資料)
ChatGPTのデータソースにPostgreSQLを使う[詳細版](オープンデベロッパーズカンファレンス2023 発表資料)NTT DATA Technology & Innovation
 
PostgreSQL on Kubernetes: Realizing High Availability with PGO (Postgres Ibiz...
PostgreSQL on Kubernetes: Realizing High Availability with PGO (Postgres Ibiz...PostgreSQL on Kubernetes: Realizing High Availability with PGO (Postgres Ibiz...
PostgreSQL on Kubernetes: Realizing High Availability with PGO (Postgres Ibiz...NTT DATA Technology & Innovation
 
オンプレミス回帰の動きに備えよ ~クラウドの手法をオンプレミスでも実現するには~(CloudNative Days Fukuoka 2023 発表資料)
オンプレミス回帰の動きに備えよ ~クラウドの手法をオンプレミスでも実現するには~(CloudNative Days Fukuoka 2023 発表資料)オンプレミス回帰の動きに備えよ ~クラウドの手法をオンプレミスでも実現するには~(CloudNative Days Fukuoka 2023 発表資料)
オンプレミス回帰の動きに備えよ ~クラウドの手法をオンプレミスでも実現するには~(CloudNative Days Fukuoka 2023 発表資料)NTT DATA Technology & Innovation
 
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)NTT DATA Technology & Innovation
 
ChatGPTのデータソースにPostgreSQLを使う(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
ChatGPTのデータソースにPostgreSQLを使う(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)ChatGPTのデータソースにPostgreSQLを使う(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
ChatGPTのデータソースにPostgreSQLを使う(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)NTT DATA Technology & Innovation
 
PGCon 2023 参加報告(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
PGCon 2023 参加報告(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)PGCon 2023 参加報告(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
PGCon 2023 参加報告(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)NTT DATA Technology & Innovation
 

Más de NTT DATA Technology & Innovation (20)

NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)
OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)
OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)
 
COPY FROMで異常データをスキップできるようになった話(第45回 PostgreSQLアンカンファレンス@オンライン 発表資料)
COPY FROMで異常データをスキップできるようになった話(第45回 PostgreSQLアンカンファレンス@オンライン 発表資料)COPY FROMで異常データをスキップできるようになった話(第45回 PostgreSQLアンカンファレンス@オンライン 発表資料)
COPY FROMで異常データをスキップできるようになった話(第45回 PostgreSQLアンカンファレンス@オンライン 発表資料)
 
Cloud Skills Challenge 2023 winter 〜Azureを頑張る理由と頑張り方
Cloud Skills Challenge 2023 winter 〜Azureを頑張る理由と頑張り方Cloud Skills Challenge 2023 winter 〜Azureを頑張る理由と頑張り方
Cloud Skills Challenge 2023 winter 〜Azureを頑張る理由と頑張り方
 
Unlocking Transformation: Implementing GitOps Practices in Conservative Organ...
Unlocking Transformation: Implementing GitOps Practices in Conservative Organ...Unlocking Transformation: Implementing GitOps Practices in Conservative Organ...
Unlocking Transformation: Implementing GitOps Practices in Conservative Organ...
 
Databricksチューニングあれこれ(JEDAI 2023 X‘mas/忘年会 Meetup! LT登壇資料)
Databricksチューニングあれこれ(JEDAI 2023 X‘mas/忘年会 Meetup! LT登壇資料)Databricksチューニングあれこれ(JEDAI 2023 X‘mas/忘年会 Meetup! LT登壇資料)
Databricksチューニングあれこれ(JEDAI 2023 X‘mas/忘年会 Meetup! LT登壇資料)
 
詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)
詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)
詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)
 
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
 
pgvectorを使ってChatGPTとPostgreSQLを連携してみよう!(PostgreSQL Conference Japan 2023 発表資料)
pgvectorを使ってChatGPTとPostgreSQLを連携してみよう!(PostgreSQL Conference Japan 2023 発表資料)pgvectorを使ってChatGPTとPostgreSQLを連携してみよう!(PostgreSQL Conference Japan 2023 発表資料)
pgvectorを使ってChatGPTとPostgreSQLを連携してみよう!(PostgreSQL Conference Japan 2023 発表資料)
 
マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)
マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)
マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)
 
最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)
最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)
最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)
 
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...
 
骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)
骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)
骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)
 
機械学習モデルを REST API としてサービングするシステム開発における上流プロセスの絞り込みと効果検証(PM学会2023年度秋季研究発表大会 発表資料)
機械学習モデルを REST API としてサービングするシステム開発における上流プロセスの絞り込みと効果検証(PM学会2023年度秋季研究発表大会 発表資料)機械学習モデルを REST API としてサービングするシステム開発における上流プロセスの絞り込みと効果検証(PM学会2023年度秋季研究発表大会 発表資料)
機械学習モデルを REST API としてサービングするシステム開発における上流プロセスの絞り込みと効果検証(PM学会2023年度秋季研究発表大会 発表資料)
 
ChatGPTのデータソースにPostgreSQLを使う[詳細版](オープンデベロッパーズカンファレンス2023 発表資料)
ChatGPTのデータソースにPostgreSQLを使う[詳細版](オープンデベロッパーズカンファレンス2023 発表資料)ChatGPTのデータソースにPostgreSQLを使う[詳細版](オープンデベロッパーズカンファレンス2023 発表資料)
ChatGPTのデータソースにPostgreSQLを使う[詳細版](オープンデベロッパーズカンファレンス2023 発表資料)
 
PostgreSQL on Kubernetes: Realizing High Availability with PGO (Postgres Ibiz...
PostgreSQL on Kubernetes: Realizing High Availability with PGO (Postgres Ibiz...PostgreSQL on Kubernetes: Realizing High Availability with PGO (Postgres Ibiz...
PostgreSQL on Kubernetes: Realizing High Availability with PGO (Postgres Ibiz...
 
オンプレミス回帰の動きに備えよ ~クラウドの手法をオンプレミスでも実現するには~(CloudNative Days Fukuoka 2023 発表資料)
オンプレミス回帰の動きに備えよ ~クラウドの手法をオンプレミスでも実現するには~(CloudNative Days Fukuoka 2023 発表資料)オンプレミス回帰の動きに備えよ ~クラウドの手法をオンプレミスでも実現するには~(CloudNative Days Fukuoka 2023 発表資料)
オンプレミス回帰の動きに備えよ ~クラウドの手法をオンプレミスでも実現するには~(CloudNative Days Fukuoka 2023 発表資料)
 
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)
 
ChatGPTのデータソースにPostgreSQLを使う(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
ChatGPTのデータソースにPostgreSQLを使う(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)ChatGPTのデータソースにPostgreSQLを使う(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
ChatGPTのデータソースにPostgreSQLを使う(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
 
PGCon 2023 参加報告(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
PGCon 2023 参加報告(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)PGCon 2023 参加報告(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
PGCon 2023 参加報告(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
 

スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)

  • 1. NTTデータ テクノロジーカンファレンス 2020 © 2020 NTT DATA Corporation スケールアウトするPostgreSQLを目指して!その第一歩! 2020年10月16日 株式会社NTTデータ 藤井 雅雄
  • 2. 2 © 2020 NTT DATA Corporation 自己紹介 藤井 雅雄 Database Technical Lead データベース研究開発 PostgreSQL 技術支援 PostgreSQLコミッタ レプリケーション WAL圧縮、バックアップ進捗 @fujii_masao
  • 3. 3 © 2020 NTT DATA Corporation アジェンダ  スケールアウトとは?  PostgreSQLで利用できるスケールアウト機能とその課題について  よりよいスケールアウト機能を目指して、 その第一歩としてのグローバルトランザクションの実現について
  • 4. 4 © 2020 NTT DATA Corporation スケールアウトとは? スケールアップ サーバのスペックを増強して、システム全体の性能を向上させること スケールアウト サーバの台数を増やして、システム全体の性能を向上させること スペック増強 (CPU/メモリ等) サーバ追加
  • 5. 5 © 2020 NTT DATA Corporation PostgreSQLで利用できるスケールアウト機能と課題 レプリケーション FDW (Foreign Data Wrapper) 1 2
  • 6. 6 © 2020 NTT DATA Corporation PostgreSQLで利用できるスケールアウト機能と課題 レプリケーション  プライマリ1台からレプリカ複数台にDBを複製  参照SQLを実行可能なレプリカの台数を増やすことで、参照処理をスケールアウトできる  更新SQLを実行可能なプライマリは1台のみのため、更新処理はスケールアウトできない 1 複製 参照と更新 プライマリ レプリカ1 レプリカ2 レプリカ3 複製 複製 参照のみ 参照のみ 参照のみ
  • 7. 7 © 2020 NTT DATA Corporation PostgreSQLで利用できるスケールアウト機能と課題 FDW (Foreign Data Wrapper)  外部のデータをPostgreSQLのテーブル(外部テーブル)として扱う機能  FDWを介してサーバ間でデータを参照・更新できる 2 ID 場所 1 千葉 2 埼玉 … 外部 テーブル サーバ1 1,千葉 2,埼玉 … CSV ファイル ID 部署 a1 総務 a2 営業 … 実 テーブル 外部 テーブル サーバ2 ID 部署 a1 総務 a2 営業 … FDW FDW SELECT read()
  • 8. 8 © 2020 NTT DATA Corporation PostgreSQLで利用できるスケールアウト機能と課題 FDW (Foreign Data Wrapper)  外部のデータをPostgreSQLのテーブル(外部テーブル)として扱う機能  FDWを介してサーバ間でデータを参照・更新できる 2 ID 場所 1 千葉 2 埼玉 … 外部 テーブル サーバ1 1,千葉 2,埼玉 … CSV ファイル ID 部署 a1 総務 a2 営業 … 実 テーブル 外部 テーブル サーバ2 ID 部署 a1 総務 a2 営業 … FDW FDW UPDATE UPDATE
  • 9. 9 © 2020 NTT DATA Corporation PostgreSQLで利用できるスケールアウト機能と課題 FDW (Foreign Data Wrapper)  データベースを複数台のPostgreSQLに分割配置して、 FDWを介して処理を分散することで、参照と更新ともにスケールアウトできる  複数台のサーバをまたがったトランザクションであるグローバルトランザクションをサポートしていない A B C B C 2 サーバ1 サーバ2 サーバ3 参照と更新 参照と更新 参照と更新 FDW FDW
  • 10. 10 © 2020 NTT DATA Corporation よりよいスケールアウト機能を目指して 参照と更新ともにスケールアウトさせる グローバルトランザクションをサポートする 目指す方向性 PostgreSQLコミュニティで、 スケールアウト機能の開発・改善が始まっている レプリケーション 更新をスケールアウトできない FDW グローバルトランザクションを未サポート 既存機能の課題 2 1
  • 11. 11 © 2020 NTT DATA Corporation よりよいスケールアウト機能を目指して 参照と更新ともにスケールアウトさせる レプリケーション 更新をスケールアウトできない グローバルトランザクションをサポートする FDW グローバルトランザクションを未サポート 目指す方向性 既存機能の課題 PostgreSQLコミュニティで、 スケールアウト機能の開発・改善が始まっている PostgreSQL本体に機能を組み込む!! 2 1
  • 12. © 2020 NTT DATA Corporation 12 【アンケート】 実際、PostgreSQLのスケールアウトは必要でしょうか? A. トランザクションを保証した上で、参照も更新もスケールアウトしたい! B. 課題はあるが、既存機能のスケールアウトで十分! C. スケールアップで十分で、スケールアウトまでは不要! D. スケールアップとスケールアウトのどちらも不要!
  • 13. 13 © 2020 NTT DATA Corporation よりよいスケールアウト機能を目指して、その第一歩 FDWベースのスケールアウト構成に、 グローバルトランザクションのサポートを追加する方向性 1 2 Atomic Commit Atomic Visibility グローバル トランザクション A B C B C サーバ1 サーバ2 サーバ3 参照と更新 参照と更新 参照と更新 FDW FDW
  • 14. 14 © 2020 NTT DATA Corporation Atomic Commit サーバ間でトランザクションの実行結果に整合性があること 複数のサーバ上で行われる複数の操作について、 すべての操作が成功(COMMIT)するか、 すべての操作が失敗(ROLLBACK)すること A B C FDW FDW B C サーバ1 サーバ2 サーバ3 トランザクション COMMIT 成功 Atomic Commitで解消したいトランザクションの不整合
  • 15. 15 © 2020 NTT DATA Corporation Atomic Commit サーバ間でトランザクションの実行結果に整合性があること 複数のサーバ上で行われる複数の操作について、 すべての操作が成功(COMMIT)するか、 すべての操作が失敗(ROLLBACK)すること A B C FDW FDW B C サーバ1 サーバ2 サーバ3 トランザクション COMMIT 成功 COMMIT 成功 Atomic Commitで解消したいトランザクションの不整合
  • 16. 16 © 2020 NTT DATA Corporation Atomic Commit サーバ間でトランザクションの実行結果に整合性があること 複数のサーバ上で行われる複数の操作について、 すべての操作が成功(COMMIT)するか、 すべての操作が失敗(ROLLBACK)すること A B C FDW FDW B C サーバ1 サーバ2 サーバ3 トランザクション COMMIT 失敗 COMMIT 成功 COMMIT 成功 Atomic Commitで解消したいトランザクションの不整合 トランザクションがサーバ3のみ COMMITに失敗すると、 サーバ間のトランザクションの 整合性が失われる!!
  • 17. 17 © 2020 NTT DATA Corporation 二相コミットによるAtomic Commitの実現 複数台のサーバをまたがったトランザクションをCOMMITする際に、 二相コミットを使って、Atomic Commitを実現する方向性 COMMIT要求 COMMIT準備 トランザクション COMMIT準備 A サーバ1 サーバ2 サーバ3 B C FDW FDW まずはFDWを介して COMMIT準備を行い、 すべてのCOMMIT準備が 成功したらCOMMITを行う
  • 18. 18 © 2020 NTT DATA Corporation 二相コミットによるAtomic Commitの実現 複数台のサーバをまたがったトランザクションをCOMMITする際に、 二相コミットを使って、Atomic Commitを実現する方向性 COMMIT要求 COMMIT準備 トランザクション COMMIT COMMIT準備 COMMIT A サーバ1 サーバ2 サーバ3 B C COMMIT成功 COMMIT まずはFDWを介して COMMIT準備を行い、 すべてのCOMMIT準備が 成功したらCOMMITを行う FDW FDW FDW FDW
  • 19. 19 © 2020 NTT DATA Corporation 二相コミットによるAtomic Commitの実現 複数台のサーバをまたがったトランザクションをCOMMITする際に、 二相コミットを使って、Atomic Commitを実現する方向性 COMMIT要求 COMMIT準備 トランザクション COMMIT準備 A サーバ1 サーバ2 サーバ3 B C FDW FDW まずはFDWを介して COMMIT準備を行い、 COMMIT準備が 失敗したサーバがあれば、 ROLLBACKを行う
  • 20. 20 © 2020 NTT DATA Corporation 二相コミットによるAtomic Commitの実現 複数台のサーバをまたがったトランザクションをCOMMITする際に、 二相コミットを使って、Atomic Commitを実現する方向性 COMMIT要求 COMMIT準備 トランザクション COMMIT準備失敗 A サーバ1 サーバ2 サーバ3 B C FDW FDW まずはFDWを介して COMMIT準備を行い、 COMMIT準備が 失敗したサーバがあれば、 ROLLBACKを行う ROLLBACK COMMIT失敗 ROLLBACK FDW
  • 21. © 2020 NTT DATA Corporation 21 【アンケート結果】 実際、PostgreSQLのスケールアウトは必要でしょうか? A. トランザクションを保証した上で、参照も更新もスケールアウトしたい! B. 課題はあるが、既存機能のスケールアウトで十分! C. スケールアップで十分で、スケールアウトまでは不要! D. スケールアップとスケールアウトのどちらも不要!
  • 22. 22 © 2020 NTT DATA Corporation Atomic Visibility A B C FDW FDW B C サーバ1 サーバ2 サーバ3 トランザクション① COMMIT 途中 COMMIT 成功 COMMIT 成功 サーバ間でトランザクション実行の観測結果に整合性があること 複数のサーバ上で行われる複数の操作について すべての操作が成功(COMMIT)、すべての操作が失敗(ROLLBACK)、 すべての操作が実行中のいずれかだと、他のトランザクションから観測できること Atomic Visibilityで解消したいトランザクションの不整合 トランザクション①がCOMMITしたとき、 実行タイミングのずれにより、 サーバ3のみCOMMIT実行途中の状態
  • 23. 23 © 2020 NTT DATA Corporation Atomic Visibility A B C FDW FDW B C サーバ1 サーバ2 サーバ3 トランザクション① COMMIT 途中 COMMIT 成功 COMMIT 成功 トランザクション② サーバ間でトランザクション実行の観測結果に整合性があること 複数のサーバ上で行われる複数の操作について すべての操作が成功(COMMIT)、すべての操作が失敗(ROLLBACK)、 すべての操作が実行中のいずれかだと、他のトランザクションから観測できること Atomic Visibilityで解消したいトランザクションの不整合 トランザクション②が全サーバを参照すると、 サーバ3だけトランザクション①は 未COMMITに見えて不整合が発生!! 参照 参照 参照
  • 24. 24 © 2020 NTT DATA Corporation 集中管理によるAtomic Visibilityの実現 A B C FDW FDW B C サーバ1 サーバ2 サーバ3 グローバルトランザクションマネージャでサーバ間のトランザクションを集中管理  トランザクションの開始・終了を管理  トランザクションの開始・終了を通知 → 通知結果をベースに参照 グローバル トランザクション マネージャ
  • 25. 25 © 2020 NTT DATA Corporation 集中管理によるAtomic Visibilityの実現 A B C FDW FDW B C サーバ1 サーバ2 サーバ3 トランザクション① グローバルトランザクションマネージャでサーバ間のトランザクションを集中管理  トランザクションの開始・終了を管理  トランザクションの開始・終了を通知 → 通知結果をベースに参照 COMMIT 途中 COMMIT 成功 COMMIT 成功 グローバル トランザクション マネージャ 「トランザクション①のCOMMITは まだ完了していない」と管理
  • 26. 26 © 2020 NTT DATA Corporation 集中管理によるAtomic Visibilityの実現 A B C FDW FDW B C サーバ1 サーバ2 サーバ3 トランザクション① グローバルトランザクションマネージャでサーバ間のトランザクションを集中管理  トランザクションの開始・終了を管理  トランザクションの開始・終了を通知 → 通知結果をベースに参照 COMMIT 途中 COMMIT 成功 COMMIT 成功 グローバル トランザクション マネージャ トランザクション② 「トランザクション①のCOMMITは まだ完了していない」と通知
  • 27. 27 © 2020 NTT DATA Corporation 集中管理によるAtomic Visibilityの実現 A B C FDW FDW B C サーバ1 サーバ2 サーバ3 トランザクション① グローバルトランザクションマネージャでサーバ間のトランザクションを集中管理  トランザクションの開始・終了を管理  トランザクションの開始・終了を通知 → 通知結果をベースに参照 COMMIT 途中 COMMIT 成功 COMMIT 成功 グローバル トランザクション マネージャ トランザクション② 参照 参照 参照 通知結果から、トランザクション①の処理結果 はすべてのサーバで参照しないと判断
  • 28. 28 © 2020 NTT DATA Corporation 集中管理しないAtomic Visibilityの実現 A B C FDW FDW B C サーバ1 サーバ2 サーバ3 トランザクション① 集中管理しない Clock-SI などの方式も検討されている  集中管理の方式では、グローバルトランザクションマネージャが 性能ボトルネックやSPoFになるリスクがある COMMIT 途中 COMMIT 成功 COMMIT 成功 トランザクション② 参照 参照 参照 • どのトランザクションの処理結果を参照してよいか、 サーバの時刻情報から判断 • 参照先がCOMMIT途中の場合は、 COMMIT/ROLLBACKが確定するまで待つ
  • 29. 29 © 2020 NTT DATA Corporation おわりに よりよいスケールアウト機能を目指して開発が始まっています。 その第一弾として、複数台のPostgreSQLをまたがる グローバルトランザクションをサポートするために の実現に取り組んでいます! PostgreSQLのスケールアウト機能に、 ぜひご期待ください! 1 2 Atomic Commit Atomic Visibility
  • 30. © 2020 NTT DATA Corporation