SlideShare a Scribd company logo
© 2023 NTT DATA Group Corporation
今、改めて考える
PostgreSQLプラットフォーム
- マルチクラウドとポータビリティ –
(PostgreSQL Conference Japan 2023)
2023/11/24
株式会社NTTデータグループ
小林 隆浩
© 2023 NTT DATA Group Corporation 3
アジェンダ
01. あなたの はどこに?2023年バージョン
02. クラウドベンダーが提供するPostgreSQL as a Service
03. その他DBベンダーが提供するPostgreSQL as a Service
04. マルチクラウドとポータビリティ
05. まとめ
© 2023 NTT DATA Group Corporation 4
01.
あなたの はどこに?
(2023年バージョン)
4
© 2023 NTT DATA Group Corporation 5
2020年にこんな話をしました
https://speakerdeck.com/tzkoba/postgresqlpuratutohuomufalseche-di-bi-jiao-kontenakarakuraudomade
© 2023 NTT DATA Group Corporation 6
3年の変化 - クラウドの更なる隆盛 -
⚫ 体感的にもオンプレミスは減少、クラウド
への移行ケースを多々見る状況。
⚫ DBaaS側の制約(バージョンやメンテナ
ンス時間など)が緩和されてきた。
⚫ この流れは今後も続いていくと思われる。
© 2023 NTT DATA Group Corporation 8
PostgreSQLのプラットフォームを整理してみると
オンプレミス クラウド
IaaS
KaaS
(EKS/GKE/AKS..)
DBaaS
(PostgreSQL as a Service)
Kubernetes
ベアメタル/VM
DBMS
オーケストレータ
VM
RDS Cloud SQL
PostgreSQL
Operator
⚫ 現在、PostgreSQLを使う際に様々なプラットフォームが選択可能
© 2023 NTT DATA Group Corporation 9
(本日のゴール)データベース・プラットフォームの変化を理解しよう
⚫ クラウドベンダーのDBaaSを選択するのは、現状は最優先。
⚫ その他DBaaSも百花繚乱、新しく登場したものはKubernetes Inside
⚫ マルチクラウドなサービス展開を考えると、DBaaSにもDevOps両面の
ポータビリティが求められる時代に。
© 2023 NTT DATA Group Corporation 10
02.
クラウドベンダーが提供する
PostgreSQL as a Service
© 2023 NTT DATA Group Corporation 11
PostgreSQL as as Serviceがもたらす効果
⚫ データベースの運用を省力化し、アプリケーションに集中できる
ラック/電源
ハードウェア
OS
バックアップ/HA/スケール
DBMS
アプリケーション
【オンプレミス】 【DBaaS】
ユーザによる
管理
サービスベンダーの
管理
ユーザによる
管理
Kubernetes (オーケストレータ)
VM/コンテナ
ラック/電源
ハードウェア
OS
バックアップ/HA/スケール
DBMS
アプリケーション
Kubernetes (オーケストレータ)
VM/コンテナ
© 2023 NTT DATA Group Corporation 12
クラウドベンダーのDBaaSへの投資とサービス拡充
⚫ 2023/11時点の各社サービスとPostgreSQLバージョン対応は以下の通り
クラウド サービス名 PostgreSQL Ver. 備考
AWS
RDS for PostgreSQL 11 - 16
Aurora PostgreSQL 11 - 15 16はプレビュー
Azure
Database for PostgreSQL 11 – 16 フレキシブルサーバ
Cosmos DB for PostgreSQL 11 - 16
Google
Cloud
Cloud SQL for PostgreSQL 9.6 - 15 Enterprise Plusは14,15
Alloy DB for PostgreSQL 14互換
PostgreSQL interface for Spanner - 完全な互換性はない
OCI OCI Database with PostgreSQL 14.9 11月中旬にコンソールに登場
© 2023 NTT DATA Group Corporation 13
クラウドベンダーのDBaaSへの投資、サービス拡充 – AWS編 -
⚫ RDS for PostgreSQL
⚫ マネージドなPostgreSQLの基本形(容易なデプロイ、自動バックアップ等々)
⚫ DBサイズは最大で64TB
⚫ Optimized ReadsやDedicated Log Volumesなどの最適化
⚫ Aurora (PostgreSQL Compatible)
⚫ Compute/Storage分離の先駆け、サーバレスもあり
⚫ DBサイズは最大で128TB、現状ではこれを超えるケースも良く聞く
⚫ Writeスケールに対する決定打は未だ出ていない ※2023/10時点
© 2023 NTT DATA Group Corporation 14
(参考)DBaaSの2大分類、RDSタイプとAuroraタイプ
プライマリ
Storage
スタンバイ
• Compute/Storageは一体型
• データ同期はストレージレベル、またはStreaming
Replication
• 同期レプリケーションでRPO=0
レプリケーション
プライマリ リードレプリカ リードレプリカ
• Compute/Storageを分離、StorageにWALを送信
• ストレージでは3冗長以上のコピーを保持
• リードレプリカが利用可能だが、レプリカラグあり
• Compute間もキャッシュ同期等を行う
【RDSタイプ】 【Auroraタイプ】
© 2023 NTT DATA Group Corporation 15
(参考)Optimized ReadsとDedicated Log Volumes
⚫ IaaSレベルからPostgreSQL用の最適化を施している。
⚫ どちらもチューニングでは一般的な「IOの分離」
NVMe SSD
(ローカルディスク)
RDSインスタンス EBSボリューム
通常テーブルを配置
(機能非利用時は一時領域もWALもここ)
WALを出力
ソートなどの
一時領域
Optimized Reads Dedicated Log Volumes
© 2023 NTT DATA Group Corporation 16
クラウドベンダーのDBaaSへの投資、サービス拡充 - Google Cloud -
⚫ Cloud SQL Enterprise / Enterprise Plus
⚫ マネージドなPostgreSQL、サービスレベルが異なる2つのエディション
⚫ Enterprise Plusでは性能向上を実現、Data Cacheなども利用可能
⚫ DBサイズは最大で64TB
⚫ AlloyDB
⚫ クラウドネイティブな構成でPostgreSQLを再実装。高い性能と可用性を実現。
⚫ DBサイズは最大で32TB ※64TBはプレビュー中
⚫ Cloud Spanner PostgreSQL Interface
© 2023 NTT DATA Group Corporation 17
(参考)Cloud SQL Enterprise と Enterprise Plus
⚫ 価格やSLA、対応機能などが異なる。
Cloud SQL Enterprise Cloud SQL Enterprise Plus
価格(例)
$0.0537 per vCPU
$0.0091 per GB(memory)
$0.0698 per vCPU
$0.0118 per GB(memory)
PGバージョン 9.6 - 15 14 - 15
最大スペック
96 vCPU / 624 GB(memory)
64 TB(storage)
128 vCPU / 864 GB(memory)
64 TB(storage)
SLA 99.95% 99.99%
ダウンタイム(メンテナンス時) 60秒以下 10秒以下
データキャッシュ No Yes
© 2023 NTT DATA Group Corporation 18
(参考)AlloyDBのアーキテクチャ
⚫ Auroraに近い構成で、更にカラムナエンジンや高速キャッシュを搭載。
⚫ ローカル環境で実行可能なAlloyDB Omniも存在。
Intelligent Database Storage Engine
プライマリ F/Oレプリカ リードプール
分散ファイルシステム(Colossus)
書込時は
WALのみを送信
ストレージ側で
WALを処理して、
耐久性の高い
ストレージへ書込み
© 2023 NTT DATA Group Corporation 19
クラウドベンダーのDBaaSへの投資、サービス拡充 - Azure -
⚫ Azure Database for PostgreSQL
⚫ 単一サーバ/フレキシブルサーバがあるが、今後はフレキシブルサーバが主軸
⚫ DBサイズは最大で32TB
⚫ Premium SSD v2がプレビューに。性能向上かつ、DBサイズが64TBまで拡張可。
⚫ Azure Cosmos DB for PostgreSQL (旧Hyperscale(Citus))
⚫ Citusを利用した、Sharding型の分散PostgreSQL
⚫ Coordinator+複数Workerの構成
⚫ Worker毎に最大16TB(32TBはプレビュー)のストレージを持ち、スケールアウトが可能
© 2023 NTT DATA Group Corporation 20
(参考)PostgreSQL拡張「Citus」のアーキテクチャ
⚫ データをWorkerに分散して持つことでスケールアウトを実現
⚫ カラムナ形式でデータを保持可能で、分析系SQLにも強みを持つ
Coordinator (メタデー管理、分散や集計を担当)
Worker1 Worker2 Worker3
アプリから見ると
1つのテーブル
© 2023 NTT DATA Group Corporation 21
クラウドベンダーのDBaaSへの投資、サービス拡充 - OCI -
⚫ 2023/11、OCI Database with PostgreSQLが利用可能に。
⚫ PostgreSQL is major version = 14 and minor version = 9.
プライマリ リードレプリカ リードレプリカ
可用性/障害
ドメイン1
可用性/障害
ドメイン2
可用性/障害
ドメイン3
Database Optimized Storage (DbOS)
© 2023 NTT DATA Group Corporation 22
03.
その他DBベンダーが提供する
PostgreSQL as a Service
2
© 2023 NTT DATA Group Corporation 23
(話変わって)PostgreSQL on Kubernetesの状況
⚫ PostgreSQL Operatorは数年前と比較して増加。
⚫ PostgreSQLの開発/サポートをしている企業を中心に広がっている。
Operator 開発元 github★ 備考
PGO Crunchy Data 3,798
postgres-operator Zalando 3,645
CloudNativePG EDB 2,448
EDB Postgres for Kubernetes EDB - CloudNativePGのEPAS対応
percona-postgres-operator Percona 198 PGOがベース
StackGres OnGres 714
CYBERTEC-pg-operator CYBERTEC 0 Zalandoがベース
….
© 2023 NTT DATA Group Corporation 24
(参考)KubernetesにおけるPostgreSQL Operetorとは
⚫ CloudNativePGの例を以下に示す。
⚫ Streaming Replicationの構成、障害時の切り替えなどが簡単に設定できる。
⚫ バックアップ運用も設定可能で、DB管理者の負荷を大きく軽減。
CloudNativePG
プライマリ スタンバイ スタンバイ
プライマリ向けService
© 2023 NTT DATA Group Corporation 25
(参考)他のDBもKubernetes Operator対応に
⚫ Oracle社も各データベースのOperatorを開発。
https://dev.mysql.com/doc/mysql-operator/en/mysql-operator-introduction.html
【MySQL】 【Oracle Database】
• DockerやPodmanなどのコンテナ環境には、19c
から対応
• Oracle Database Operator on Kubernetes
• 23cからOracle RAC on Kubernetesも可能に
• バージョンを上げる毎にフットプリントを削減し
(=イメージの縮小)、コンテナ化やKubernetes
での実行を可能にしている
© 2023 NTT DATA Group Corporation 26
なぜ、Database on Kubernetesが重要か?
⚫ DBベンダーが近年提供するDBaaSは ”on Kubernetes” が増加
DBaaS 提供 DBMS K8s
対応クラウド
AWS Google Azure
Crunchy Bridge Crunchy Data PG - 〇 〇 〇
BigAnimal EDB PG 利用 〇 〇 〇
Tembo Cloud Tembo PG (利用) 〇 - -
Neon Neon PG互換 (利用) - - -
YugabyteDB Managed Yugabyte PG互換 利用 〇 〇 〇
TiDB Cloud PingCAP MySQL互換 利用 〇 - 〇
….
© 2023 NTT DATA Group Corporation 27
EDB Big Animal
⚫ EDBが提供するPostgreSQL as a Service
⚫ PostgreSQLとEDB Postgres Advanced Server(EPAS)を選択可能
⚫ EPASではEDB Postgres Distributedを利用し、高い可用性/メンテナンス性を実現
https://www.enterprisedb.com/blog/what-database-service-dbaas-tutorial-how-use-managed-database-service-postgresql
Kubernetes、そして
PostgreSQL Operatorを
利用して、各クラウドに
サービスを展開
© 2023 NTT DATA Group Corporation 28
YugabyteDB Managed
⚫ PostgreSQL v11互換(v15互換も対応予定)の分散SQLデータベース
⚫ Kubernetes上のYugabyte Platformでコンポーネントを構成・管理する
yb-tserver yb-master
Yugabyte
Platform
AWS/Google Cloud/Azure
yb-tserver yb-master
yb-tserver yb-master
yb-tserver yb-master
yb-tserver yb-master
yb-tserver yb-master
ユーザX
ユーザY
© 2023 NTT DATA Group Corporation 29
Tembo
⚫ AWSで利用可能なPostgreSQL as a Service。
⚫ Tembo OperatorをKubernetesにインストールすることでも利用可
⚫ 特徴としてStackという考え方を持ち、用途別に組み合わせたExtensionと、
推奨の設定入りPostgreSQLが簡単に構築が可能。
⚫ OLAP [hydra_columnar/pg_partman/clerk_fdw/redis_fdw]
⚫ Vector DB [pgvector/pg_vectorize/pgmq]
⚫ Redis Stackに考え方が近い。
© 2023 NTT DATA Group Corporation 31
04.
マルチクラウドとポータビリティ
3
© 2023 NTT DATA Group Corporation 32
ここで3年ぶりにマルチクラウドの話
⚫ 3年前はこんな感じ。
⚫ ↑は可用性の視点だが、昨今は別視点からもマルチクラウドが注目される
⚫ 開発したサービスはどのクラウドにリリースする?
⚫ AWSだけ?Google Cloudも?Azureは?
⚫ 収益に関わる大きな選択になる。
© 2023 NTT DATA Group Corporation 33
⚫ 今回、便宜的に4タイプに分類。
マルチクラウドとは
自社DC
①シングルクラウド ②ハイブリッドクラウド
サービス
③(狭義の)マルチクラウド ④クロスクラウド
本日、主にお話しする部分
© 2023 NTT DATA Group Corporation 34
(参考)自社DCとクラウドを接続するパターン
② ハイブリッドクラウド
⚫ 自社DCとクラウドを接続
⚫ 高速(つまり高額)な回線が必要で、ある程度の規模は前提。
⚫ 自社DCと複数クラウドを接続して、DC経由で高速なクラウド間接続を行うことも可能。
⚫ セキュリティの観点で必須となることがある
⚫ クラウドにデータを置くことが許されないケースなど
⚫ DCとクラウド、どちらに何を置くかで様々なパターンがある
⚫ 自社DC:DB ←→ クラウド:アプリ
⚫ 自社DC:アプリ、DB(プライマリ) ←→ クラウド:DB(スタンバイ)
© 2023 NTT DATA Group Corporation 35
マルチクラウド、そしてクロスクラウド
③ (狭義の)マルチクラウド
⚫ 自社サービスを複数クラウド(AWS/Azure/Googleなど)に展開
⚫ 社内システムでは不要な観点だが、ビジネス上の要件となりつつある
⚫ DBベンダーもこの形態でDBaaSを展開している
⚫ 課題となるのは、クラウド間の機能や運用の差異をどう吸収するか
④ クロスクラウド
⚫ クラウド間でデータを同期、障害時にフェイルオーバー
⚫ クラウド障害を耐える可用性を実現
⚫ マルチクラウドの課題に加えて、障害検知・切替やクラウド間レイテンシが大きな壁
© 2023 NTT DATA Group Corporation 36
マルチクラウドとDBaaSの関連性
⚫ DBaaSの省力化が、マルチクラウドで台無しになる可能性も。
【DBaaS】
ラック/電源
ハードウェア
OS
バックアップ/HA/スケール
DBMS
アプリケーション
Kubernetes (オーケストレータ)
VM/コンテナ
3. DBaaSベンダーの視点
• 全クラウドに自社DBaaSを
ローンチしたい
• クラウド毎に異なる実装は
なるべく避けたい
• 自社DBaaSのポータルで
運用をナビゲートしたい
1. Devの視点
• PostgreSQLまたはMySQLで
開発したい
• 既存コードをそのまま動かしたい
2. Opsの視点
• IaCを全クラウドで使いまわしたい
• モニタリングもクラウド毎に違う
方法でやりたくない
• チューニングもクラウド毎に手法を
調べるのは大変
© 2023 NTT DATA Group Corporation 37
クラウドベンダーによるDBaaSの問題点
⚫ PostgreSQLベースでも、最適化の結果、サービス間の差異は大きくなる。
【A社のDBaaS】
ラック/電源
ハードウェア
OS
バックアップ/HA/スケール
DBMS
アプリケーション
Kubernetes (オーケストレータ)
VM/コンテナ
• クラウドベンダー毎に運用や監視
面の使い勝手は異なる。
• そして低いレイヤでも最適化を
行い、差別化する。
• 結果として、クラウド間の
ポータビリティが一部失われる。
【G社のDBaaS】
ラック/電源
ハードウェア
OS
バックアップ/HA/スケール
DBMS
アプリケーション
Kubernetes (オーケストレータ)
VM/コンテナ
© 2023 NTT DATA Group Corporation 38
(参考)Optimized ReadsとDedicated Log Volumes
⚫ IaaSレベルからPostgreSQL用の最適化を施している。
⚫ どちらもチューニングでは一般的な「IOの分離」
NVMe SSD
(ローカルディスク)
RDSインスタンス EBSボリューム
通常テーブルを配置
(機能非利用時は一時領域もWALもここ)
WALを出力
ソートなどの
一時領域
Optimized Reads Dedicated Log Volumes
再掲
© 2023 NTT DATA Group Corporation 39
【X社のDBaaS @AWS】
その他DBベンダーのDBaaSでは
⚫ クラウド間の差異を吸収して、ポータビリティを高める工夫がされている。
ラック/電源
ハードウェア
OS
アプリケーション
Kubernetes (オーケストレータ)
VM/コンテナ
ラック/電源
ハードウェア
OS
アプリケーション • その他ベンダーは物理レイヤに
手が届きづらい。
• on Kubernetesで開発された
DBaaSでは、クラウド間の
ポータビリティが確保される。
• これはベンダーのサービス開発
効率だけでなく、 Opsの効率も
向上させる。
【X社のDBaaS @GoogleCloud】
ラック/電源
ハードウェア
アプリケーション
Kubernetes (オーケストレータ)
VM/コンテナ
OS
OS
バックアップ/HA/スケール
DBMS
バックアップ/HA/スケール
DBMS
© 2023 NTT DATA Group Corporation 40
カギとなるのは、ポータビリティの高いプラットフォーム=Kubernetes
⚫ 一例として、プライベートDBaaSを標榜するPercona Everest
⚫ Kubernetesを前提に、マルチクラウドなDBaaSの構築と運用を支援するツール群となっている。
Percona Everest
AWS Google Cloud オンプレミス
KubernetesにOperatorを
インストール。
構成管理・監視等の
ツールを提供する。
© 2023 NTT DATA Group Corporation 42
(参考)クラウドベンダーによるマルチクラウドDBaaS
⚫ 特定クラウドでしか使えないDBaaSだけ、ではない。
⚫ OCIとAzureが連携し、IaaS部分の最適化まで含めてマルチクラウドでDBaaSが利用可能。
アプリケーション Oracle
Database
Azure OCI
Oracle
Database
OCI
アプリケーション
Azure
Oracle Database Service for Azure(ODSA) Oracle Database@Azure
© 2023 NTT DATA Group Corporation 44
高速インターコネクトがあれば、マルチクラウドDBaaSは可能?
⚫ Google Cloudでもパーツは揃いつつある。
⚫ どのクラウドでも稼働するAlloyDB Omniと、高速接続のCross-Cloud InterConnect
AlloyDB
Google Cloud
AlloyDB Omni
AWS
Cross-Cloud InterConnect
現状でAlloyDB Omniの
Kubernetes Operatorは
存在しないが、登場すれば
こうした構成も実現の可能
性がある。
© 2023 NTT DATA Group Corporation 45
05.
まとめ
4
© 2023 NTT DATA Group Corporation 46
(本日のゴール)データベース・プラットフォームの変化を理解しよう
⚫ クラウドベンダーのDBaaSを選択するのは、現状は最優先。
⚫ その他DBaaSも百花繚乱、新しく登場したものはKubernetes Inside
⚫ マルチクラウドなサービス展開を考えると、DBaaSにもDevOps両面の
ポータビリティが求められる時代に。
今後は、DBaaSを選択する際に
マルチクラウドにおけるポータビリティは担保されるか?
という観点も加えよう。
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 2023 発表資料)

