Oracle Database 概要 11gリリース1(11.1) E05765-03 |
|
この章では、Oracleのコンテンツ管理機能の概要について説明します。
この章の内容は、次のとおりです。
Oracle Databaseには、リレーショナル・データ、オブジェクト・リレーショナル・データ、XML、テキスト、オーディオ、ビデオ、イメージおよび空間など、豊富な各種インターネット・コンテンツをすべて処理するためのデータ型が組み込まれています。これらのデータ型は、データベースではシステム固有の型として表示されます。これらは、いずれもSQLを使用して問い合せることができます。これらのデータ型のいずれかまたはすべてに属するデータを、1つのSQL文に含めることができます。
アプリケーションが進化し、より多様なセマンティクスを含むようになるにつれて、次の種類のデータを取り扱う必要性が生じています。
従来、リレーショナル・モデルは単純な構造化データ、つまり単純な表に格納できるデータの処理において大成功を納めてきました。Oracleでは、アプリケーションが複雑な構造化データ(コレクション、参照、ユーザー定義型など)を処理できるように、オブジェクト・リレーショナル機能が追加されています。Oracle Streams Advanced Queuingなどのキューイング・テクノロジは、メッセージおよびその他の半構造化データを処理します。この章では、非構造化データをサポートするOracleのテクノロジについて説明します。
構造化されていないデータは、標準構成要素に分解できません。従業員に関するデータは、氏名(文字列)、ID(番号など)、給与などに構造化できます。しかし、写真を与えらた場合は、データが実際には0と1からなる長いストリームで構成されていることがわかります。これらの0と1はピクセルのオンとオフを切り替えるために使用されているため、画面には写真を表示できますが、データベースへの格納用にそれよりも細かい構造へと分解することはできません。
テキスト、グラフィック・イメージ、ビデオ・クリップ、フル・モーション・ビデオおよびサウンド・ウェーブなどの非構造化データは大きくなりがちであり、通常の従業員レコードは数百バイトであるのに対して、マルチメディア・データはごく少量でも数千倍のサイズになることがあります。一部のマルチメディア・データはオペレーティング・システム・ファイルに常駐することがあり、データベースからアクセスすることが望ましいとされています。
Extensible Markup Language(XML)はタグベースのマークアップ言語であり、開発者は独自のタグを作成して、アプリケーション間やシステム間でやりとりされるデータを記述できます。XMLは企業間の共通の情報交換言語として広く採用されています。XMLは判読可能なプレーン・テキストです。プレーン・テキストであるため、XML文書やXMLベースのメッセージは、HTTPやFTPなどの一般的なプロトコルを使用して簡単に送信できます。
Oracle XML DBでは、XMLはデータベース内のシステム固有のデータ型として扱われます。Oracle XML DBは別個のサーバーではありません。XMLデータ・モデルには、構造化されていないコンテンツと構造化データの両方が含まれています。アプリケーションでは、標準的なSQLとXMLの演算子を使用して、SQL問合せから複雑なXML文書を作成したり、XML文書を格納できます。
Oracle XML DBには、コンテンツ指向のアクセスとデータ指向のアクセスの両面で機能が用意されています。Oracle XML DBでは、XMLを文書(ニュース、ニュース項目など)とみなす開発者に、標準プロトコルとSQLからアクセスできるXMLリポジトリが提供されます。
その他のユーザーにとっては、XMLの構造化データ部分(請求書、住所など)の方が重要です。Oracle XML DBでは、この種のユーザーにシステム固有のXML型、XMLスキーマ、XPath、XSLT、DOMなどのサポートが提供されます。通常は、データ指向のアクセスの方が問合せ集中型です。
Oracle XML Developer's Kit(XDK)には、XML文書(ファイル・システム上にあるか、データベースに格納されているかを問わない)の読取り、操作、変換および表示のための基本ビルディング・ブロックが用意されています。これらはJava、CおよびC++で使用できます。多数のシェアウェアや試用のXMLコンポーネントとは異なり、Oracle XDKは本番環境で全面的にサポートされ、業務目的で再配布するためのライセンスが付属しています。Oracle XDKのコンポーネントは、次のとおりです。
ラージ・オブジェクト(LOB)データ型BLOB
、CLOB
、NCLOB
およびBFILE
を使用すると、非構造化データ(テキスト、グラフィック・イメージ、ビデオ・クリップおよびサウンド・ウェーブなど)の大きなブロックを、バイナリ形式または文字形式で格納し、操作できます。このデータ型を使用すると、個々のデータに対する効率的なランダム・アクセスが可能です。
インターネット・アプリケーションや豊富なコンテンツを持つアプリケーションの発展に伴い、データベースで次の要件を満たすデータ型をサポートすることが必要になってきています。
STORE AS SECUREFILE
オプション(リリース11.1で導入)のあるLOBでは、CREATE
TABLE
およびALTER
TABLE
文でSQLパラメータDEDUPLICATE
を指定できます。これによって、LOBの列内の2つ以上の行で同一のLOBデータがすべて同じデータ・ブロックを共有する(したがってディスク容量を節約する)ように指定できます。この機能は、KEEP_DUPLICATES
によってオフになります。次のオプションもSECUREFILE
とともに使用できます。
パラメータCOMPRESS
は、LOB圧縮をオンにします。LOB圧縮は、NOCOMPRESS
によってオフになります。
パラメータENCRYPT
は、LOB暗号化をオンにし、オプションで暗号化アルゴリズムを選択します。LOB暗号化は、NOENCRYPT
によってオフになります。
デフォルトはプレリリース11.1 LOBパラダイムです。これは現在、オプションSTORE AS BASICFILE
によっても明示的に設定するようになっています。
次のSQLおよびPL/SQL文、OCI関数は、SECUREFILE
機能で使用します。
Oracle Textは、あらゆるドキュメントやテキスト形式のコンテンツに索引を付け、インターネット・コンテンツ管理アプリケーション、E-Businessカタログ、ニュース・サービス、人材募集などに高速で正確な情報検索機能をもたらします。索引付けの対象は、ファイル・システムやデータベースに格納されているコンテンツでも、Web上にあるコンテンツでもかまいません。
Oracle Textを使用すると、テキスト検索と通常のデータベース検索を1つのSQL文にまとめることができます。ドキュメントは、テキスト形式のコンテンツ、メタデータまたは属性に基づいて検索できます。Oracle TextのSQL APIにより、単純で直感的な方法でテキスト索引を作成、メンテナンスしてテキスト検索を実行できます。
Oracle TextはOracle Databaseと完全に統合されるため、本質的に高速でスケーラブルになります。Oracle Textの索引はデータベースにあり、Oracle Textの問合せはOracle Databaseプロセス内で実行されます。Oracle Databaseオプティマイザは、どのような問合せについても最善の実行計画を選択でき、テキストと構造化された基準を使用する非定型問合せに最高のパフォーマンスを提供します。さらに次の利点を備えています。
この項の内容は、次のとおりです。
Oracle Textには、テキスト検索のニーズすべてに対処する3つの索引タイプがあります。
Oracle Textには、サブストリング索引と同一キー索引も用意されています。サブストリング索引付けにより、後方一致または中間一致によるワイルドカード問合せのパフォーマンスが改善されます。同一キー索引付けにより、前方一致によるワイルドカード問合せのパフォーマンスが改善されます。
Oracle Textには、格納方法を問わずテキストを表示するための、多数のユーティリティが用意されています。
CTX_QUERY
PL/SQLパッケージを使用すると、問合せのフィードバックを生成し、ヒット数をカウントし、ストアド・クエリー式を作成できます。
Oracle Textを使用すると、テキスト、メタデータまたは属性に基づいてドキュメントを検索、分類およびクラスタ化できます。
ドキュメント分類では、ドキュメントのコンテンツに基づいて処理が実行されます。処理では、後でドキュメントを検索したりユーザーに送信できるように、カテゴリIDを割り当てることができます。その結果、カテゴリに分類されたドキュメントの集合、つまりストリームが生成されます。たとえば、ニュース項目の受信ストリームがあるとします。そこで金融というカテゴリを表すルールを定義できます。このルールは、実際には金融という主題に関するドキュメントを選択する1つ以上の問合せです。このルールは「株式または債券または収益」という形式にすることができます。このカテゴリのルールを満たすドキュメントが着信すると、アプリケーションはドキュメントに「金融」というタグを付けたり1人以上のユーザーに電子メールを送信するなどの処理を実行します。
クラスタ化とは、パターンをグループへと監視なしで分割することです。ユーザーはインタフェースを使用して、適切なクラスタ化アルゴリズムを選択できます。各クラスタには、コレクションに属するドキュメントのサブセットが含まれます。クラスタ内のドキュメントは、クラスタ外部のドキュメントではなく内部の他のドキュメントとの類似性が高いものとみなされます。クラスタを使用すると、コレクション内の類似ドキュメントを表示するなどの機能を構築できます。
Oracle Ultra SearchはOracle DatabaseおよびOracle Textテクノロジを使用しており、複数のリポジトリにおける均一の検索および特定機能を提供します。この場合のリポジトリは、Oracle Database、ODBC準拠の他のデータベース、IMAPメール・サーバー、Webサーバーで提供されるHTMLドキュメント、ディスク上のファイルなどです。
Oracle Ultra Searchはクローラを使用してドキュメントに索引付けします。ドキュメントはそのリポジトリに残り、得られた情報を使用してファイアウォール内で指定のOracleデータベースに残る索引が作成されます。また、Oracle Ultra Searchには、コンテンツ管理ソリューションを構築するためのAPIも用意されています。
Oracle Ultra Searchの機能は次のとおりです。
Oracle Multimedia(旧称Oracle interMedia)は、Oracle Databaseにおいて、イメージ、Digital Imaging and Communications in Medicine(DICOM)、オーディオおよびビデオ・データを他の企業情報と統合された方法で格納、管理および取得できるようにする機能です。Oracle Multimediaは、Oracle Databaseの信頼性、可用性およびデータ管理機能を、従来型、医療、インターネット、電子商取引および多彩なメディアに対応するアプリケーション内のメディア・コンテンツおよび医用画像コンテンツにまで拡張します。
Oracle Multimediaでは、次の機能によりメディア・コンテンツを管理します。
Oracle Multimediaでは、次の機能によりDICOMコンテンツを管理します。
Oracle Spatialは、ロケーション対応アプリケーションや地理情報システム(GIS)アプリケーションのユーザーにとって、空間データの管理作業がより容易かつ自然なものになるよう設計されています。空間データがOracle Databaseに格納されている場合は、簡単に操作し、取り出して、データベースに格納されている他のすべてのデータに関連付けることができます。
空間データの一般例は、ロード・マップに見いだすことができます。ロード・マップは、点、線および多角形を含む2次元オブジェクトであり、それぞれの要素で都市、道路および州や郡などの行政区分を表すことができます。ロード・マップは地理情報を視覚化したものです。地球上に存在する都市、道路および行政区分の位置は、レンダリングされるオブジェクトの相対位置や相対距離を保ったままで2次元の画面上や紙上に投影されます。
このようにレンダリングされるオブジェクトの地球上での位置(緯度と経度など)を示すデータが、空間データです。マップがレンダリングされるときには、この空間データを使用してオブジェクトの位置が2次元の紙上に投影されます。通常、この相対的空間データの格納、取得およびレンダリングにはGISが使用されます。
Oracle Spatialを使用して格納できる空間データのタイプには、GISデータの他にも、コンピュータ支援設計(CAD)システムやコンピュータ支援製造(CAM)システムからのデータがあります。CAD/CAMシステムでは、地理的スケールでオブジェクトを操作するかわりに、自動車エンジンやプリント基板などの小さいスケールを処理します。
このようなシステム間の違いはデータのサイズおよび精度であり、データの複雑度ではありません。どのシステムでも、扱うデータ・ポイントの数は同じです。地理的スケールでは、橋の位置が10分の数インチ変わっても道路建設業者にとってほとんど問題になりませんが、エンジンのピストンの直径が10分の数インチでも違えばエンジンは動きません。
また、データの複雑度は、表示される領域の絶対スケールとは無関係です。たとえば、プリント基板の場合、その表面には数千のオブジェクトが印刷され、そのわずかな領域に、道路建設業者の図面に記載された詳細よりも複雑になりうる情報が含まれます。
この種のアプリケーションではすべて、非空間属性と空間属性の両方を持つ機能のなんらかのコレクションが格納、取得、更新または問合せされます。非空間属性の例は、name、soil_type、landuse_classificationおよびpart_numberなどです。空間属性は、座標のジオメトリ、つまり、機能の形状をベクターベースで表現したものです。
Oracle SpatialにはSQLスキーマおよび関数が用意されており、Oracle Database内にある空間機能の集まりを容易に格納、取得、更新および問合せできます。Oracle Spatialの構成は、次のとおりです。
|
Copyright © 1993, 2008 Oracle Corporation. All Rights Reserved. |
|