2012年4月18日水曜日

LOB 型の格納方式 - オラクル・Oracleをマスターするための基本と仕組み


LOB 型(Large OBject) 型は、その名前の通り大きなオブジェクトを格納する必要があるために 特別な格納方式でデータを保持している。

ロケータ

ロケータとは LOB の格納先のポインタを格納する構造体のようなものである。 このロケータの情報を使用して実データに対してアクセスを行なう。 このロケータによりデータを LOB 専用の格納領域に配置することなどの領域管理を行なうことができる。


cpu-processor/chipは何ですか

インライン格納とアウトライン格納

インライン格納とは
LOB の実データを他の行データを一緒に格納する方式である(制限あり)
アウトライン格納とは
LOB を格納するための専用の データ・セグメント を 用意しておき、そこに格納する方式である。

インライン格納とアウトライン格納は、ブロック内連鎖と複数ブロックを使用する 行連鎖 の同じ違いに近い。 1行のすべてのデータをアクセスすることを考えればインライン格納の方がアウトライン格納に比べ遥かに高速に処理される。
しかし、データ群で考えるとインライン格納は1ブロックの格納行数が少ないため LOB を必要としない 問い合わせに対しては非常に効率の悪い処理となる。


javaの文字列から16進数の値を確認する方法

インライン格納とアウトライン格納の表定義

インラインかアウトラインかはテーブル定義における STORAGE IN ROW 句
(DISABLE STORAGE IN ROW | ENABLE STORAGE IN ROW) と格納しているデータ長に影響される。
NULL 値であるか ENABLE STORAGE IN ROW(デフォルト値 ※)を指定し データサイズが制御情報を含め 4000 バイト以内の場合、 インライン内に配置される。4000 バイトを超える場合にはアウトライン (LOB 専用記憶域)に配置される。
実データ領域へのアクセスはロケータを経由して行われる。
4000 バイト以上のデータを投入するには DBMS_LOB パッケージで行うか、このような方法を使う。


Javaの浮動小数点数に整数値をキャストする方法

(※) アプリケーション開発者ガイドの一部に相反する記述もあるが SQL リファレンスにも ENABLE STORAGE IN ROW がデフォルトと明記されている(Oracle 10g)。 以前のバージョンで変更されたのかもしれない(未確認) 誤訳でなく原文から既に相反している。

アプリケーション開発者ガイド LOB > 表内のLOB > LOB 記憶域 > インラインLOB 記憶域とアウトラインLOB 記憶域

内部 LOB と外部 LOB

インライン格納とアウトライン格納はともに 内部 LOB である。つまり、データの実体の管理はオラクルの管理下にある。 一方、外部 LOB とはデータの管理情報だけを管理する。実データの管理責任はオラクルにはないということになる。(エディタや OS などのオラクルの外部から書き換えが可能である)



These are our most popular posts:

Oracle Data Provider for .NETの機能

LOBサポート. ODP.NETには、ラージ・オブジェクト・データ型にアクセスおよび操作する ための簡単で最適な方法があります。 .... LOB列を更新する場合、LOBデータを、SQL 文、無名PL/SQLブロックまたはストアド・プロシージャのパラメータとしてバインドでき ます ... read more

LOB 型の格納方式 - オラクル・Oracleをマスターするための基本と仕組み

LOB 型(Large OBject) 型は、その名前の通り大きなオブジェクトを格納する必要がある ために特別な格納方式でデータを保持している。 ... シフト・ジ・オラクル ... 4000 バイト 以上のデータを投入するには DBMS LOB パッケージで行うか、このような方法を使う。 read more

BLOB 行の新規作成と読み込み - オラクル・Oracleをマスターするための ...

PL/SQL から BLOB への登録とバイナリデータの取り出し:テーブルの BLOB に対して 直接 BLOB に値を設定する場合には一度 BLOB 項目にロケータを設置する必要がある 。そして、その ... Oracle® 非公式 SQL, PL/SQL DBAs リファレンス. シフト・ジ・ ... read more

LOB記憶域

この項では、LOB列の索引付けに使用できる各種の方法について説明します。 ... LOB 列の内容の性質によっては、Oracle Textオプションの1つを使用して索引を作成する こともできます。 ... 列で実行されると、LOB列の拡張索引およびドメイン索引と同様に、 ファンクション索引も自動的に更新されます。 read more

Related Posts



0 コメント:

コメントを投稿