Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Google Cloud の RDB を徹底比較! 選び方と最新機能紹介 #devio2024

Google Cloud の RDB を徹底比較! 選び方と最新機能紹介 #devio2024

2024年7月20日に開催した「Classmethod Odyssey Real Event Day4」での登壇資料です。
https://event.classmethod.jp/odyssey-offline?day4
https://eventregist.com/e/cm_odyssey

maroon1st

July 20, 2024
Tweet

More Decks by maroon1st

Other Decks in Programming

Transcript

  1. Who am I? ⼤栗 宗(@maroon1st) ブログ投稿本数:355 本 ⽇系 SIer → クラスメソッド

    → クラウドベンダー → クラスメソッド (2 回⽬) Google Cloud と AWS のクラウド⼆⼑流エンジニア 本業は各種サービスのプリセールスエンジニア • Cloudflare, Google Cloud, AWS, etc • Google Cloud Partner Top Engineer 2023, 2024 • 2022, 2023 Japan AWS Top Engineers (Database) 3
  2. ⼈気のデータベース 6 “DB-Engines” “DB-Engines Ranking - popularity ranking of database

    management systems” https://db-engines.com/en/ranking やはり RDBMS の⼈気は根強い
  3. データ検索のトレンドの変化 • ⽣成 AI で RAG が注⽬され ベクトル検索の重要度が向上 • データ流通量の急増により

    分析機能の必要性の増加 7 Patrick Lewis, Ethan Perez, Aleksandra Piktus, Fabio Petroni, Vladimir Karpukhin, Naman Goyal, Heinrich Küttler, Mike Lewis, Wen-tau Yih, Tim Rocktäschel, Sebastian Riedel, Douwe Kiela, Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks 2020. page 2, URL https://arxiv.org/pdf/2005.11401 総務省 "総務省|令和5年版 情報通信⽩書|データ流通量の爆発的増加". 総務省. 2024-7-8. https://www.soumu.go.jp/johotsusintokei/whitepaper/ja/r05/html/nd121100.html
  4. サードパーティ データベース Google 独⾃実装のデータベース データベース ソリューション 8 Bigtable Bare Metal

    Solution Cloud Spanner Memorystore Firestore インメモリ リレーショナル ドキュメント ワイドカラム Redis Memcached Redis Cluster MySQL PostgreSQL SQL Server AlloyDB PostgreSQL BigQuery Cloud SQL Oracle
  5. RDBMS ソリューション 9 MySQL PostgreSQL SQL Server Oracle 独自 Cloud

    SQL Enterprise ◯ ◯ ◯ Cloud SQL Enterprise Plus ◯ ◯ AlloyDB ◯ Bare Metal Solution (unmanaged) ◯ Cloud Spanner (NewSQL) ◯ BigQuery (分析) ◯
  6. Cloud SQL エディション 10 Enterprise Enterprise Plus データベース バージョン MySQL

    5.6, 5.7, 8.0 PostgreSQL 9.6, 10, 11, 12, 13, 14, 15 MySQL 8.0 PostgreSQL 12, 13, 14, 15 マシンタイプ 汎用マシン ファミリー (おそらく N1) パフォーマンス最適化 N ファミリー (おそらく N2) マシン構成の上限 最大 96 基の vCPU 最大 624 GB RAM コア対メモリ比率 1:6.5 最大 128 基の vCPU 最大 864 GB RAM コア対メモリ比率 1:8 可用性 SLA 99.95% 99.99% メンテナンスによる ダウンタイム 60 秒未満 1 秒未満(高可用性の場合) データ キャッシュ ✕ ◯(オプション) ポイントインタイム ログの保持 最長 7 日 最長 35 日
  7. AlloyDB for PostgreSQL 11 PostgreSQL 互換 パフォーマンス ⾼速な分析クエリ カラム型エンジン AlloyDB

    Omni Read Pool Read Pool Regional Storage Layer Write / Read IP Read Pool Instance Ultra-fast Cache Columnar Engine Optimized PostgreSQL Read Pool Instance Ultra-fast Cache Columnar Engine Optimized PostgreSQL Read Pool Instance Ultra-fast Cache Columnar Engine Optimized PostgreSQL Read IP Read Pool Instance Ultra-fast Cache Columnar Engine Optimized PostgreSQL Read Pool Instance Ultra-fast Cache Columnar Engine Optimized PostgreSQL Read Pool Instance Ultra-fast Cache Columnar Engine Optimized PostgreSQL Read IP Ultra-fast Cache Columnar Engine Optimized PostgreSQL Failover Replica Primary Instance Ultra-fast Cache Columnar Engine Optimized PostgreSQL 話題の AlloyDB は本当に凄いデータベースなのでプレビューを使い倒した #devio2022 https://dev.classmethod.jp/articles/alloydb-is-a-really-awesome-database/
  8. Cloud SQL と AlloyDB の違い 12 Enterprise Enterprise Plus AlloyDB

    データベース バージョン MySQL 5.6, 5.7, 8.0 PostgreSQL 9.6, 10, 11, 12, 13, 14, 15 MySQL 8.0 PostgreSQL 12, 13, 14, 15 PostgreSQL 14, 15 マシンタイプ 汎用マシン ファミリー (おそらく N1) パフォーマンス最適化 N ファミリー (おそらく N2) Intel Cascade Lake または Intel Ice Lake (おそらく N2) マシン構成の上限 最大 96 基の vCPU 最大 624 GB RAM コア対メモリ比率 1:6.5 最大 128 基の vCPU 最大 864 GB RAM コア対メモリ比率 1:8 最大 128 基の vCPU 最大 864 GB RAM コア対メモリ比率 1:8 可用性 SLA 99.95% 99.99% 99.99% メンテナンスによる ダウンタイム 60 秒未満 1 秒未満 (高可用性の場合) 1 秒未満 (シングルゾーン可) データ キャッシュ ✕ ◯(オプション) ◯(超高速キャッシュ) ポイントインタイム ログの保持 最長 7 日 最長 35 日 最長 35 日
  9. パフォーマンスを⽐較 • ⽐較対象 ◦ MySQL 1. Cloud SQL Enterprise 2.

    Cloud SQL Enterprise Plus(データ キャッシュ無効) 3. Cloud SQL Enterprise Plus(データ キャッシュ有効 375 GB) ◦ PostgreSQL 1. Cloud SQL Enterprise 2. Cloud SQL Enterprise Plus(データ キャッシュ無効) 3. Cloud SQL Enterprise Plus(データ キャッシュ有効 375 GB) 4. AlloyDB for PostgreSQL 16
  10. パフォーマンスを⽐較 • マシンスペック ◦ マシンタイプ:vCPU 8コア, メモリ 64GB(Enterprise は 52GB)

    ◦ マルチゾーン(⾼可⽤性) ◦ ディスク:1,667 GB※1(AlloyDB 以外) ▪ ネットワーク スループット:2,000 MB/秒 ▪ ディスク スループット:Read 800 MB/秒、Write 800 MB/秒 ▪ IOPS:Read 15,000(MB/秒) Write 15,000(MB/秒) • 実⾏並列度:8, 16, 32, 64, 128, 256 ※1:ディスクパフォーマンスを上げるため⼤きなサイズを割り当て 17
  11. パフォーマンスを⽐較 • 実⾏ワークロード ◦ 使⽤ツール:HammerDB 4.4 ▪ TPROC-C:TPC-C ライクで倉庫の在庫管理を模したもの ▪

    warehouse:2000 ▪ データサイズ:200 GB前後 ◦ 計測データ ▪ 7 回計測 ▪ 最⾼/最低以外の数値(5回分)で平均を取得 18
  12. MySQL のコスト 東京リージョンの⽉額料⾦(オンデマンド) 21 高可用性構成 Enterprise Enterprise Plus Enterprise Plus

    with Cache HA vCPUs 8 vCPU $627.2 $815.3 $815.3 HA Memory 52/64 GB $690.9 $1107.3 $1107.3 Data Cache Storage 375 GB ー ー $156.0 Disk 1667 GB $736.8 $736.8 $736.8 合計 $2054.9 $2659.3 $2815.3
  13. MySQL のコスト 東京リージョンの⽉額料⾦(CUD 1 年) 22 高可用性構成 Enterprise Enterprise Plus

    Enterprise Plus with Cache HA vCPUs 8 vCPU $470.4 $611.4 $611.4 HA Memory 52/64 GB $518.2 $830.4 $830.4 Data Cache Storage 375 GB ー ー $156.0 Disk 1667 GB $736.8 $736.8 $736.8 合計 $1725.4 $2178.7 $2334.7
  14. MySQL のコスト 東京リージョンの⽉額料⾦(CUD 3 年) 23 高可用性構成 Enterprise Enterprise Plus

    Enterprise Plus with Cache HA vCPUs 8 vCPU $301.1 $391.3 $391.3 HA Memory 52/64 GB $331.6 $531.5 $531.5 Data Cache Storage 375 GB ー ー $156.0 Disk 1667 GB $736.8 $736.8 $736.8 合計 $1369.5 $1659.6 $1815.6
  15. PostgreSQL のコスト 東京リージョンの⽉額料⾦(オンデマンド) 25 高可用性構成 Enterprise Enterprise Plus Enterprise Plus

    with Cache AlloyDB HA vCPUs 8 vCPU $627.2 $815.3 $815.3 $987.9 HA Memory 52/64 GB $690.9 $1107.3 $1107.3 $1339.9 Data Cache Storage 375 GB ー ー $156.0 ー Disk 1667 GB (200 GB) $736.8 $736.8 $736.8 $76.8 合計 $2054.9 $2659.3 $2815.3 $2404.6
  16. PostgreSQL のコスト 東京リージョンの⽉額料⾦(CUD 1 年) 26 高可用性構成 Enterprise Enterprise Plus

    Enterprise Plus with Cache AlloyDB HA vCPUs 8 vCPU $470.4 $611.4 $611.4 $741.0 HA Memory 52/64 GB $518.2 $830.4 $830.4 $1005.4 Data Cache Storage 375 GB ー ー $156.0 ー Disk 1667 GB (200 GB) $736.8 $736.8 $736.8 $76.8 合計 $1725.4 $2178.7 $2334.7 $1823.2
  17. PostgreSQL のコスト 東京リージョンの⽉額料⾦(CUD 3 年) 27 高可用性構成 Enterprise Enterprise Plus

    Enterprise Plus with Cache AlloyDB HA vCPUs 8 vCPU $301.1 $391.3 $391.3 $474.2 HA Memory 52/64 GB $331.6 $531.5 $531.5 $642.9 Data Cache Storage 375 GB ー ー $156.0 ー Disk 1667 GB (200 GB) $736.8 $736.8 $736.8 $76.8 合計 $1369.5 $1659.6 $1815.6 $1193.9
  18. パフォーマンスに対する考察 • DB エンジンにより差はあるが Enterprise Plus はコスト 効率が良く、 Cache Storage

    は今回の結果では MySQL の場合に⾼い効果を発揮した。 • AlloyDB は⾼多重度で⾼いパフォーマンスを発揮する。 • I/O インテンシブなワークロードの場合、Cloud SQL で はストレージサイズを⼤きく確保する必要があるため AlloyDB が安価になる可能性がある。 28
  19. Cloud SQL と AlloyDB の違い 30 Enterprise Enterprise Plus AlloyDB

    データベース バージョン MySQL 5.6, 5.7, 8.0 PostgreSQL 9.6, 10, 11, 12, 13, 14, 15 MySQL 8.0 PostgreSQL 12, 13, 14, 15 PostgreSQL 14, 15 マシンタイプ 汎用マシン ファミリー (おそらく N1) パフォーマンス最適化 N ファミリー (おそらく N2) Intel Cascade Lake または Intel Ice Lake (おそらく N2) マシン構成の上限 最大 96 基の vCPU 最大 624 GB RAM コア対メモリ比率 1:6.5 最大 128 基の vCPU 最大 864 GB RAM コア対メモリ比率 1:8 最大 128 基の vCPU 最大 864 GB RAM コア対メモリ比率 1:8 可用性 SLA 99.95% 99.99% 99.99% メンテナンスによる ダウンタイム 60 秒未満 1 秒未満 (高可用性の場合) 1 秒未満 (シングルゾーン可) データ キャッシュ ✕ ◯(オプション) ◯(超高速キャッシュ) ポイントインタイム ログの保持 最長 7 日 最長 35 日 最長 35 日
  20. ⾊々な機能の⽐較 • Vector 検索 ◦ Cloud SQL for PostgreSQL は

    pgvector ◦ AlloyDB は ScaNN で pgvector 互換実装 ◦ Cloud SQL for MySQL は独⾃実装 • 分析 ◦ AlloyDB はカラム型エンジンを備える 31
  21. 最近の主なアップデート Cloud SQL • Enterprise Plus の HA プライマリ インスタンス

    ◦ ダウンタイムをほぼゼロでスケールアップ ◦ 計画メンテナンスのダウンタイムが1秒未満 • Gemini in Databases がパブリック プレビュー • OSS エンジンで EOL 後の延⻑サポート提供 32
  22. Oracle Database • 2024 年 6 ⽉ 11 ⽇に Google

    Cloud と Oracle が パートナーシップを発表 • 今年後半に Oracle Database@Google Cloud を提供 37 https://www.oracle.com/jp/news/announcement/oracle-and-google-cloud-announce-groundbreaking-multicloud-partnership-2024-06-11/
  23. サードパーティ データベース Google 独⾃実装のデータベース データベース ソリューション 41 Bigtable Bare Metal

    Solution Cloud Spanner Memorystore Firestore インメモリ リレーショナル ドキュメント ワイドカラム Redis Memcached Redis Cluster MySQL PostgreSQL SQL Server AlloyDB PostgreSQL BigQuery Cloud SQL Oracle
  24. RDBMS 選択フローチャート 1 42 メインの ワークロード DB エンジン? 超⾼可⽤性? 書き込み

    スケール BigQuery Cloud Spanner 分析も必要? (HTAP) AlloyDB SQL Server Oracle MySQL PostgreSQL OLAP OLTP Yes No Yes No No Yes
  25. RDBMS 選択フローチャート 2 43 Cloud SQL 導⼊時期 SQL Server Oracle

    BMS for Oracle Oracle Database @Google Cloud DB エンジン? 2025年以降 2024年
  26. RDBMS 選択フローチャート 3 44 AlloyDB MySQL PostgreSQL DB エンジン? 旧バージョン

    規模 Cloud SQL Enterprise Cloud SQL Enterprise Plus 旧バージョン 規模 Yes Yes ⼩ ⼩ 中〜⼤ 多重度 低 中〜⾼ 中〜⼤
  27. 51