タグ

2018年12月17日のブックマーク (2件)

  • 第2回 トランザクションを知ればデータベースがわかる―「データ復旧」「同時実行制御」を行う“不完全な”しくみ(3) | gihyo.jp

    ロックのコスト:スラッシングとデッドロック スラッシング DBMSがロックを行うとき、具体的にはロックの取得と解放という2つの動作をしています。そして、ロックが取得されている資源にほかのトランザクションがアクセスをかけてきたら、共有ロック同士でない限り「ブロック」を行います。あとから来たトランザクションをロック解放まで待たせるわけです。よく駅や空港のトイレで行列ができるのを見かけますが、あれなどまさにブロックされたトランザクション群の典型です[5]⁠。トイレの便座を共有ロックで、というわけにはいきませんね。 このしくみから必然的に導かれる結果は、並行トランザクション数が一定数を超えると、1つのトランザクションが待機させられる頻度と時間が増え、平均のパフォーマンスが悪くなるということです。システムの特性(更新が多いのか、検索が多いのか)やハードウェア性能にも左右されるため、一般的な閾値(いき

    第2回 トランザクションを知ればデータベースがわかる―「データ復旧」「同時実行制御」を行う“不完全な”しくみ(3) | gihyo.jp
  • 2層ロッキングプロトコル | 応用情報技術者試験に受からなかったらクビ。

    応用情報技術者試験に受からなかったらクビ。 PG2年目24歳が2010年4月に実施される応用情報技術者試験に挑みます。たくさん更新して御免なさい。もう必死なんです。 2層ロッキングプロトコルとは、トランザクションにおいてデータ操作の前に排他資源に対して一斉にロックをかけ(成長フェーズ)、操作終了後に一斉に解放する(縮退フェーズ)方式のこと。直列可能性が保証される。2相ロッキングプロトコルではデッドロックを防ぐことは出来ない。 ※トランザクション 最初の操作からコミットまたはロールバックまでの操作のこと。ACID特性を備える。 ※直列可能性 2つのトランザクションがある場合、実行の順序に限らず結果が同じ場合、直列可能であると言う。 ※デッドロック 2つのトランザクションが互いの処理に必要なデータをロックし合っているために、処理が続行できなくった状態のこと。

    2層ロッキングプロトコル | 応用情報技術者試験に受からなかったらクビ。