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

【NewSQL】What is New in TiDB 6.0?!

【NewSQL】What is New in TiDB 6.0?!

次世代NewSQLデータベースとして知られている、分散型データベースTiDB 6.0がついにリリースされました!

本スライドでは、TiDB 6.0に導入された最新機能について紹介します。TiDBを使う観点からユーザー様向けの実践的な機能やトピックを厳選して解説します。一緒にTiDB 6.0を上手に使いましょう。

62fc38bee93c1102c9cb7df9254bf1c4?s=128

PingCAP-Japan

May 20, 2022
Tweet

More Decks by PingCAP-Japan

Other Decks in Technology

Transcript

  1. 今後のセミナー予定 https://pingcap.co.jp/event/ 2022年4月14日(木) 14:00-15:30 TiDB ソフトウェアの紹介・デモ 2022年4月21日(木) 14:00-15:00 アプリケーション開発観点からのTiDB -

    Ruby編 2022年5月12日(木) 14:00-15:30 TiDB Cloudの紹介・デモ 2022年5月19日(木) 14:00-15:00 最新TiDB 6.0のポイント 2022年5月26日(木) 14:00-15:00 アプリケーション開発観点からのTiDB - Java編 2022年6月9日(木) 14:00-15:30 TiDB ソフトウェアの紹介・デモ 2022年6月16日(木) 14:00-15:00 PingCAP Education:TiKV- RocksDBについて 2022年6月23日(木) 14:00-15:00 アプリケーション開発観点からのTiDB - PHP編
  2. MySQL互換の分散データベース(NewSQL)。メジャーリリースは年1ペース
 TiDB TiDB TiDB Application via MySQL Protocol TiKV TiKV

    TiFlash TiKV TiKV ... DistSQL API
 KV API
 ... Worker Worker Worker Spark Driver ... Spark SQL Spark Cluster
 DistSQL API
 PD PD PD PD Cluster Pump Pump Pump Drainer ... TiDB Binlog/CDC DM Worker DM Worker DM Master Upstream Database Downstream Database dumpling Lightning KV Importer KV Dumper TiDB dashboard TiDB Operator Chaos Mesh TiFlash データエクスポート機能 データインポート機能
 バックアップ・リカバリー機能
 診断・モニタリング
 はじめに:TiDBとは
 データストアレイヤー
 SQL解析レイヤー

  3. Xinke Qiao / 喬 心軻(キョウ シンカ) Technical support engineer PingCAP Japan

    What is New in TiDB v6.0?!

  4. アジェンダ ・v6.0のリリースにあたって
 ➔ DMR&LTS
 ➔ New Features
 
 ・最新機能ピックアップ
 1.

    SQLによるデータ管理: SQLによるデータ配置ルールの指定
 2. 監視: TiDB Enterprise Manager (TiEM) 
 3. メンテナンス: Top SQL
 4. メンテナンス: Clinic 診断サービス 5. DM: Amazon S3 のサポート
 6. DM: WebUI
 
 ・最後に〜

  5. v6.0 のリリースにあたって

  6. DMR&LTS Release strategy
 DMR
 (Development Milestone Releases)
 LTS
 (Long-Term Support

    Releases)
 リリース頻度
 約2ヶ月1回程度
 約6ヶ月一回程度
 New Feature&Improvementが含まれる
 ◯
 ◯
 当該バージョンで発生した問題はパッチ(例え ば、6.0.1) としてリリースされるか 
 ✖(LTS にて修正される)
 ◯
 本番環境の使用可能か
 △(お勧めしない)
 ◯
 バージョン
 6.0.0としてリリースされた
 6月9日に6.1.0としてリリースさ れる
 TiDB 6.0 からは2つのリリースバージョン DMR と LTS に分けます。

  7. 6.0 のリリースについて〜New Feature SQLによる管理
 監視
 Observability
 データ同期
 (TiCDC)
 Data Sharing


    メンテナンス
 Maintenance
 パフォーマンス
 Performance
 安定性
 Stability
 トランザクション
 Transaction
 DM
 (データ移行ツー ル)

  8. 6.0 のリリースについて〜New Feature(1) パフォーマンス
 Performance
 SQLによる管理
 データの配置ルール 
 Database 単位での

    TiFlash レプリカ追加 
 ホットスポットの小テー ブルをキャッシュ
 インメモリな悲観ロック
 実行計画の共有
 DM
 (データ移行ツール)
 Web UI
 Amazon S3 のサポート 

  9. 6.0 のリリースについて〜New Feature(2) 監視
 Observability
 メンテナンス
 Maintenance
 Clinic 診断サービス 


    Top SQL
 TiEM
 安定性
 Stability
 大量なI/O負荷時、 TiKVの性能保証
 実行計画の安定性

  10. 最新機能ピックアップ

  11. New features〜① SQLによるデータ配置ルールの指定(1) • 機能紹介
 パーティション/テーブル/データベースに Placement Policy を指定することで、データの配置場所を指定する機能となります。 


    
 store_id
 product
 stock…
 1
 beer
 10
 …
 …
 …
 Store_TYO
 store_id
 product
 stock…
 101
 beer
 0
 
 
 
 Store_OSA
 TYO
 OSA
 TYO
 OSA

  12. New features〜① SQLによるデータ配置ルールの指定(2) • リソースの分離
 
 SQL例)
 1. PLACEMENT POLICY

    を作成する 
 CREATE PLACEMENT POLICY 'shared_nodes' CONSTRAINTS = "[+region=shared_nodes]"; 
 CREATE PLACEMENT POLICY 'business_c' CONSTRAINTS = "[+region=business_c]"; 
 CREATE PLACEMENT POLICY 'business_d' CONSTRAINTS = "[+region=business_d]"; 
 
 
 2.PLACEMENT POLICYを指定する 
 ALTER DATABASE a POLICY=shared_nodes; 
 ALTER DATABASE b POLICY=shared_nodes; 
 ALTER DATABASE c POLICY=business_c; 
 ALTER DATABASE d POLICY=business_d; 

  13. New features〜① SQLによるデータ配置ルールの指定(3) • 大規模テーブルを特定のTiKVノードへインポートによる他業務の性能影響を抑える
 


  14. New features〜① SQLによるデータ配置ルールの指定(3) • ホットデータとコールドデータを別々のディスクに格納
 SQL例)
 CREATE PLACEMENT POLICY storeonhdd

    CONSTRAINTS="[+disk=hdd]"; 
 CREATE PLACEMENT POLICY storeonssd CONSTRAINTS="[+disk=ssd]"; 
 CREATE TABLE quarterly_report_status ( 
 report_id INT NOT NULL, 
 report_status VARCHAR(20) NOT NULL, 
 report_updated TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP 
 )
 
 PARTITION BY RANGE ( UNIX_TIMESTAMP(report_updated) ) ( 
 PARTITION p0 VALUES LESS THAN ( UNIX_TIMESTAMP('2022-01-01 00:00:00') ) PLACEMENT POLICY= storeonhdd,
 PARTITION p1 VALUES LESS THAN (MAXVALUE) PLACEMENT POLICY= storeonssd
 );
 
 

  15. New features〜① SQLによるデータ配置ルールの指定(4) [SHOW PLACEMENT;]といった句で作成されたPlacement Policyを確認できます。
 詳細の使用方法はマニュアルをご参照ください。


  16. New features〜② 監視: TiDB Enterprise Manager (TiEM) 
 大規模な分散型のDBで遭遇した課題
 APP

    Layer
 APP Layer
 APP Layer
 LB
 LB
 LB
 Client
 Client
 Client
 Data Center 1
 Data Center 2
 Data Center 3
 • TiDBやTiKVなどのコンポーネントが多い 
 • ノード数が多い
 • クラスター数が多い 
 • パラメータの数が多い 
 • tiup や SQLなどにパラメータの設定手段がそれぞれ 

  17. New features〜② 監視:TiDB Enterprise Manager (TiEM) 
 「メイン機能」
 1) クラスターの全ライフサイクル管理


    a) 複数のクラスターを一括に管理
 b) OneClickでクラスターの作成、scale-out/scale-inなどの実現
 
 2) OneClickでクラスターの複製の実現
 データ、パラメータを完全一致
 
 3) Primary-Standby 構成の Switchover の実行
 データロス:0
 Enterprise Edition Only 
 Coming Soon on Cloud !!! 

  18. New features〜② 監視: TiDB Enterprise Manager (TiEM) 
 「メイン機能」②
 4)

    In-Place アップグレードの実行
 
 5) パラメータ管理
 a) システムパラメータ、Configuration file パラメータなどパラメータの一括管理
 b) パラメータのデフォルト値や設定可能な範囲の確認
 c) 定期的なヘルスチェックによりパラメータ値の正確性をチェックする
 
 6)DBAに関する操作ログの記録
 例えば、操作履歴から誤操作などの確認
 Enterprise Edition Only 
 Coming Soon on Cloud !!! 

  19. New features〜② 監視:TiDB Enterprise Manager (TiEM) 
 「Demo」


  20. New features〜③ メンテナンス: Top SQL 
 6.0 から提供するTop SQLはTiDB初心者でも活用できるように設計しているパフォーマンスを監視するツールとなります。 


    Coming Soon on Cloud !!! 

  21. New features〜④ メンテナンス: Clinic 診断サービス 
 Clinic とは
 • パラメータの正確性チェックによるTiDB

    クラスターの 潜在問題の予測
 • ログ(metrics、ログ、パラメータ設定値)の一括収集により迅速な トラブルシューティング
 On-Premises TiDB Cluster 
 Clinic Server
 PingCAP Support | DBA
 Technical Preview

  22. New features〜④ メンテナンス: Clinic 診断サービス-ログ収集 
 コマンド)
 tiup diag collect

    <cluster_name>
 tiup diag upload
 Technical Preview

  23. New features〜④ メンテナンス: Clinic 診断サービス-パラメータ・チェック 
 コマンド)
 tiup diag check

    <diag_folder名>
 
 結果例)
 Technical Preview

  24. New features〜⑤ DMについて 
 DM は MySQL 型のデータベースからTiDBデータベースへの全量/増量のデータ同期するためのツールとなります。 
 MySQL型


    データベース
 (Amazon Aurora…) 
 DM クラスター
 (EC2 インスタンス...)
 更新
 更新
 データ
 更新
 データ
 (DM 増量データ同期のアーキテクチャ例)

  25. New features〜⑤ DM: Amazon S3 のサポート 
 6.0 からはソースDBからダンプしたデータをAmazonのS3に保存できるようになりました。 


    MySQL型
 データベース
 (Amazon Aurora…) 
 DM クラスター
 (EC2 インスタンス...)
 データ
 データ
 (DM Full 同期アーキテクチャ例)

  26. New features〜⑥ DM: WebUI 
 ・Dashboard によるパフォーマンスなどの監視 
 ・Task の管理


    ・ソースデータベースの設定・変更など 
 ・フィルター条件の確認・設定など 
 ・DMクラスターメンバーの確認・管理 
 コマンド例)
 tiup dmctl --master-addr 172.16.6.5:3308 start-task ./task.yaml 
 Experiment

  27. 最後に〜


  28. 最後に〜 
 
 • SQLによるデータ管理: SQLによるデータ配置ルールの指定
 
 • 監視: TiDB

    Enterprise Manager (TiEM) 
 
 ・メンテナンス
 ◦ Top SQL ◦ Clinic 診断サービス
 
 • DM
 ◦ Amazon S3 のサポート
 ◦ WebUI

  29. ご参考(New Features)--その①
 大項目
 機能
 参照ドキュメント
 SQL
 データ配置ルール
 ドキュメント
 
 データベース単位でTiFlash

    レプリカの追加をサポートする
 ドキュメント
 Transaction
 索引整合性のチェック
 ドキュメント
 
 監視
 Top SQL
 ドキュメント
 
 Continuous Profilingのサポート
 ドキュメント
 パフォーマンス
 ホットスポットの小テーブルをキャッシュ
 ドキュメント
 インメモリな悲観ロック
 ドキュメント
 
 Read Committed 分離レベルでTSO
 ドキュメント
 
 Prepared Statementによる実行計画の共有におけるエンハンスメント
 ドキュメント
 クエリ・プッシュダウンにおける改善
 ドキュメント

  30. ご参考(New Features)--その②
 大項目
 機能
 参照ドキュメント
 パフォーマンス
 TiFlash MPPエンジンのパーティション表におけるダイナミック・プルーニング・ モードのサポート(Experimental)
 ドキュメント


    TiFlash MPP エンジンの計算性能の向上
 --MPP エンジンへより多くの関数及び演算子のプッシュダウンのサポート
 ドキュメント
 TiFlash MPP エンジンの計算性能の向上
 --弾性なスレッド・プール
 ドキュメント
 安定性
 自動実行計画キャプチャーのエンハンスメント
 ドキュメント
 TiKV リソース・クォータ制限(Experimental)
 ドキュメント
 TiFlash にてestd 圧縮アルゴリズムのサポート
 ドキュメント
 TiFlash にてI/O checksumのサポート
 ドキュメント
 TiFlash にてスレッド使用の改善
 ドキュメント
 DM(Data Migration)
 Web UIの追加(Experimental)
 ドキュメント
 Full 同期でのAmazon S3のサポート
 ドキュメント
 DMタスクの開始時間の指定
 ドキュメント

  31. ご参考(New Features)--その③
 大項目
 機能
 参照ドキュメント
 TiDB Lightning
 許容可能なエラーの最大数を変更可能
 ドキュメント
 データ共有サブスクリプショ

    ン
 100,000 個テーブルの同時同期のサポート
 
 デプロイメントとメンテナンス
 デフォルトで新Collationルールの有効化
 ドキュメント
 TiKVノードの再起動後リーダーのリバランスの加速化
 ドキュメント
 統計情報の自動更新を手動でキャンセル可能
 ドキュメント
 PingCAP Clinic サービス(Technical Preview)
 ドキュメント
 TiDB Enterprise Manager(Enterprise Edition Only)
 こちらからお問合せ
 監視コンポーネントのカスタマイズ
 ドキュメント

  32. ご参考--その他の変更点
 
 • 互換性
 ドキュメント
 
 • Improvements
 ドキュメント
 


  33. Q&A
 
 Q&A


  34. 今後のセミナー予定 https://pingcap.co.jp/event/ 2022年4月14日(木) 14:00-15:30 TiDB ソフトウェアの紹介・デモ 2022年4月21日(木) 14:00-15:00 アプリケーション開発観点からのTiDB -

    Ruby編 2022年5月12日(木) 14:00-15:30 TiDB Cloudの紹介・デモ 2022年5月19日(木) 14:00-15:00 最新TiDB 6.0のポイント 2022年5月26日(木) 14:00-15:00 アプリケーション開発観点からのTiDB - Java編 2022年6月9日(木) 14:00-15:30 TiDB ソフトウェアの紹介・デモ 2022年6月16日(木) 14:00-15:00 PingCAP Education:TiKV- RocksDBについて 2022年6月23日(木) 14:00-15:00 アプリケーション開発観点からのTiDB - PHP編
  35. Free Trialのご案内 TiDB Cloud Free Trialはこちら https://tidbcloud.com/signup Developer Tierでは TiDB

    Cloudを無償で1年間ご利用頂けます。 容量制限はありますが、 本番と同等の機能を提供しているため、 アプリとの接続試験などが容易に。 *現在はAWSのみ対応
  36. クラウドアプリのスタートをご支援!
 TiDB Cloud 1年無料キャンペーン
 日本進出から1周年を記念し、TiDB Cloudをご利用いただいたことがないお客様を対象にTiDB Cloud1 年間相当の値引きキャンペーンを実施します。
 キャンペーン期間 2022年5月18日~2023年3月31日 申込み分まで

    キャンペーン内容 最大700万円相当(TiDB Cloud典型構成で1年分相当)の値引きを提供します。 対象・適用条件 下記条件をみたすお客様 ※1(最大10社※2)  - TiDB Cloudを使用したことがないお客様  - 事例・プロモーションにご協力いただけるお客様  - 設立から1年以上経過しているお客様 適用方法 フォームにご入力の上、キャンペーンにお申し込みください。審査結果およびキャンペーン の詳細について担当者より連絡いたします。 URL https://pingcap.co.jp/start-dash-202205/ ※1 別途所定の審査あり
 ※2 予定数に達し次第終了する可能性があります。

  37. お問い合わせ先 お問い合わせ先 pingcapjp@pingcap.com 製品に関する問い合わせ以外にも ハンズオンや製品デモはじめ、 勉強会などの実施も可能です。 気兼ねなくご相談、ご連絡ください。 *右の画像はCyberAgent様向けに実施したハンズオンの様子 https://developers.cyberagent.co.jp/blog/archives/33416/

  38. THANK YOU!


  39. 配置ルール(1)元図 


  40. 40 Business A、B
 Business C
 Business D
 shared_nodes
 business_c
 business_d


    配置ルール新しい図 

  41. 41 配置ルール(2)元図 


  42. 42 Import
 配置ルール(2)新しい図