タグ

ブックマーク / matutak.hatenablog.com (1)

  • ロック エスカレーション=悪ではない(ロック エスカレーションの真実) SQL Server - matu_tak’s blog

    ■ ロック エスカレーションとは 行単位のロック(行レベル ロック)は、同時実行性は高まりますが、大量の行が更新される場合には、ロック数が膨大になってしまいます。したがって、SQL Server の場合は、行単位やページ単位など、小さい粒度のロックが大量に発生し、SQL Server 自身に負荷が高いと認識したときには、必要に応じてロックの粒度を拡大(エスカレート)します。この機能のことを「ロック エスカレーション」(Lock Escalation)と呼んでいます。 例えば、テーブル データが 100万件あり、そのうちの 90万件へ行ロックがかかっているとします。このとき、これらのロックをテーブル単位のロックへエスカレートできるのであれば、ロックは 1つで済むのです。なお、SQL Server の場合にロックがエスカレートされるかどうかは、同時実行されているトランザクションや、利用できるメ

    ロック エスカレーション=悪ではない(ロック エスカレーションの真実) SQL Server - matu_tak’s blog
    noonworks
    noonworks 2017/04/21
    “ロック エスカレーションとは”
  • 1