2007年12月29日
同時実行とロック
以前、Infromix Dynamic Serverが持つロック機能についての詳細な記事を紹介しました。
http://oninit.ti-da.net/e1260696.html
この記事は、onstat によるデッドロックの追跡方法など、実践的な内容になっているのですが、残念ながら現在のところ英語で書かれています。
一方で、1999年頃に公開された、もう少しアプリケーション開発寄りの日本語記事が以前から公開されています。
http://www-06.ibm.com/jp/software/data/informix/support/pdf/tnj99v8i1/chap02.pdf
これを久しぶりに読んで気づいたのですが、トランザクションやロックなどで良く使う、「アイソレーション・レベル」 ( Isolation Level ) の訳語が昔と今で違っていますね。昔のInformix製品の日本語マニュアルでは、「排他レベル」になっていました。一方で、最近の一般的なDBMS解説書では、「分離レベル」になっています。原語の意味に忠実なのは「分離レベル」です。IBMが公開している資料でも、DB2専用のものでは「分離レベル」が使用されています。開発ツール ( IBM Data Studio や Rational SDP など)でも「分離レベル」と呼ばれていることが殆どです。Informixで、SET ISOLATION文やSET TRANSACTION文で設定する「排他レベル」は、これら最近の資料では「分離レベル」と表記されています。
Informix関連の資料でも、今後「分離レベル」という言葉が使用あれることが増えてくると思います。覚えておくと混乱しないで済むと思います。
http://oninit.ti-da.net/e1260696.html
この記事は、onstat によるデッドロックの追跡方法など、実践的な内容になっているのですが、残念ながら現在のところ英語で書かれています。
一方で、1999年頃に公開された、もう少しアプリケーション開発寄りの日本語記事が以前から公開されています。
http://www-06.ibm.com/jp/software/data/informix/support/pdf/tnj99v8i1/chap02.pdf
これを久しぶりに読んで気づいたのですが、トランザクションやロックなどで良く使う、「アイソレーション・レベル」 ( Isolation Level ) の訳語が昔と今で違っていますね。昔のInformix製品の日本語マニュアルでは、「排他レベル」になっていました。一方で、最近の一般的なDBMS解説書では、「分離レベル」になっています。原語の意味に忠実なのは「分離レベル」です。IBMが公開している資料でも、DB2専用のものでは「分離レベル」が使用されています。開発ツール ( IBM Data Studio や Rational SDP など)でも「分離レベル」と呼ばれていることが殆どです。Informixで、SET ISOLATION文やSET TRANSACTION文で設定する「排他レベル」は、これら最近の資料では「分離レベル」と表記されています。
Informix関連の資料でも、今後「分離レベル」という言葉が使用あれることが増えてくると思います。覚えておくと混乱しないで済むと思います。
ちなみに、念のため、Isolation Level とは、あるセッションがデータを参照・更新している間に別のセッションが別のデータを参照・更新しようとした時、何処まで同時の参照や更新を許すか、という設定レベル。できるだけ許してあげた方が複数のアプリケーションの同時実行性が高くなり、ロックリソースなども少なくて済みますが、不正なデータや他方で更新確定前の古いデータが読めてしまう可能性も出てきます。
Posted by oninit at 14:08│Comments(0)
│IBM Webサイトにある情報
※このブログではブログの持ち主が承認した後、コメントが反映される設定です。