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を上手に使いましょう。

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編

    View full-size slide

  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解析レイヤー


    View full-size slide

  3. Xinke Qiao / 喬 心軻(キョウ シンカ)
    Technical support engineer
    PingCAP Japan
    What is New in TiDB
    v6.0?!


    View full-size slide

  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


    ・最後に〜


    View full-size slide

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

    View full-size slide

  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 に分けます。


    View full-size slide

  7. 6.0 のリリースについて〜New Feature
    SQLによる管理

    監視

    Observability

    データ同期

    (TiCDC)

    Data Sharing

    メンテナンス

    Maintenance

    パフォーマンス

    Performance

    安定性

    Stability

    トランザクション

    Transaction

    DM

    (データ移行ツー
    ル)


    View full-size slide

  8. 6.0 のリリースについて〜New Feature(1)
    パフォーマンス

    Performance

    SQLによる管理

    データの配置ルール 

    Database 単位での
    TiFlash レプリカ追加 

    ホットスポットの小テー
    ブルをキャッシュ

    インメモリな悲観ロック

    実行計画の共有

    DM

    (データ移行ツール)

    Web UI

    Amazon S3 のサポート 


    View full-size slide

  9. 6.0 のリリースについて〜New Feature(2)
    監視

    Observability

    メンテナンス

    Maintenance

    Clinic 診断サービス 

    Top SQL

    TiEM

    安定性

    Stability

    大量なI/O負荷時、
    TiKVの性能保証

    実行計画の安定性


    View full-size slide

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

    View full-size slide

  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


    View full-size slide

  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;

    View full-size slide

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


    View full-size slide

  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

    );



    View full-size slide

  15. New features〜① SQLによるデータ配置ルールの指定(4)
    [SHOW PLACEMENT;]といった句で作成されたPlacement Policyを確認できます。

    詳細の使用方法はマニュアルをご参照ください。


    View full-size slide

  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などにパラメータの設定手段がそれぞれ 


    View full-size slide

  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 !!! 


    View full-size slide

  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 !!! 


    View full-size slide

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

    「Demo」


    View full-size slide

  20. New features〜③ メンテナンス: Top SQL

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

    Coming Soon on Cloud !!! 


    View full-size slide

  21. New features〜④ メンテナンス: Clinic 診断サービス

    Clinic とは

    ● パラメータの正確性チェックによるTiDB クラスターの
    潜在問題の予測

    ● ログ(metrics、ログ、パラメータ設定値)の一括収集により迅速な
    トラブルシューティング

    On-Premises
    TiDB Cluster 

    Clinic Server
 PingCAP Support | DBA

    Technical Preview


    View full-size slide

  22. New features〜④ メンテナンス: Clinic 診断サービス-ログ収集

    コマンド)

    tiup diag collect 

    tiup diag upload

    Technical Preview


    View full-size slide

  23. New features〜④ メンテナンス: Clinic 診断サービス-パラメータ・チェック

    コマンド)

    tiup diag check 


    結果例)

    Technical Preview


    View full-size slide

  24. New features〜⑤ DMについて

    DM は MySQL 型のデータベースからTiDBデータベースへの全量/増量のデータ同期するためのツールとなります。

    MySQL型

    データベース

    (Amazon Aurora…) 

    DM クラスター

    (EC2 インスタンス...)

    更新

    更新

    データ

    更新

    データ

    (DM 増量データ同期のアーキテクチャ例)


    View full-size slide

  25. New features〜⑤ DM: Amazon S3 のサポート

    6.0 からはソースDBからダンプしたデータをAmazonのS3に保存できるようになりました。

    MySQL型

    データベース

    (Amazon Aurora…) 

    DM クラスター

    (EC2 インスタンス...)

    データ
 データ

    (DM Full 同期アーキテクチャ例)


    View full-size slide

  26. New features〜⑥ DM: WebUI

    ・Dashboard によるパフォーマンスなどの監視

    ・Task の管理

    ・ソースデータベースの設定・変更など

    ・フィルター条件の確認・設定など

    ・DMクラスターメンバーの確認・管理

    コマンド例)

    tiup dmctl --master-addr 172.16.6.5:3308 start-task ./task.yaml 

    Experiment


    View full-size slide

  27. 最後に〜


    View full-size slide

  28. 最後に〜 


    ● SQLによるデータ管理: SQLによるデータ配置ルールの指定


    ● 監視: TiDB Enterprise Manager (TiEM) 


    ・メンテナンス

    ○ Top SQL
    ○ Clinic 診断サービス


    ● DM

    ○ Amazon S3 のサポート

    ○ WebUI


    View full-size slide

  29. ご参考(New Features)--その①

    大項目
 機能
 参照ドキュメント

    SQL

    データ配置ルール
 ドキュメント


    データベース単位でTiFlash レプリカの追加をサポートする
 ドキュメント

    Transaction
 索引整合性のチェック
 ドキュメント


    監視

    Top SQL
 ドキュメント


    Continuous Profilingのサポート
 ドキュメント

    パフォーマンス

    ホットスポットの小テーブルをキャッシュ
 ドキュメント

    インメモリな悲観ロック
 ドキュメント


    Read Committed 分離レベルでTSO
 ドキュメント


    Prepared Statementによる実行計画の共有におけるエンハンスメント
 ドキュメント

    クエリ・プッシュダウンにおける改善
 ドキュメント


    View full-size slide

  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タスクの開始時間の指定
 ドキュメント


    View full-size slide

  31. ご参考(New Features)--その③

    大項目
 機能
 参照ドキュメント

    TiDB Lightning
 許容可能なエラーの最大数を変更可能
 ドキュメント

    データ共有サブスクリプショ
    ン

    100,000 個テーブルの同時同期のサポート
 

    デプロイメントとメンテナンス

    デフォルトで新Collationルールの有効化
 ドキュメント

    TiKVノードの再起動後リーダーのリバランスの加速化
 ドキュメント

    統計情報の自動更新を手動でキャンセル可能
 ドキュメント

    PingCAP Clinic サービス(Technical Preview)
 ドキュメント

    TiDB Enterprise Manager(Enterprise Edition Only)
 こちらからお問合せ

    監視コンポーネントのカスタマイズ
 ドキュメント


    View full-size slide

  32. ご参考--その他の変更点


    ● 互換性

    ドキュメント


    ● Improvements

    ドキュメント


    View full-size slide

  33. Q&A


    Q&A


    View full-size slide

  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編

    View full-size slide

  35. Free Trialのご案内
    TiDB Cloud Free Trialはこちら
    https://tidbcloud.com/signup
    Developer Tierでは
    TiDB Cloudを無償で1年間ご利用頂けます。
    容量制限はありますが、
    本番と同等の機能を提供しているため、
    アプリとの接続試験などが容易に。
    *現在はAWSのみ対応

    View full-size slide

  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 予定数に達し次第終了する可能性があります。


    View full-size slide

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

    View full-size slide

  38. THANK YOU!


    View full-size slide

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


    View full-size slide

  40. 40
    Business A、B
 Business C
 Business D

    shared_nodes
 business_c
 business_d

    配置ルール新しい図 


    View full-size slide

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


    View full-size slide

  42. 42
    Import

    配置ルール(2)新しい図 


    View full-size slide