• ベストアンサー

楽観ロックって何?

DB初心者です。 楽観ロック、悲観ロックという言葉の意味を知りたいのですが、Webでうまく検索できません。 どなたかご教示願います。 またお薦めのサイトがありましたらご紹介ください。

質問者が選んだベストアンサー

  • ベストアンサー
noname#18558
noname#18558
回答No.1

悲観ロックとは初めてききました。 一般的な言葉なんでしょうか? 楽観ロックとは、テーブルにもたせている更新タイムスタンプや、更新フラグを比較してロックするというものです。 例えば更新したいレコードを取得して、更新タイムスタンプを保持しておきます。 そして、更新する直前に再度レコードを取得して更新タイムスタンプが最初の時と変わっていないかどうかで、排他処理を行うというものです。 悲観ロックとは、おそらくDBの排他ロックのことでしょう。 排他ロックには、共有ロック、占有ロックがあります。 更新時には、占有ロックを使います。 更新するレコードに占有ロックをかけ、他のユーザーが更新しようとするのを物理的に制御します。 悲観ロックを使う場合は、デッドロックが発生する恐れがあるので使う場合には注意が必要です。 それぞれのメリット/デメリットですが 楽観ロックのメリット ・デッドロックを気にする必要がない 楽観ロックのデメリット ・テーブルにタイムスタンプをもつ必要がある。 ・プログラムで制御する必要がある 悲観ロックのメリット ・プログラムで気にする必要がない 悲観ロックのデメリット ・デッドロックが発生する恐れがある ・ロックの間トランザクションを維持しておかないといけない などでしょうか。

参考URL:
http://monjyu.biz/monjyu/bd2/oracle1/msg/105.html
catecholamine
質問者

お礼

さっそくの回答ありがとうございます。 とても分かりやすく説明してくださり助かりました。 参考URLで勉強してみます。

その他の回答 (1)

回答No.2

楽観ロック、悲観ロックでなく、楽観的ロック、悲観的ロックでさがすと 割と見つかると思いますよ。 楽観的ロック=確実性に欠けるが事実上は問題が出ないで”あろう”というレベルのロック制御 悲観的ロック=如何なる状況下においても確実に行われるロック制御 楽観的ロック制御の方法は、さまざまなので説明を割愛します。 #1で書かれているような更新時刻を使う手法以外にも、たくさんの方法がありえます。

参考URL:
http://www.int21.co.jp/pcdn/vb/noriolib/vbmag/9904/lock/
catecholamine
質問者

お礼

お答えありがとうございます。 本当ですね。楽観的ロックでググるとたくさん出てきました。 めぼしいところを調べてみたいと思います。

