YugabyteDBの概要とユースケースのご紹介
2023-10-26
SRA OSS LLC
彭 博 (ペン ボ)© 2023 SRA OSS LLC

1

自己紹介
ペン ボ

• 名前： 彭 博 (Bo Peng)
pengbo@sraoss.co.jp• 所属：SRA OSS LLC
技術部 基盤技術グループ• 職務：• OSS技術サポート、ミドルウェア構築• クラスタリングソフトウェア：Pacemaker/Corosync• 監視ソフトウェア：Zabbix• Kubernetes• YugabyteDB• など• OSS活動© 2023 SRA OSS LLC

2

概要• YugabyteDBの特長、アーキテクチャ• YugabyteDBを利用するメリット• YugabyteDBのユースケース• 類似ソリューションの使い分けのポイント© 2023 SRA OSS LLC

3

YugabyteDBの特長
性能と一貫性のトレードオフを排除した
スケールアウト可能なトランザクション型分散SQLデータベース、
PostgreSQL/Cassandra互換のNewSQLデータベース
モノリシック RDBMSNoSQLNewSQL(YugabyteDB)

高可用性
水平方向拡張性ACIDトランザクション
SQL

SQL対応

© 2023 SRA OSS LLC

4

YugabyteDBのコア機能
PostgreSQL互換
Cassandra互換
RDBMSのPostgreSQLおよびNoSQLのCassandraと高い互換性を持っている

水平方向の拡張性
アクセス負荷の増減に応じて、ノードを追加/削除するだけで、簡単にスケールアウト/インできる

ACID
トランザクション
ACIDトランザクションをサポートしており、強力なデータ一貫性を担保できる

地理分散
地理的に分散した環境でデータベースをデプロイすることで、低レイテンシ、回復力およびコンプライアンスを実現できる

高可用性
ノード、ゾーン、 リージョン、
データセンター障害時やシステ
ムメンテナンス実行時でも処理を中断することなく事業継続を実現できる

フルマネージド
サービスの提供
管理コンソールで数回クリックするだけで指定したクラウド上にデータベースクラスタを迅速に構築できる。より俊敏性を高め、TCO削減を実現できる。

あらゆる環境で利用可能(マルチクラウド、ハイブリッドクラウドにも対応)
on-premise© 2023 SRA OSS LLC

5

YugabyteDBの製品ラインナップ
コミュニティ版

YugabyteDB Anywhere

YugabyteDB Managed

概要

コアとなる基本的な機能

コア機能に加え、構築やDay2運用の自動化機能が追加されている・GUI管理コンソール
・バックアップの自動化
・モニタリング・アラート

フルマネージドサービス
・GUI管理コンソール
・バックアップの自動化
・モニタリング・アラート
・自動アップグレード

稼働環境

任意の環境
(オンプレミス、クラウド、Kubernetesなど)

任意の環境(オンプレミス、クラウド、Kubernetesなど)

AWS、GCP、Azure

費用

無償

vCPUコアベースの年間サブスクリプション

使用量課金

サポート

コミュニティサポート

24x365エンタープライズサポート

24x365エンタープライズサポート© 2023 SRA OSS LLC

6

従来のRDBMSとの違い
YugabyteDBの場合更新処理はスケールアウトできない

どのノードでも更新・参照可能

APP

APPプライマリ

レプリカ

更新・参照

参照

従来のRDBMSの場合レプリカレプリケーション© 2023 SRA OSS LLC

7

YugabyteDBのアーキテクチャ
クエリレイヤ•リクエストを受け付ける•
どのノードのストレージレイヤにも接続できるストレージレイヤ•
Tabletと呼ばれるシャーディング単位で分割•
各tablet peerは1つのleaderと複数のfollowerから構成される•
tablet単位でレプリケーション•
同一tablet peerの中でRaft合意形成が行われる
クエリレイヤクエリレイヤクエリレイヤストレージレイヤ

ストレージレイヤ

ストレージレイヤ

APP
更新・参照

どのノードでも更新・参照可能

分散アーキテクチャ

follower

leaderレプリケーション

follower

レプリケーション

leaderfollowerfollowerfollowerfollower

leader

Node #1

Node #2

Node #3© 2023 SRA OSS LLC

tabletpeer

8YugabyteDBを使うメリット①
一貫性と拡張性の両立
性能と一貫性のトレードオフをなくして、「一貫性」、「拡張性」、「高可用性」を兼ね備えたクラウドネイティブなデータベース••••

SQLを使って複雑な集計や検索が可能
厳密なデータの一貫性を保証
水平方向拡張性や可用性に優れている
必要に応じて自由に拡張し、トラフィックの増加に対応© 2023 SRA OSS LLC

9

YugabyteDBを使うメリット②
読み取り・書き込み負荷分散による性能向上
YugabyteDBの場合

APP
参照

どのノードでも更新・参照可能

プライマリ

レプリカ

APP
更新・参照

従来のRDBMSの場合

自由に拡張可能レプリカ

レプリケーション•••

更新処理はスケールアウトできない
大規模データになると、処理性能が落ちてしまう
大規模データの書き込み処理性能が求められるア
プリケーションには適していない••© 2023 SRA OSS LLC

更新、参照ともにスケールアウト可能
膨大なデータの処理、今後もデータ量の増加が予想されるようなアプリケーションに適している10

YugabyteDBを使うメリット③
高可用性• 高可用性機能がビルトインされている• ユーザにノード障害を意識させることなく運用続行可能• 更新・参照処理は透過的にリトライされる• 障害時データ損失なし• ダウンタイムなしで• スケールアウト/スケールイン• バージョンアップなどのメンテナンス© 2023 SRA OSS LLC