More Related Content

PDF
PostgreSQL 15の新機能を徹底解説
PPTX
オンライン物理バックアップの排他モードと非排他モードについて ~PostgreSQLバージョン15対応版~(第34回PostgreSQLアンカンファレンス...
PDF
速習!論理レプリケーション ~基礎から最新動向まで~(PostgreSQL Conference Japan 2022 発表資料)
PDF
PostgreSQLレプリケーション10周年!徹底紹介!(PostgreSQL Conference Japan 2019講演資料)
PPTX
PostgreSQLの統計情報について(第26回PostgreSQLアンカンファレンス@オンライン 発表資料)
PDF
NTT DATA と PostgreSQL が挑んだ総力戦
PPTX
分散システムについて語らせてくれ
PPTX
NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...
PostgreSQL 15の新機能を徹底解説
オンライン物理バックアップの排他モードと非排他モードについて ~PostgreSQLバージョン15対応版~(第34回PostgreSQLアンカンファレンス...
速習!論理レプリケーション ~基礎から最新動向まで~(PostgreSQL Conference Japan 2022 発表資料)
PostgreSQLレプリケーション10周年!徹底紹介!(PostgreSQL Conference Japan 2019講演資料)
PostgreSQLの統計情報について(第26回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA と PostgreSQL が挑んだ総力戦
分散システムについて語らせてくれ
NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...

What's hot (20)

PDF
オンライン物理バックアップの排他モードと非排他モードについて(第15回PostgreSQLアンカンファレンス@オンライン 発表資料)
PDF
コンテナセキュリティにおける権限制御(OCHaCafe5 #3 Kubernetes のセキュリティ 発表資料)
PDF
pg_hint_planを知る(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
PDF
PostgreSQL 15 開発最新情報
PDF
トランザクション処理可能な分散DB 「YugabyteDB」入門(Open Source Conference 2022 Online/Fukuoka 発...
PDF
レプリケーション遅延の監視について(第40回PostgreSQLアンカンファレンス@オンライン 発表資料)
PDF
PostgreSQL16新機能紹介 - libpq接続ロード・バランシング(第41回PostgreSQLアンカンファレンス@オンライン 発表資料)
PDF
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
PDF
マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)
PDF
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
PPTX
世の中のPostgreSQLエンジニアのpsql設定(第34回PostgreSQLアンカンファレンス@オンライン 発表資料)
PDF
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
PDF
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PPTX
PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)
PDF
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
PDF
pgvectorを使ってChatGPTとPostgreSQLを連携してみよう!(PostgreSQL Conference Japan 2023 発表資料)
PDF
コンテナの作り方「Dockerは裏方で何をしているのか?」
PPTX
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PPTX
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
PDF
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
オンライン物理バックアップの排他モードと非排他モードについて(第15回PostgreSQLアンカンファレンス@オンライン 発表資料)
コンテナセキュリティにおける権限制御(OCHaCafe5 #3 Kubernetes のセキュリティ 発表資料)
pg_hint_planを知る(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQL 15 開発最新情報
トランザクション処理可能な分散DB 「YugabyteDB」入門(Open Source Conference 2022 Online/Fukuoka 発...
レプリケーション遅延の監視について(第40回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQL16新機能紹介 - libpq接続ロード・バランシング(第41回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
世の中のPostgreSQLエンジニアのpsql設定(第34回PostgreSQLアンカンファレンス@オンライン 発表資料)
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PostgreSQLのfull_page_writesについて(第24回PostgreSQLアンカンファレンス@オンライン 発表資料)
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
pgvectorを使ってChatGPTとPostgreSQLを連携してみよう!(PostgreSQL Conference Japan 2023 発表資料)
コンテナの作り方「Dockerは裏方で何をしているのか?」
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
Ad

Similar to 今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 2023 発表資料) (20)

PDF
詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)
PDF
Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)
PDF
postgresql conference 2018 on-premise to rds
PDF
JTF2021w F3 postgresql frontline
PDF
OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)
PDF
今すぐ使えるクラウドとPostgreSQL
PPTX
ついに上陸!PaaS 最新兵器のご紹介
PDF
PGOを用いたPostgreSQL on Kubernetes入門(Open Source Conference 2023 Online/Hokkaido...
PDF
PGOを用いたPostgreSQL on Kubernetes入門(PostgreSQL Conference Japan 2022 発表資料)
PDF
Best Practices for Running PostgreSQL on AWS
PPTX
祝!PostgreSQLレプリケーション10周年!徹底紹介!!
PDF
もうSQLとNoSQLを選ぶ必要はない!? ~両者を備えたスケールアウトデータベースGridDB~
PDF
PostgreSQL9.3新機能紹介
PDF
[db tech showcase OSS 2017] A24: マイクロソフトと OSS Database - Azure Database for M...
PDF
[よくわかるクラウドデータベース] Amazon RDS for PostgreSQL検証報告
PDF
PostgreSQL最新動向 ~カラムナストアから生成AI連携まで~ (Open Source Conference 2025 Tokyo/Spring ...
PDF
IoT時代を迎えて、あなたのシステムは今までのDBで充分ですか?~ GridDBとその適用事例紹介 ~
PDF
つくって壊して直して学ぶ Database on Kubernetes (CloudNative Days Summer 2025 発表資料)
PDF
高速処理と高信頼性を両立し、ペタバイト級の多種大量データを蓄積する、ビッグデータ/ IoT時代のデータベースとは??
PDF
サイバーフィジカルシステム(CPS)に必要なデータ基盤を考える ~ NoSQL/SQLハイブリット型GridDB ~
詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)
Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)
postgresql conference 2018 on-premise to rds
JTF2021w F3 postgresql frontline
OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)
今すぐ使えるクラウドとPostgreSQL
ついに上陸!PaaS 最新兵器のご紹介
PGOを用いたPostgreSQL on Kubernetes入門(Open Source Conference 2023 Online/Hokkaido...
PGOを用いたPostgreSQL on Kubernetes入門(PostgreSQL Conference Japan 2022 発表資料)
Best Practices for Running PostgreSQL on AWS
祝!PostgreSQLレプリケーション10周年!徹底紹介!!
もうSQLとNoSQLを選ぶ必要はない!? ~両者を備えたスケールアウトデータベースGridDB~
PostgreSQL9.3新機能紹介
[db tech showcase OSS 2017] A24: マイクロソフトと OSS Database - Azure Database for M...
[よくわかるクラウドデータベース] Amazon RDS for PostgreSQL検証報告
PostgreSQL最新動向 ~カラムナストアから生成AI連携まで~ (Open Source Conference 2025 Tokyo/Spring ...
IoT時代を迎えて、あなたのシステムは今までのDBで充分ですか?~ GridDBとその適用事例紹介 ~
つくって壊して直して学ぶ Database on Kubernetes (CloudNative Days Summer 2025 発表資料)
高速処理と高信頼性を両立し、ペタバイト級の多種大量データを蓄積する、ビッグデータ/ IoT時代のデータベースとは??
サイバーフィジカルシステム(CPS)に必要なデータ基盤を考える ~ NoSQL/SQLハイブリット型GridDB ~
Ad

More from NTT DATA Technology & Innovation (20)

PDF
開発中の新機能 Spark Declarative Pipeline に飛びついてみたが難しかった(JEDAI DAIS Recap#2 講演資料)
PDF
PostgreSQL18新機能紹介(db tech showcase 2025 発表資料)
PDF
PGConf.dev 2025 参加レポート (JPUG総会併設セミナー2025 発表資料)
PDF
Can We Use Rust to Develop Extensions for PostgreSQL? (POSETTE: An Event for ...
PDF
2025年現在のNewSQL (最強DB講義 #36 発表資料)
PDF
Java in Japan: A Journey of Community, Culture, and Global Integration (JavaO...
PDF
Unveiling the Hidden Layers of Java Class Files: Beyond Bytecode (Devnexus 2025)
PDF
論理レプリケーションのアーキテクチャ (第52回 PostgreSQLアンカンファレンス@オンライン 発表資料)
PDF
実はアナタの身近にある!? Linux のチェックポイント/レストア機能 (NTT Tech Conference 2025 発表資料)
PDF
Apache Sparkに対するKubernetesのNUMAノードを意識したリソース割り当ての性能効果 (Open Source Conference ...
PDF
pgbenchのスレッドとクライアント (第51回 PostgreSQLアンカンファレンス@オンライン 発表資料)
PDF
PostgreSQLのgitレポジトリから見える2024年の開発状況 (第51回 PostgreSQLアンカンファレンス@オンライン 発表資料)
PDF
ストリーム処理はデータを失うから怖い?それ、何とかできますよ! 〜Apahe Kafkaを用いたストリーム処理における送達保証〜 (Open Source...
PDF
生成AI時代のPostgreSQLハイブリッド検索 (第50回PostgreSQLアンカンファレンス@オンライン 発表資料)
PDF
DAIS2024参加報告 ~Spark中心にしらべてみた~ (JEDAI DAIS Recap 講演資料)
PDF
PostgreSQLのHTAP適応について考える (PostgreSQL Conference Japan 2024 講演資料)
PDF
静かに変わってきたクラスファイルを詳細に調べて楽しむ(JJUG CCC 2024 Fall講演資料)
PDF
Gartnerも注目するグリーンソフトウェアの実現に向けて (Green Software Foundation Global Summit 2024 T...
PDF
パーティションのATTACH時の注意ポイント (第49回PostgreSQLアンカンファレンス@東京 発表資料)
PDF
PostgreSQL17対応版 EXPLAINオプションについて (第49回PostgreSQLアンカンファレンス@東京 発表資料)
開発中の新機能 Spark Declarative Pipeline に飛びついてみたが難しかった(JEDAI DAIS Recap#2 講演資料)
PostgreSQL18新機能紹介(db tech showcase 2025 発表資料)
PGConf.dev 2025 参加レポート (JPUG総会併設セミナー2025 発表資料)
Can We Use Rust to Develop Extensions for PostgreSQL? (POSETTE: An Event for ...
2025年現在のNewSQL (最強DB講義 #36 発表資料)
Java in Japan: A Journey of Community, Culture, and Global Integration (JavaO...
Unveiling the Hidden Layers of Java Class Files: Beyond Bytecode (Devnexus 2025)
論理レプリケーションのアーキテクチャ (第52回 PostgreSQLアンカンファレンス@オンライン 発表資料)
実はアナタの身近にある!? Linux のチェックポイント/レストア機能 (NTT Tech Conference 2025 発表資料)
Apache Sparkに対するKubernetesのNUMAノードを意識したリソース割り当ての性能効果 (Open Source Conference ...
pgbenchのスレッドとクライアント (第51回 PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQLのgitレポジトリから見える2024年の開発状況 (第51回 PostgreSQLアンカンファレンス@オンライン 発表資料)
ストリーム処理はデータを失うから怖い?それ、何とかできますよ! 〜Apahe Kafkaを用いたストリーム処理における送達保証〜 (Open Source...
生成AI時代のPostgreSQLハイブリッド検索 (第50回PostgreSQLアンカンファレンス@オンライン 発表資料)
DAIS2024参加報告 ~Spark中心にしらべてみた~ (JEDAI DAIS Recap 講演資料)
PostgreSQLのHTAP適応について考える (PostgreSQL Conference Japan 2024 講演資料)
静かに変わってきたクラスファイルを詳細に調べて楽しむ(JJUG CCC 2024 Fall講演資料)
Gartnerも注目するグリーンソフトウェアの実現に向けて (Green Software Foundation Global Summit 2024 T...
パーティションのATTACH時の注意ポイント (第49回PostgreSQLアンカンファレンス@東京 発表資料)
PostgreSQL17対応版 EXPLAINオプションについて (第49回PostgreSQLアンカンファレンス@東京 発表資料)

今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 2023 発表資料)

  • 1. © 2023 NTT DATA Group Corporation 今、改めて考える PostgreSQLプラットフォーム - マルチクラウドとポータビリティ – (PostgreSQL Conference Japan 2023) 2023/11/24 株式会社NTTデータグループ 小林 隆浩
  • 2. © 2023 NTT DATA Group Corporation 3 アジェンダ 01. あなたの はどこに?2023年バージョン 02. クラウドベンダーが提供するPostgreSQL as a Service 03. その他DBベンダーが提供するPostgreSQL as a Service 04. マルチクラウドとポータビリティ 05. まとめ
  • 3. © 2023 NTT DATA Group Corporation 4 01. あなたの はどこに? (2023年バージョン) 4
  • 4. © 2023 NTT DATA Group Corporation 5 2020年にこんな話をしました https://speakerdeck.com/tzkoba/postgresqlpuratutohuomufalseche-di-bi-jiao-kontenakarakuraudomade
  • 5. © 2023 NTT DATA Group Corporation 6 3年の変化 - クラウドの更なる隆盛 - ⚫ 体感的にもオンプレミスは減少、クラウド への移行ケースを多々見る状況。 ⚫ DBaaS側の制約(バージョンやメンテナ ンス時間など)が緩和されてきた。 ⚫ この流れは今後も続いていくと思われる。
  • 6. © 2023 NTT DATA Group Corporation 8 PostgreSQLのプラットフォームを整理してみると オンプレミス クラウド IaaS KaaS (EKS/GKE/AKS..) DBaaS (PostgreSQL as a Service) Kubernetes ベアメタル/VM DBMS オーケストレータ VM RDS Cloud SQL PostgreSQL Operator ⚫ 現在、PostgreSQLを使う際に様々なプラットフォームが選択可能
  • 7. © 2023 NTT DATA Group Corporation 9 (本日のゴール)データベース・プラットフォームの変化を理解しよう ⚫ クラウドベンダーのDBaaSを選択するのは、現状は最優先。 ⚫ その他DBaaSも百花繚乱、新しく登場したものはKubernetes Inside ⚫ マルチクラウドなサービス展開を考えると、DBaaSにもDevOps両面の ポータビリティが求められる時代に。
  • 8. © 2023 NTT DATA Group Corporation 10 02. クラウドベンダーが提供する PostgreSQL as a Service
  • 9. © 2023 NTT DATA Group Corporation 11 PostgreSQL as as Serviceがもたらす効果 ⚫ データベースの運用を省力化し、アプリケーションに集中できる ラック/電源 ハードウェア OS バックアップ/HA/スケール DBMS アプリケーション 【オンプレミス】 【DBaaS】 ユーザによる 管理 サービスベンダーの 管理 ユーザによる 管理 Kubernetes (オーケストレータ) VM/コンテナ ラック/電源 ハードウェア OS バックアップ/HA/スケール DBMS アプリケーション Kubernetes (オーケストレータ) VM/コンテナ
  • 10. © 2023 NTT DATA Group Corporation 12 クラウドベンダーのDBaaSへの投資とサービス拡充 ⚫ 2023/11時点の各社サービスとPostgreSQLバージョン対応は以下の通り クラウド サービス名 PostgreSQL Ver. 備考 AWS RDS for PostgreSQL 11 - 16 Aurora PostgreSQL 11 - 15 16はプレビュー Azure Database for PostgreSQL 11 – 16 フレキシブルサーバ Cosmos DB for PostgreSQL 11 - 16 Google Cloud Cloud SQL for PostgreSQL 9.6 - 15 Enterprise Plusは14,15 Alloy DB for PostgreSQL 14互換 PostgreSQL interface for Spanner - 完全な互換性はない OCI OCI Database with PostgreSQL 14.9 11月中旬にコンソールに登場
  • 11. © 2023 NTT DATA Group Corporation 13 クラウドベンダーのDBaaSへの投資、サービス拡充 – AWS編 - ⚫ RDS for PostgreSQL ⚫ マネージドなPostgreSQLの基本形(容易なデプロイ、自動バックアップ等々) ⚫ DBサイズは最大で64TB ⚫ Optimized ReadsやDedicated Log Volumesなどの最適化 ⚫ Aurora (PostgreSQL Compatible) ⚫ Compute/Storage分離の先駆け、サーバレスもあり ⚫ DBサイズは最大で128TB、現状ではこれを超えるケースも良く聞く ⚫ Writeスケールに対する決定打は未だ出ていない ※2023/10時点
  • 12. © 2023 NTT DATA Group Corporation 14 (参考)DBaaSの2大分類、RDSタイプとAuroraタイプ プライマリ Storage スタンバイ • Compute/Storageは一体型 • データ同期はストレージレベル、またはStreaming Replication • 同期レプリケーションでRPO=0 レプリケーション プライマリ リードレプリカ リードレプリカ • Compute/Storageを分離、StorageにWALを送信 • ストレージでは3冗長以上のコピーを保持 • リードレプリカが利用可能だが、レプリカラグあり • Compute間もキャッシュ同期等を行う 【RDSタイプ】 【Auroraタイプ】
  • 13. © 2023 NTT DATA Group Corporation 15 (参考)Optimized ReadsとDedicated Log Volumes ⚫ IaaSレベルからPostgreSQL用の最適化を施している。 ⚫ どちらもチューニングでは一般的な「IOの分離」 NVMe SSD (ローカルディスク) RDSインスタンス EBSボリューム 通常テーブルを配置 (機能非利用時は一時領域もWALもここ) WALを出力 ソートなどの 一時領域 Optimized Reads Dedicated Log Volumes
  • 14. © 2023 NTT DATA Group Corporation 16 クラウドベンダーのDBaaSへの投資、サービス拡充 - Google Cloud - ⚫ Cloud SQL Enterprise / Enterprise Plus ⚫ マネージドなPostgreSQL、サービスレベルが異なる2つのエディション ⚫ Enterprise Plusでは性能向上を実現、Data Cacheなども利用可能 ⚫ DBサイズは最大で64TB ⚫ AlloyDB ⚫ クラウドネイティブな構成でPostgreSQLを再実装。高い性能と可用性を実現。 ⚫ DBサイズは最大で32TB ※64TBはプレビュー中 ⚫ Cloud Spanner PostgreSQL Interface
  • 15. © 2023 NTT DATA Group Corporation 17 (参考)Cloud SQL Enterprise と Enterprise Plus ⚫ 価格やSLA、対応機能などが異なる。 Cloud SQL Enterprise Cloud SQL Enterprise Plus 価格(例) $0.0537 per vCPU $0.0091 per GB(memory) $0.0698 per vCPU $0.0118 per GB(memory) PGバージョン 9.6 - 15 14 - 15 最大スペック 96 vCPU / 624 GB(memory) 64 TB(storage) 128 vCPU / 864 GB(memory) 64 TB(storage) SLA 99.95% 99.99% ダウンタイム(メンテナンス時) 60秒以下 10秒以下 データキャッシュ No Yes
  • 16. © 2023 NTT DATA Group Corporation 18 (参考)AlloyDBのアーキテクチャ ⚫ Auroraに近い構成で、更にカラムナエンジンや高速キャッシュを搭載。 ⚫ ローカル環境で実行可能なAlloyDB Omniも存在。 Intelligent Database Storage Engine プライマリ F/Oレプリカ リードプール 分散ファイルシステム(Colossus) 書込時は WALのみを送信 ストレージ側で WALを処理して、 耐久性の高い ストレージへ書込み
  • 17. © 2023 NTT DATA Group Corporation 19 クラウドベンダーのDBaaSへの投資、サービス拡充 - Azure - ⚫ Azure Database for PostgreSQL ⚫ 単一サーバ/フレキシブルサーバがあるが、今後はフレキシブルサーバが主軸 ⚫ DBサイズは最大で32TB ⚫ Premium SSD v2がプレビューに。性能向上かつ、DBサイズが64TBまで拡張可。 ⚫ Azure Cosmos DB for PostgreSQL (旧Hyperscale(Citus)) ⚫ Citusを利用した、Sharding型の分散PostgreSQL ⚫ Coordinator+複数Workerの構成 ⚫ Worker毎に最大16TB(32TBはプレビュー)のストレージを持ち、スケールアウトが可能
  • 18. © 2023 NTT DATA Group Corporation 20 (参考)PostgreSQL拡張「Citus」のアーキテクチャ ⚫ データをWorkerに分散して持つことでスケールアウトを実現 ⚫ カラムナ形式でデータを保持可能で、分析系SQLにも強みを持つ Coordinator (メタデー管理、分散や集計を担当) Worker1 Worker2 Worker3 アプリから見ると 1つのテーブル
  • 19. © 2023 NTT DATA Group Corporation 21 クラウドベンダーのDBaaSへの投資、サービス拡充 - OCI - ⚫ 2023/11、OCI Database with PostgreSQLが利用可能に。 ⚫ PostgreSQL is major version = 14 and minor version = 9. プライマリ リードレプリカ リードレプリカ 可用性/障害 ドメイン1 可用性/障害 ドメイン2 可用性/障害 ドメイン3 Database Optimized Storage (DbOS)
  • 20. © 2023 NTT DATA Group Corporation 22 03. その他DBベンダーが提供する PostgreSQL as a Service 2
  • 21. © 2023 NTT DATA Group Corporation 23 (話変わって)PostgreSQL on Kubernetesの状況 ⚫ PostgreSQL Operatorは数年前と比較して増加。 ⚫ PostgreSQLの開発/サポートをしている企業を中心に広がっている。 Operator 開発元 github★ 備考 PGO Crunchy Data 3,798 postgres-operator Zalando 3,645 CloudNativePG EDB 2,448 EDB Postgres for Kubernetes EDB - CloudNativePGのEPAS対応 percona-postgres-operator Percona 198 PGOがベース StackGres OnGres 714 CYBERTEC-pg-operator CYBERTEC 0 Zalandoがベース ….
  • 22. © 2023 NTT DATA Group Corporation 24 (参考)KubernetesにおけるPostgreSQL Operetorとは ⚫ CloudNativePGの例を以下に示す。 ⚫ Streaming Replicationの構成、障害時の切り替えなどが簡単に設定できる。 ⚫ バックアップ運用も設定可能で、DB管理者の負荷を大きく軽減。 CloudNativePG プライマリ スタンバイ スタンバイ プライマリ向けService
  • 23. © 2023 NTT DATA Group Corporation 25 (参考)他のDBもKubernetes Operator対応に ⚫ Oracle社も各データベースのOperatorを開発。 https://dev.mysql.com/doc/mysql-operator/en/mysql-operator-introduction.html 【MySQL】 【Oracle Database】 • DockerやPodmanなどのコンテナ環境には、19c から対応 • Oracle Database Operator on Kubernetes • 23cからOracle RAC on Kubernetesも可能に • バージョンを上げる毎にフットプリントを削減し (=イメージの縮小)、コンテナ化やKubernetes での実行を可能にしている
  • 24. © 2023 NTT DATA Group Corporation 26 なぜ、Database on Kubernetesが重要か? ⚫ DBベンダーが近年提供するDBaaSは ”on Kubernetes” が増加 DBaaS 提供 DBMS K8s 対応クラウド AWS Google Azure Crunchy Bridge Crunchy Data PG - 〇 〇 〇 BigAnimal EDB PG 利用 〇 〇 〇 Tembo Cloud Tembo PG (利用) 〇 - - Neon Neon PG互換 (利用) - - - YugabyteDB Managed Yugabyte PG互換 利用 〇 〇 〇 TiDB Cloud PingCAP MySQL互換 利用 〇 - 〇 ….
  • 25. © 2023 NTT DATA Group Corporation 27 EDB Big Animal ⚫ EDBが提供するPostgreSQL as a Service ⚫ PostgreSQLとEDB Postgres Advanced Server(EPAS)を選択可能 ⚫ EPASではEDB Postgres Distributedを利用し、高い可用性/メンテナンス性を実現 https://www.enterprisedb.com/blog/what-database-service-dbaas-tutorial-how-use-managed-database-service-postgresql Kubernetes、そして PostgreSQL Operatorを 利用して、各クラウドに サービスを展開
  • 26. © 2023 NTT DATA Group Corporation 28 YugabyteDB Managed ⚫ PostgreSQL v11互換(v15互換も対応予定)の分散SQLデータベース ⚫ Kubernetes上のYugabyte Platformでコンポーネントを構成・管理する yb-tserver yb-master Yugabyte Platform AWS/Google Cloud/Azure yb-tserver yb-master yb-tserver yb-master yb-tserver yb-master yb-tserver yb-master yb-tserver yb-master ユーザX ユーザY
  • 27. © 2023 NTT DATA Group Corporation 29 Tembo ⚫ AWSで利用可能なPostgreSQL as a Service。 ⚫ Tembo OperatorをKubernetesにインストールすることでも利用可 ⚫ 特徴としてStackという考え方を持ち、用途別に組み合わせたExtensionと、 推奨の設定入りPostgreSQLが簡単に構築が可能。 ⚫ OLAP [hydra_columnar/pg_partman/clerk_fdw/redis_fdw] ⚫ Vector DB [pgvector/pg_vectorize/pgmq] ⚫ Redis Stackに考え方が近い。
  • 28. © 2023 NTT DATA Group Corporation 31 04. マルチクラウドとポータビリティ 3
  • 29. © 2023 NTT DATA Group Corporation 32 ここで3年ぶりにマルチクラウドの話 ⚫ 3年前はこんな感じ。 ⚫ ↑は可用性の視点だが、昨今は別視点からもマルチクラウドが注目される ⚫ 開発したサービスはどのクラウドにリリースする? ⚫ AWSだけ?Google Cloudも?Azureは? ⚫ 収益に関わる大きな選択になる。
  • 30. © 2023 NTT DATA Group Corporation 33 ⚫ 今回、便宜的に4タイプに分類。 マルチクラウドとは 自社DC ①シングルクラウド ②ハイブリッドクラウド サービス ③(狭義の)マルチクラウド ④クロスクラウド 本日、主にお話しする部分
  • 31. © 2023 NTT DATA Group Corporation 34 (参考)自社DCとクラウドを接続するパターン ② ハイブリッドクラウド ⚫ 自社DCとクラウドを接続 ⚫ 高速(つまり高額)な回線が必要で、ある程度の規模は前提。 ⚫ 自社DCと複数クラウドを接続して、DC経由で高速なクラウド間接続を行うことも可能。 ⚫ セキュリティの観点で必須となることがある ⚫ クラウドにデータを置くことが許されないケースなど ⚫ DCとクラウド、どちらに何を置くかで様々なパターンがある ⚫ 自社DC:DB ←→ クラウド:アプリ ⚫ 自社DC:アプリ、DB(プライマリ) ←→ クラウド:DB(スタンバイ)
  • 32. © 2023 NTT DATA Group Corporation 35 マルチクラウド、そしてクロスクラウド ③ (狭義の)マルチクラウド ⚫ 自社サービスを複数クラウド(AWS/Azure/Googleなど)に展開 ⚫ 社内システムでは不要な観点だが、ビジネス上の要件となりつつある ⚫ DBベンダーもこの形態でDBaaSを展開している ⚫ 課題となるのは、クラウド間の機能や運用の差異をどう吸収するか ④ クロスクラウド ⚫ クラウド間でデータを同期、障害時にフェイルオーバー ⚫ クラウド障害を耐える可用性を実現 ⚫ マルチクラウドの課題に加えて、障害検知・切替やクラウド間レイテンシが大きな壁
  • 33. © 2023 NTT DATA Group Corporation 36 マルチクラウドとDBaaSの関連性 ⚫ DBaaSの省力化が、マルチクラウドで台無しになる可能性も。 【DBaaS】 ラック/電源 ハードウェア OS バックアップ/HA/スケール DBMS アプリケーション Kubernetes (オーケストレータ) VM/コンテナ 3. DBaaSベンダーの視点 • 全クラウドに自社DBaaSを ローンチしたい • クラウド毎に異なる実装は なるべく避けたい • 自社DBaaSのポータルで 運用をナビゲートしたい 1. Devの視点 • PostgreSQLまたはMySQLで 開発したい • 既存コードをそのまま動かしたい 2. Opsの視点 • IaCを全クラウドで使いまわしたい • モニタリングもクラウド毎に違う 方法でやりたくない • チューニングもクラウド毎に手法を 調べるのは大変
  • 34. © 2023 NTT DATA Group Corporation 37 クラウドベンダーによるDBaaSの問題点 ⚫ PostgreSQLベースでも、最適化の結果、サービス間の差異は大きくなる。 【A社のDBaaS】 ラック/電源 ハードウェア OS バックアップ/HA/スケール DBMS アプリケーション Kubernetes (オーケストレータ) VM/コンテナ • クラウドベンダー毎に運用や監視 面の使い勝手は異なる。 • そして低いレイヤでも最適化を 行い、差別化する。 • 結果として、クラウド間の ポータビリティが一部失われる。 【G社のDBaaS】 ラック/電源 ハードウェア OS バックアップ/HA/スケール DBMS アプリケーション Kubernetes (オーケストレータ) VM/コンテナ
  • 35. © 2023 NTT DATA Group Corporation 38 (参考)Optimized ReadsとDedicated Log Volumes ⚫ IaaSレベルからPostgreSQL用の最適化を施している。 ⚫ どちらもチューニングでは一般的な「IOの分離」 NVMe SSD (ローカルディスク) RDSインスタンス EBSボリューム 通常テーブルを配置 (機能非利用時は一時領域もWALもここ) WALを出力 ソートなどの 一時領域 Optimized Reads Dedicated Log Volumes 再掲
  • 36. © 2023 NTT DATA Group Corporation 39 【X社のDBaaS @AWS】 その他DBベンダーのDBaaSでは ⚫ クラウド間の差異を吸収して、ポータビリティを高める工夫がされている。 ラック/電源 ハードウェア OS アプリケーション Kubernetes (オーケストレータ) VM/コンテナ ラック/電源 ハードウェア OS アプリケーション • その他ベンダーは物理レイヤに 手が届きづらい。 • on Kubernetesで開発された DBaaSでは、クラウド間の ポータビリティが確保される。 • これはベンダーのサービス開発 効率だけでなく、 Opsの効率も 向上させる。 【X社のDBaaS @GoogleCloud】 ラック/電源 ハードウェア アプリケーション Kubernetes (オーケストレータ) VM/コンテナ OS OS バックアップ/HA/スケール DBMS バックアップ/HA/スケール DBMS
  • 37. © 2023 NTT DATA Group Corporation 40 カギとなるのは、ポータビリティの高いプラットフォーム=Kubernetes ⚫ 一例として、プライベートDBaaSを標榜するPercona Everest ⚫ Kubernetesを前提に、マルチクラウドなDBaaSの構築と運用を支援するツール群となっている。 Percona Everest AWS Google Cloud オンプレミス KubernetesにOperatorを インストール。 構成管理・監視等の ツールを提供する。
  • 38. © 2023 NTT DATA Group Corporation 42 (参考)クラウドベンダーによるマルチクラウドDBaaS ⚫ 特定クラウドでしか使えないDBaaSだけ、ではない。 ⚫ OCIとAzureが連携し、IaaS部分の最適化まで含めてマルチクラウドでDBaaSが利用可能。 アプリケーション Oracle Database Azure OCI Oracle Database OCI アプリケーション Azure Oracle Database Service for Azure(ODSA) Oracle Database@Azure
  • 39. © 2023 NTT DATA Group Corporation 44 高速インターコネクトがあれば、マルチクラウドDBaaSは可能? ⚫ Google Cloudでもパーツは揃いつつある。 ⚫ どのクラウドでも稼働するAlloyDB Omniと、高速接続のCross-Cloud InterConnect AlloyDB Google Cloud AlloyDB Omni AWS Cross-Cloud InterConnect 現状でAlloyDB Omniの Kubernetes Operatorは 存在しないが、登場すれば こうした構成も実現の可能 性がある。
  • 40. © 2023 NTT DATA Group Corporation 45 05. まとめ 4
  • 41. © 2023 NTT DATA Group Corporation 46 (本日のゴール)データベース・プラットフォームの変化を理解しよう ⚫ クラウドベンダーのDBaaSを選択するのは、現状は最優先。 ⚫ その他DBaaSも百花繚乱、新しく登場したものはKubernetes Inside ⚫ マルチクラウドなサービス展開を考えると、DBaaSにもDevOps両面の ポータビリティが求められる時代に。 今後は、DBaaSを選択する際に マルチクラウドにおけるポータビリティは担保されるか? という観点も加えよう。