いがぴょんの日記v2: キーワード: R/Oマッピング
[R/O,マッピング,mapper,mapping,O/R] R/Oマッピング定義です。
下記の仕様をR/Oマッピングと呼ぶことと定義します。また R/Oマッピングツールとは下記の仕様を満たすものを指します。
- リレーショナルデータベース指向である。
- リレーショナルデータベース上の型を、強制的に特定のオブジェクト型にマッピングする。
- リレーショナルデータベースのカーソルが利用できる。
- リレーショナルデータベースが持つ機能・性能を阻害しない。
- ANSI SQL (ごくあたりまえのSQL文) を利用する。
- 各種ロックが適切に利用できる。(行ロック、更新用の検索)
- NULL許容列を適切に扱うことができる。NULLはNULLとして入出力ができる。
- トランザクションが適切に扱える。
- トランザクションのコミットとロールバックを任意のタイミングで呼び出すことができる。
- トランザクション分離レベルを適切に扱うことができる。
- メモリ消費量が常識的であること。
- 処理件数が増えてもメモリ消費量が線形には増えないこと。
- StreamやReaderを適切に利用し、大きなデータや大量データを扱ってもメモリ上には展開しない。
- ストアドプロシージャ呼び出しに適切に対応する。
意外なことですが、世の O/Rマッピングツールの多くは 上記とは逆の指向性を持っています。ツールとしては高機能である反面、リレーショナルデータベースの機能や性能を大きく損なっているというものが多く存在します。R/OマッピングはリレーショナルデータベースおよびSQLを中心としたアプローチをとります。
関連するリソース
| R/Oマッピング定義 追加仕様案 2005.06.16版 |
下記の仕様を新たに追加することを検討しています。
- リレーショナルデータベースにおけるデッドロックを適切に処理することができること。
- リレーショナルデータベースにおけるタイムアウトを適切に処理することができること。
いがぴょんについて
Last modified: $Date: 2010/09/27 20:42:48 $