APP

ノード障害が発生しても、残りのノードでサービスを継続

11障害時の挙動Leaderタブレット障害時の挙動• 3秒以内に新しいリーダーを選出• 更新・参照処理は透過的に新しいリーダーに継続

followerfollower

leaderfollower

leaderfollower

leaderfollower

3秒以内に、followerからleaderに昇格

followerfollower
leaderfollowerfollowerfollower

leaderleaderleaderfollowerfollowerfollowerfollowerfollowerfollowerfollowerfollowerfollower

leaderfollowerfollowerfollowerfollower

leaderfollowerfollowerfollowerfollowerfollower

leaderfollowerfollowerfollowerfollower

leadernode #1

node #2

node #3

node #4

node #5

node #1

node #2

node #3

node #4

node #5(RF=3の場合)
3つのtabletを維持するために、別のノードにtabletを複製© 2023 SRA OSS LLC

12

YugabyteDBを使うメリット④
様々なデプロイメントパターン
AZレベルからクラウドサービスレベルまでの耐障害性

zone aregion azone czone b

region b

region c

マルチAZ

マルチリージョン

マルチクラウド

AZレベルの耐障害性

リージョンレベルの耐障害性

クラウドレベルの耐障害性© 2023 SRA OSS LLC

13

YugabyteDBを使うメリット⑤
企業競争力を高める俊敏性• 可用性、拡張性がビルトインされており、迅速にデータベースクラスタを構築でき、リリースサイクルを短縮• GUI管理コンソールから、数回クリックするだけで簡単にデータベースクラスタを構築できる• より俊敏性を高め、TCO削減を実現できる© 2023 SRA OSS LLC

14

YugabyteDBユースケース①
強力な一貫性に加えてゼロダウンタイムの高可用性と高い同時実行性が求められるアプリ
ケーション• ミッションクリティカルなシステム••••

金融システム
決済システムECサイト
基幹系業務システムなど• 強力な一貫性• ダウンタイムのない、24時間365日の安定稼働• 計画停止時にも、ダウンタイムなくサービス継続© 2023 SRA OSS LLC

YugabyteDBユースケース②

ビジネスの成長とともに自由にスケーリングしたい• RDBMSは処理データが大規模になると、性能が低下する• 一方、YugabyteDBはスケールアウトすることで負荷分散可能なので、大規模で同時書き込みが多いシステムではRDBMSより高い性能を実現できる• 1台のサーバではさばけないほど膨大なデータを扱い、今後もデータ量の増加が予想される
ようなアプリケーションに適している© 2023 SRA OSS LLC

YugabyteDBユースケース③
季節的なアクセス急増、あるいは今後のアクセス急増が予想される• ECサイト、オンラインゲームのプラットフォームなど• 例えば、キャンペーンやタイムセールなど一次的なアクセス急増が予測される場合、事前にスケールアウトしておくことで、アクセス集中による影響を防げる© 2023 SRA OSS LLC

YugabyteDBユースケース④
シンプルな構成で高可用性や災害対策、スケーラビリティを実現したい、運用を楽にしたい• YugabyteDBには高可用性と自動シャーディング機能がビルトインされており、シンプルな構成でスケーラビリティや継続的な可用性を実現可能• マルチAZ、マルチリージョン、マルチクラウド、ハイブリッドクラウドなど、構成パターンが多様で、可用性要件に応じて柔軟に構成パターンを選択できる• データセンター、リージョン、クラウドサービスまで、あらゆる規模の障害や災害に対してダウンタイムなしで回復できる

あらゆる環境で利用可能(マルチクラウド、ハイブリッドクラウドにも対応)
on-premise© 2023 SRA OSS LLC

YugabyteDBユースケース⑤idRegion

1

USidRegion

4

US

3

France5FranceidRegion

2

India

idRegion

1

US2

India

3

France4US5France…

グローバルにサービスを展開したい、データ規制に対応したい• このようなユースケースには地理的パーティショニングが最適なソリューション
• グローバルに広がった複数の拠点にまたがってYugabyteDBをデプロイし、利用ユーザの近いところにデータを配置することで、よりレイテンシーを抑える• 個人情報などの機密情報を特定の地域のデータセンターに保管することで、データの地理的な配置場所を制御できる© 2023 SRA OSS LLC

YugabyteDBユースケース⑥
データベースのモダナイズをしたい• 従来のモノリシックなデータベースの課題を解決• スケーラビリティ• 柔軟性• 高可用性• システムのKubernetes移行© 2023 SRA OSS LLC

20

類似ソリューションの使い分け
YugabyteDB

Amazon Aurora

PostgreSQL HA(Pgpool-II)

PostgreSQL HA(Pacemaker)

オープンソース

✔

✘

✔

✔

マネージドサービス

✔

✔

✘

✘

ゼロダウンタイム✔

✘✘✘

参照負荷分散✔

✔

✔

✘更新負荷分散

✔

✘

✘

✘

地理分散

✔

✘

✘

✘

インフラ構築・運用の手間を減らしたい、マネージドサービスを利用したい小規模で安定運用しており、十数秒～数分程度のダウンタイムがあったとしても許容される•••

極めてダウンタイムをなくしたい
PostgreSQLではさばけないほどの書き込み量に対応したい
地理分散実現したい© 2023 SRA OSS LLC

21

ご清聴ありがとうございました。

製品・サービスに関するお問い合わせ:sales@sraoss.co.jp© 2023 SRA OSS LLC

03-5979-2701
22