本文へ移動
インタラクティブ SaaS SQL ラボ

データベースの信頼性 · 中級者

データベースのロック待機とデッドロックのランク付け

最も長い待機とデッドロックを引き起こすトランザクション ファミリはどれですか?

ブロックされた操作によってロック イベントを集約し、最も破壊的な競合を優先します。

レビュー者 Telemetry 製品チーム に . 読み取り専用SQL、テーブル結合、サンプル結果とグラフ、結果の意味を確認しました. このページのレビュー担当

1 つのバージョン管理されたものに対して実行します 15-テーブル データセット

ブラウザーでローカルにクエリを編集して実行し、DuckDB の同じ合成スキーマと行をダウンロードします。

データベースの信頼性中級者

データベースのロック待機とデッドロックのランク付け

最も長い待機とデッドロックを引き起こすトランザクション ファミリはどれですか?

ブロックされた操作によってロック イベントを集約し、最も破壊的な競合を優先します。

データセットとクエリはこのブラウザーに残ります。

期待される結果

操作ごとの最長ロック待機時間

blocked_operationwait_eventsmax_wait_msdeadlocks
ledger_rollup26,2001
payment_update34,2001
account_update14000

クエリの読み方

  • ブロックされた操作は、競合によって遅延したユーザー向けの作業を特定します。
  • 最大待機により、平均では隠れる可能性のある深刻なテール動作が明らかになります。
  • デッドロック数は、順序付けまたはスコープの変更が必要なトランザクション ペアを識別します。

結果の読み取り方

  1. 1デッドロックのある操作ファミリーのトランザクション順序を検査します。
  2. 2待ち時間が長くても最終的には解決される場合は、トランザクションの範囲またはバッチ サイズを減らします。
  3. 3アラートのブロック操作フィールドを保持して、応答者がどこから始めればよいかを認識できるようにします。

関連レッスン

結果を保存する

独自のイベントに対してこのクエリを実行します

クエリを保存し、実際のイベントに接続し、結果を監視する準備ができた場合にのみ、無料のワークスペースを作成します。クレジットカードは必要ありません。

自分のイベントと一緒に保存する