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

What's New in YugabyteDB 2.18

What's New in YugabyteDB 2.18

2023年5月にリリースされた安定版バージョン2.18の概要として、様々なワークロードへの対応、Kubernetes環境でのスケーラビリティ、セルフマネージドDBaaSの運用向上についてご紹介いたします。
(2023年6月14日におこなわれたYugabyte Japan Meetup#2でのセッションです)

YugabyteDB Japan

June 19, 2023
Tweet

More Decks by YugabyteDB Japan

Other Decks in Technology

Transcript

  1. © 2023 All Rights Reserved What’s New in YugabyteDB 2.18

    Yugabyte Japan Meetup#2 (Jun-14-2023) Tomohiro Ichimura / Yugabyte Japan
  2. © 2023 All Rights Reserved What's New in YugabyteDB 2.18.0

    セルフマネージドのDBaaS 運用を簡略化 マルチ・リージョンで Kubernetesをスケール • マルチリージョンに展開され たk8sで同期レプリケーショ ンを実施* • k8s用のxCluster構成 • k8sへのデプロイを簡略化 • Mirantis サポート • パフォーマンス・アドバイザ • Terraform プロバイダ* • インクリメンタルバックアッ プ、PITR、バックアップの高 速化 様々なワークロードの サポートを拡大 • コロケートテーブル • クエリプッシュダウン • 計画的なフルコンパクション *アーリーアクセスとしての提供となります
  3. © 2023 All Rights Reserved • 従来では複数のタブレットに保存されていた、比較的小さく、 関連性のあるテーブルを単一のタブレットに保存(もしくは共 存) •

    比較的大きいテーブルはスケールアウトアーキテクチャで運 用しつつ、特定のテーブルはコロケーションテーブルとして運 用 • 様々なワークロードに対応しつつ、テーブル大小に対してもパ フォーマンスを最適化 コロケーテッドテーブルによる高速化とクエリ展開の回避 GA in 2.18 機能概要 • 小さいテーブルでのクエリ展開を避けることで、性能を向 上し、ネットワークコストを低減 • データの増加や変化時にも、複雑な移行を必要とせずに テーブルをインテリジェントに調整 • 小さいデータセットが多いが、必要に応じて大きいデータ セット向けの調整が必要なケース 期待される効果やユースケース CREATE DATABASE my_Tbl WITH COLOCATION = 'true'; Tablet 1 Tablet 2 Tablet 3 Tablet 4 orders products categories stores warehouses colocation = “false” colocation = “true”
  4. © 2023 All Rights Reserved • 決まったスケジュールにて、定期的に全てのタブレットの 完全なコンパクションを実行する自動化機能 • 指定された期間(デフォルトは30日)による定期的なスケ

    ジュール管理 • フルタブレットコンパクションにより、T Serverのクラッシュ からの回復、リモートからのブートストラップやタブレット分 割を迅速に実行可能に 計画的なフルコンパクションによる読み込みパフォーマンスの向上 機能概要 • DELETE操作が多いワークロードにおける読み込みパ フォーマンスの最適化(TTLを伴うワークロード) • 利用予定のない削除対象のデータを持つタブレットをスリ ム化することストレージ容量を削減 • GDPRやCCPAのような、定期的なデータ削減を要求され るようなポリシーや規制への対応 期待される効果やユースケース GA in 2.18
  5. © 2023 All Rights Reserved • ストレージレイヤへのプッシュダウンを追加することで、ク エリパフォーマンスを向上 • indexカラムに対するSELECT

    DISTINCTのプッシュダウン • シーケンスにおけるNEXTVALのプッシュダウン • デフォルトでExpressionのプッシュダウンを有効化 クエリプッシュダウンによるPostgreSQL機能の革新 New in 2.18 機能概要 • 実際にデータが配置されているYugabyteDBの分散スト レージレイヤー内で、SQLクエリを処理することによるパ フォーマンスの最適化 • PostgreSQLのクエリレイヤの直下でデータを補足するの で、他の競合製品に比べても高速な処理が可能 期待される効果やユースケース
  6. © 2023 All Rights Reserved • Kubernetes環境におけるYugabyteDBのマルチリージョ ン、ストレッチクラスターのサポート • マルチクラスターサービス(MCS)により、複数リージョンに

    展開されるグローバルなアプリケーションのビルドをサ ポート • YugabyteDB Anywhereインターフェースへの統合による セットアップと管理 マルチリージョンKubernetesでグローバルアプリに回復性を提供 Early Access in 2.18 機能概要 • MCS を使ったKubernetes環境上でのマルチリージョン データベースを簡単にデプロイ • アプリケーションの可用性と回復性が向上 • データの地域性やレイテンシーの課題があるリモート環境 にもワークロード拡大が可能 • クラスタ連携によるアプリケーション開発の簡素化 主な効果とユースケース
  7. © 2023 All Rights Reserved • Kubernetes環境にxClusterレプリケーション機能を拡大 • 使いやすいYugabyteDB Anywhereインタフェースによ

    る、xClusterレプリケーションのデプロイと管理 • 2つのデータセンター構成においてもKubernetesと YugabyteDBによりDR構成が可能に Kubernetes環境でもサイト間レプリケーションを簡単にデプロイ GA in 2.18 機能概要 • リージョン内、あるいはリージョン間のデータ保護に対応 するデプロイメント・オプションの追加 • YugabyteDB Anywhereにも組み込まれ、セルフマネージ ドDBaaSとしての運用が簡素化 主な効果とユースケース Bidirectional Async Replication Apps & Microservices Reads/W rites Reads/W rites
  8. © 2023 All Rights Reserved • YugabyteDB Anywhereは non-root accessをサポート

    • データベースとk8sはclusterとnamespaceを共有 • Namespaceに限定したロールをサポート、特定のk8s namespaceにおいて複数のユニバースを作ることが可能 に • プロバイダ構成における自動補完機能の追加 拡張オプションによるKubernetesへのデプロイの簡素化 GA in 2.18 機能概要 • 本番展開を容易にするYBAから、より簡単に同じk8sクラ スタ内でのユニバースのデプロイメントが可能 • Kubernetesのデプロイメントを妨げる、あるいは複雑さを 増すような作業を削減 • ネームスペースに限定されたロールを利用することでセ キュリティの向上 主な効果とユースケース Kubernetes Namespace = “foo” YugabyteDB Universe 1 YBA DBaaS Control Plane YugabyteDB Universe ‘n’ …
  9. © 2023 All Rights Reserved • Kubernetes環境における再設計されたバックアップと リストア・プロセスが利用可能 • 各k8sポッドにおいて、新たにYugabyteDB

    Controller がコンテナとして稼働 • ControllerはYugabyteDB 2.18にアップグレードするこ とにより自動デプロイされすぐに利用が可能 Kubernetes環境におけるバックアップとリストア作業時間を5倍短縮 GA in 2.18 機能概要 • 従来のリリースと比較して、バックアップとリストアプロ セスが最大5倍に性能向上 • リソースの利用を抑え、バックアップ能力をクラスタのス ケールと同様にスケールすることを可能とし、インクリメ ンタルバックアップも可能に 主な効果とユースケース YugabyteDB 2.18 YugabyteDB 2.16 K8s Backup Time 5x
  10. © 2023 All Rights Reserved • Mirantis Kubernetes Engine (MKE)

    はモダンなスケール するアプリに向けたコンテナ・オーケストレーション・プラッ トフォーム • YugabyteDBはMKE上でのデプロイメントをサポート • YugabyteDBによるシングル/マルチノードクラスタのデプ ロイメントをサポート Mirantis Kubernetes Engineのサポート New in 2.18 機能概要 • YugabyteDBがデプロイされるコンテナオーケストレーショ ンプラットフォームに新たな選択肢を提供 • 複数コンテナのオーケストレーションや、スケールするア プリのデプロイ、マルチテナントでのソフトウェア提供と いった、Mirantisの強みを享受 主な効果とユースケース
  11. © 2023 All Rights Reserved 15 YBAはデータベース管理におけるライフサイクルの自動化を推進 YBAインストール Replicated K8S

    Yugabundle YBA HA クラウド・プロバイ ダ AWS, GCP, Azure K8S On-prem K8S Openshift GKE/EKS/AKS OpenShift/Tanzu オンプレミス Manual Provisioning, Automatic Provisioning 自動化/UX/ サポート サポートバンドル APIs/SDKs オブザーバビリティ Day 0 バックアップ コンフィグ S3 GCS AS NFS/MinIO Multi-region support EAR(Encript at Rest) Config HCV AWS KMS Google KMS Azure KMS EIT(Encrypt in Transit) Self-signed/Custom Node-to-Node Node-to-Client Hashicorp Vault Cert-manager ユーザ管理 AuthN: LDAP,OIDC AuthZ: RBAC クラスタ ライフサイクル管理 Create Edit Upgrade Pause/Resume/Delete DB ライフサイクル管理 Backups/Restore xCluster Query Analysis セキュリティ Certificate Rotation SSH Key Rotation Universe Key rotation Master Key Rotation Day 1 & 2
  12. © 2023 All Rights Reserved • パフォーマンス改善に役立つ分析と推奨を提供する組み 込みのYSQL Performance Advisor

    • スキーマ設計やコネクション、インデックスや、クエリロー ド、CPU利用の偏り、利用率に関するガイダンスを提供 • クエリにおけるパフォーマンス課題となる部分の診断や ホットスポットとなりうるノードの特定 Performance Advisorによるデータベース性能分析と最適化 New in 2.18 機能概要 • アプリケーション性能の向上とクエリ時間の減少により、 顧客体験を向上 • パフォーマンスのトラブルシュートや最適化にかかる時間 と労力の削減 主な効果とユースケース
  13. © 2023 All Rights Reserved • “Terraform Provider for YugabyteDB

    Anywhere” が Terraform レジストリにて利用可能 • Day 1 のプロビジョニングからDay 2オペレーションまで データベースインフラの管理をコード化 • クラスタデプロイメントとオーケストレーションを実行し、ス ケールアップ、スケールダウン、バックアップやリストアと いった管理作業も可能 TerraformによるYugabyteDB Anywhereの一貫したデプロイ 機能概要 • YugabyteDB Anywhereクラスタの自動デプロイが可能とな り、アプリの一貫した管理が可能に • Terraformによる開発生産性が向上 • スケールするクラスタをデプロイする時間を短縮 主な効果とユースケース Early Access in 2.18
  14. © 2023 All Rights Reserved • YugabyteDB AnywhereのGUIを使って Point-in-time-Recovery(PITR)管理が可能 •

    データ保持の期間を指定することで、作成したデータベー スインスタンスのどれにもPITRが可能に • リストはデータの移動を必要とせず、ポインタのリダイレク ションやフィルタリングを利用 YugabyteDB AnywhereでPoint-in-time-Recovery(PITR)を簡単に実現 機能概要 • 数時間/数分ではなく、数秒程度で運用上あるいはソフト ウェアエラーから安心かつ細かいリカバリが可能 • YugabyteDB Anywhere or REST APIといったUIによるシ ンプルな管理が可能 主な効果とユースケース GA in 2.18
  15. © 2023 All Rights Reserved • 最も直近のバックアップからのデルタのみを送信(フルもし くはインクリメンタル) • YugabyteDB

    Anywhereを利用して、フルあるいはインク リメンタルバックアップのスケジュールを管理 • YugabyteDB Controllerにて実装 ファイルレベルのインクリメンタルバックアップで20倍以上の効率化 機能概要 • 夜間のみではなく、毎時バックアップが可能となり、20倍 以上の効率化が図られ、RPOの削減が可能に • フルバックアップと比較してアプリケーションへの影響を低 減 • ネットワーク帯域の要件を引き下げが可能 • より少ないディスク要件でストレージコストを削減 • YugabyteDB Anywhere による運用の簡素化 主な効果とユースケース YugabyteDB 2.18 Previous Databases Backup Schedule GA in 2.18 Full Backup Full Backup Nightly Backups
  16. © 2023 All Rights Reserved YugabyteDB Anywhere - 2.18での主な機能改善 •

    xClusterのブートストラップ対応 • Node Agentによるpre-flight チェック • YBA installer • ProviderのViewと変更 • インクリメンタル・バックアップ • マスターノードの指定 • Performance Advisor • YBA Terraform Provider (EA) • API クライアントログイン • UIの改善 • ユニバースのアタッチ / デタッチ (Tech Preview) PoCをより簡単に スケールが求められる機能 運用レベルの向上 • マスタキーのローテーション • ARM Graviton サポート • カスタム可能なアラート通知 本番展開をより迅速に • 同じnamespaceでの複数ユニ バース作成 • ホームクラスタへのデプロイ • Non-root ユーザと、ディスクの リサイズ • フルバックアップとリストア • Multi-cluster K8S (via OCP MCS, GKE MCS) クラウドネイティブ - K8s • Nginxの削除 • YBAランタイム構成 • タスクのリトライ機能 • サポートバンドルの機能拡張 • K8Sコアファイル管理 より安心したサポート
  17. © 2023 All Rights Reserved 2.18.0 補足: CDC “プレビュー” 拡張

    (CDC機能はGAとしてリリースされておりませんが、サポートされて おります。)
  18. © 2023 All Rights Reserved • ダウンストリームへ複製する前に、フィルタとトランス フォームをソースからキャプチャしたデータに実行 • KafkaコネクトSMTを使って、データのマスキング、リニ

    エージ(遍歴)の保存、不要なカラムの削除とイベントルー ティングを実行 • YugabyteDBからKafkaへのデータ圧縮 (gzip, zstd,snappy をサポート) CDC TransformationsとFiltersを用いてストリーミングコストを低減 Preview in 2.18 機能概要 • より良いデータ品質、パフォーマンスと柔軟性をデータスト リーミングのカスタマイズと管理が可能 • ストリーミングとデータエクスポート(egress)のコストを削減 • 性能向上と管理タスクの削減により、リソースを効果的に 利用 主な効果とユースケース
  19. © 2023 All Rights Reserved • SASL/GSSAPI (Kerberos 認証) とSASL/OAUTHBEARER

    を用いた認証により、セキュアなApache Kafkaクラスタを 構成 • RBAC, ACLs, グループベースのLDAPによるKafka認証 のサポート • YugabyteDBからKafkaへのセキュアなデータ転送 (TLS1.2) Kafka認証とセキュリティでデータストリーミングのセキュリティ向上 機能概要 • セキュリティと認証が必要となるエンタープライズやミッ ションクリティカル環境でのデプロイ • ストリームデータへの未認証によるアクセスを防御 • Kafkaと分散SQLデータベースの強固な組み合わせによ るモダンなストリームシステムの提供 主な効果とユースケース Kafka Broker Authentication Data Client is Authenticated YugabyteDB Verify Authentication Preview in 2.18
  20. © 2023 All Rights Reserved • Debezium 機能であるコンテンツに応じたメッセージルー トの選択をサポート •

    YugabyteDBテーブルからのCDCイベントを再ルート、イ ベントコンテントに応じて異なるKafkaトピックへ転送 • 必要となる二つの機能: Debezium routing SMT (Single Message Transform) と Groovy JSR223 Content-Basedルーティングによる正確なメッセージのルーティング 機能概要 • メッセージルーティングを正確にコントロールし、より効率 的なデータを分析 • 適切なシステムとアプリケーションへ簡単に、効率的な データ管理とルート管理が可能 • GDPR規制などの地域に特性されたデータ管理のユース ケースに対応 主な効果とユースケース Configure content-based router: Preview in 2.18
  21. © 2023 All Rights Reserved • インテグレーションと認定パートナーの拡大 ◦ AWS Managed

    Streaming for Kafka (MSK) ◦ Azure Event Hub ◦ Confluent Platform and Cloud ◦ Redpanda エコシステムの拡大によるKafkaプラットフォームの活用 機能概要 • これまでに培った社内のスキルと既存のKafka環境により 迅速なサービス展開が可能 • ストリーミングプラットフォームとその環境に優れた選択肢 が提供され、厳選されたサービスの活用が可能 • オンラインチュートリアルやドキュメントによるデプロイメン トの簡素化 主な効果とユースケース Preview in 2.18 Example Architectures