関連するQ&A

  • 他者への責任が有るとき、楽観主義は役に立たない

    スレッドを開いて頂きありがとうございます。 さて、いきなり私の話で申し訳ないんですがorz この前私は、仕事をしていてある事故を起こし周りにかなりの迷惑をかけてしまいました。事故の原因は私の楽観主義です。「多分大丈夫だろう」という気持ちがありました。福島の原発をつくった人と同じですね。 自分が痛い目を見て、やっとわかりました。楽観主義と悲観主義は二項対立ではない。どちらも使いこなせるのがデキる人。よく「楽観主義になろう」って本がありますが、それはあくまでも悲観主義に対する楽観主義の割合を増やそうという事で、悲観主義が間違いだという訳ではないんですね。 というか、なんとなく想像ですが、本当の意味で楽観的になるにはまず悲観的でなくてはならないのではないでしょうか。とことん悲観で考えて、ここまで考えてもミスしたならもう笑うしかないな、って人が初めて本当の意味で楽観的な人になれるのでは。 私、自分は楽観的だと思ってましたが単に責任感が無いだけでしたね。責任感が無いのに心から楽観的になれるわけがない。 駄文に付き合って下さってありがとうございます。適当にツッコミとかくれると嬉しいです。

  • 悲観論より楽観論の方がいい

    「○○な悲観論より、○○な楽観論の方がいい」というような言葉をどこかで手に入れたのですが、○○のところがわかりません。また、それは、誰の言葉でしたっけ?教えてください。

  • 「楽観」が良くて「悲観」が悪い?

    私は楽観的な人間だと思います。 自己批判として考えておく必要がある、 という疑問が一つあります。 それは、楽観=ポジティブと悲観=ネガティブの関係についてです。 どうもポジティブ万歳の風潮の中、ネガティブをいかに ポジティブに転じるか、という話ばかりが 聞かれます。 しかし、本当にネガティブは価値がないのでしょうか。 表面的なポジティブ万歳を批判しなくてはならない気がします。 なぜなら、そうした軽率なポジティブ万歳が、 ネガティブでいる人の心に届かない、あるいは心を 傷付けている可能性があると思うからです。 また、全員がポジティブであることができるように 世界はできているのでしょうか。 プラスとマイナスの総和が常にゼロであるような、 そういったバランスが世界にはそもそもあるのではないか。 とすればポジティブを勧めるのではなく、 ネガティブに意味を見出すことこそ必要なのではないのか、 あるいは、根本的にポジティブ、ネガティブという見方を 批判し、別の概念に転換しなくてはならないのではないか、 そんなことを思ったりしています。 ポジティブ、ネガティブに関する皆様のお考えを お聞かせ下さい。

  • ロック系ファッションサイトを教えてください。

    21歳♀です。 ロック系のファッションサイトを探しています。 検索してみると色々あるのですがどこがいいか分からないので、おすすめのサイトを教えてください。 普段使いできるもので、リーズナブルだと助かります(*´∀`)

  • ロックのおススメ

    洋楽にハマっているんですけど、ロックについていろいろ載っているサイトを紹介してください!

  • レースロックを探しています

    レースロックを探しています。 左手が不自由で靴紐が結べないので(右手は正常)スニカー用のレースロックを探しています。 片手で留めたり、緩めたり出来る商品をネットで検索しましたが、「シッティングブルで@¥210で売っています。」とのコメントがありました。連絡先なし。 PC初心者のためこれ以上良く解りません。 ご存知の方宜しくお願いします。 また、他にお勧めレースロックがあったら教えて下さい。

  • IBMのソフトウェアについて

    この掲示板に結構載っているのですが、 Websphereとは?っていうレベルから知りたいです。 IBMのサイトやWebで検索をすると色々載っているのですが、 全くの初心者なので、分かりやすいサイトがあったら教えてください。 DB2のことも知りたいので、それもからんでるとすごく助かります。

  • Q-Driveって何ですか?

    Q-Driveという言葉を知りません。Webで色々検索するとQue-Driveというのがありました。そのことかも知れません。 検索するためのDB機能ということでしょうか? また、MSとかにそのような製品または機能があるのでしょうか? 言葉の意味を教えてください。

  • ロックしまくってた???

    「Snoopとのツアーは面白かった」「俺たちが慣れてるのとは全く違うエネルギーなんだ。今夜のデンバーで、彼はロックしまくってた。ほんと、頑張ってた。ステージにディープなグルーヴがあったよ」 この文章で、"ロックしまくってた"という意味ってなんでしょうか。 こういう言葉、初めて見ました。

  • 躁鬱病とうつ病の夫婦です。楽観的になりたいのですが・・・

    主人がうつ病で4年間服薬しており、 会社を休んだり、遅刻したりしがちです。 会社を一年半休職して、 今は軽い作業の職場にいます。 アスペルガーの傾向も見られます。 (これは本人には言っていませんが、 うつ病はアスペの二次障害とも考えられます。) アスペルガーの人に多いと言う、 一方的な話し方をするので、 会話がかみ合わない感じがして、 主人と話すとストレスを感じます。 うちには6歳の娘がいて、 私は躁鬱病の専業主婦です。 なんだか毎日言いようのない不安を感じます。 私は悲観的すぎるのでしょうか?? 主人が働けなくなっても 私は十分には稼げません。 (今障害者年金申請中です。 精神障害者手帳は2級です) 多少は働けるかもしれませんが、 家族を養えるとは思えません。 病歴は10年です。 昔は正社員でしたが、 そういったことは残りの人生では あきらめてくださいと カウンセラーさんに言われています。 何か楽観的な言葉をいただければ幸です。。。。