XMLデータベースを用いた Javaのための仮想的な オブジェクト指向データベースの試作

Slides:



Advertisements
Similar presentations
XML ゼミ 独習 XML ~ 第 6 章 XHTML~ 6.1 XHTML の概要 6.2 XHTML の構造 谷津 哲平.
Advertisements

ソフトウェア工学 理工学部 情報システム工学科 新田直也. 演習問題 1 の解答例  入庫処理の DFD 酒屋の在庫問題の DFD( 入庫処理 ) 更新情報 在庫ファイル 更新処理 倉庫係 在庫不足リスト 在庫ファイル 出庫指示書 新規出庫 判定 出庫指示書 作成処理 出庫依頼 積荷票.
OWL-Sを用いたWebアプリケーションの検査と生成
シーケンス図の生成のための実行履歴圧縮手法
相互作用図 FM11010 田中健太.
リレーショナル・データベース データベース論 第10回.
Webアプリケーション開発の 基本的なポイント
Webサービスに関する基本用語 Masatoshi Ohishi / NAOJ & Sokendai
第3回参考文献発表 PHP言語 岩永逸平.
JPAを利用した RESTful Webサービスの開発
JavaScript プログラミング入門 2006/11/10 神津.
WEBから確認できる 駐車場管理システムについて
MySQLに接続するデータベースプログラム
分散コンピューティング環境上の Webリンク収集システムの実装
Javaのための暗黙的に型定義される構造体
「絵葉書を通じてのハルビンの 街の印象調査」システムUIの iPadアプリ化 谷研究室  飯 祐貴.
第1回 HTML5入門.
情報伝播によるオブジェクト指向プログラム理解支援の提案
地理情報システム論 第3回 コンピュータシステムおける データ表現(1)
XMLについて 蔡柏東.
応用情報処理V 第1回 プログラミングとは何か 2004年9月27日.
卒研:データベースチーム 第4回 DOMを使った処理
CHAPTER1 UMLとオブジェクト指向の基本概念(2)
第7章 データベース管理システム 7.1 データベース管理システムの概要 7.2 データベースの格納方式 7.3 問合せ処理.
Webを利用した授業支援システムの開発 北海道工業大学 電気電子工学科 H 渋谷 俊彦.
セマンティクスを利用した 図書検索システム
JavaBeans とJSP データベース論 第5回.
応用情報処理V 第1回 プログラミングとは何か 2003年9月29日.
JSFによるWebアプリケーション開発 第6回
Web上で管理・利用できる 面接予約データベースシステムの構築
サーバ構成と運用 ここから私林がサーバ構成と運用について話します.
(B2) 親: minami, kazuki 多様な認証機器に対応する 認証システム (B2) 親: minami, kazuki.
UML入門 UML PRESS vol.1 より 時松誠治 2003年5月19日.
データベース設計 第9回 Webインタフェースの作成(1)
IPv6アドレスによる RFIDシステム利用方式
MPIによる行列積計算 情報論理工学研究室 渡邉伊織 情報論理工学研究室 渡邉伊織です。
第8章 Web技術とセキュリティ   岡本 好未.
9.1 DOMの概要 9.2 DOMプログラミングの基礎 9.3 DOMのプログラミング例
第4回JavaScriptゼミ セクション2-8 発表者 直江 宗紀.
細かい粒度で コードの再利用を可能とする メソッド内メソッドと その効率の良い実装方法の提案
その他の図 Chapter 7.
暗黙的に型付けされる構造体の Java言語への導入
Webアプリケーションの方向性 データベース論 第13回.
インラインスクリプトに対するデータフロー 解析を用いた XHTML 文書の構文検証
Nakano School of Business 経営情報ビジネス科 【 Java概論(Test5)】
JAVAについて 高橋 雅哉.
XMLゼミ 1.3 XML文書の表示 1.4 XMLの役割 1.5 XMLとプログラミング M2 正木 裕一.
Nakano School of Business 経営情報ビジネス科 【 Java概論(Test1)】
第1章 実世界のモデル化と形式化 3.地物インスタンスの表現
JavaScriptを含んだHTML文書に対する データフロー解析を用いた構文検証手法の提案
アルゴリズムとプログラミング (Algorithms and Programming)
「マイグレーションを支援する分散集合オブジェクト」
マイグレーションを支援する分散集合オブジェクト
ソフトウェア工学 知能情報学部 新田直也.
独習XML ~第1章 XMLの基礎~ 1.1 XML文書の基礎 1.2 XMLとHTML
Webページに動きを持たせるJavascript言語について 例題のプログラムを通して体験的に理解することとします。
「マイグレーションを支援する分散集合オブジェクト」
リレーショナル・データベース J2EE I (データベース論) 第2回 /
アルゴリズムとデータ構造1 2009年6月15日
JSPの基本 J2EE I (データベース論) 第8回 /
プログラム分散化のための アスペクト指向言語
データ中心システム設計方法論“DATARUN” 
モグラたたき.
アルゴリズムとデータ構造 2010年6月17日
ソフトウェア工学 知能情報学部 新田直也.
Javaとは Javaとはオブジェクト指向言語でJava VM(Java仮想マシン)と呼ばれるプログラム上で動作します。
GluonJ を用いたビジネスロジックからのデータベースアクセスの分離
MVCモデル2による Webアプリケーション
オブジェクト指向言語論 第六回 知能情報学部 新田直也.
第8章 データベースシステムの発展 8.1 オブジェクトリレーショナルデータベース 8.2 分散データベース 8.3 インターネットとデータベース.
Presentation transcript:

XMLデータベースを用いた Javaのための仮想的な オブジェクト指向データベースの試作 「XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作」という題目で、 谷研究室、福澤太の発表を始めます。 よろしくお願いいたします。 2007年2月10日 谷 聖一研究室 福澤 太

XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作 目次 オブジェクト指向とは? 研究目的 オブジェクト指向言語と関係データベース オブジェクト指向言語とオブジェクト指向データベース XMLとは? XMLデータベースを用いた オブジェクト指向データベースの提案 デモ 課題と今後の目標 目次はこのようになっています。 XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作

XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作 目次 オブジェクト指向とは? 研究目的 オブジェクト指向言語と関係データベース オブジェクト指向言語とオブジェクト指向データベース XMLとは? XMLデータベースを用いた オブジェクト指向データベースの提案 デモ 課題と今後の目標 では始めに、そもそもオブジェクト指向とは、どういったものであるかご説明いたします。 XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作

XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作 オブジェクト指向とは? キーボード CPU ディスプレイ マザーボード 例えば、 CPU、マザーボード、メモリ、ハードディスク、ディスプレイ、キーボードなど、 各パーツの相互作用によって、一台のパソコンが出来ているように、 オブジェクト指向は、オブジェクトの集合の相互作用によって、システムの振る舞いを構築する考え方です。 メモリー HDD XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作

XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作 オブジェクト指向とは? クラス : オブジェクトの定義 インスタンス : クラスに値を入れたもの キーボード CPU フィールド  オブジェクトを表す値の入れ物 メソッド  オブジェクトへの操作・振る舞い ディスプレイ マザーボード 具体的には、一つ一つのオブジェクトに対して、クラスというオブジェクトの定義をします。 クラスは、オブジェクトを表す値を格納するための入れ物であるフィールドと、 そのオブジェクトへの操作・もしくは内部的な振る舞いを記述するメソッドの二つの部分から成り立ちます。 例えばフィールドは、CPUの周波数やHDDの容量など、オブジェクトを表す値を入れる変数であり、メソッドはCPUの演算であったり、メモリに対してメモリ上のあるアドレスの値を取り出す、といった操作そのものを定義する部分です。 また、クラスをもとにフィールドに実際にオブジェクトを表す値を入れたものをインスタンスと呼びます。 メモリー HDD XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作

XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作 オブジェクト指向とは? インスタンス クラス : オブジェクトの定義 インスタンス : クラスに値を入れたもの オブジェクト・モデル キーボード CPU フィールド  オブジェクトを表す値の入れ物 メソッド  オブジェクトへの操作・振る舞い ディスプレイ マザーボード さらに、インスタンスはあるインスタンスの参照を持つことが出来ます。 つまり、フィールドの値として格納しているものが、あるインスタンスであるということです。 図では、参照を持つインスタンスから参照されるインスタンスへ向けて、矢印で表しています。 あるインスタンスの参照を持つと言うことは、 参照を持つインスタンスは、参照されるインスタンスが表すクラスが定義するメソッドを、呼び出すことが出来ると言うことであり、 参照されるインスタンスは参照を持つインスタンスの影響を受けると言うことです。 このインスタンスの参照関係で構築されるグラフ構造のデータ表現を、 オブジェクトモデル、もしくは単純にオブジェクトと呼び、 このオブジェクト・モデルを通してオブジェクト指向ではデータ表現を行います。 オブジェクト指向は、この他に継承やオブジェクトの識別性などの概念を合わせたものと言えますが、 時間の都合上それらの説明は省略させていただきます。 ご了承下さい。 つまり、オブジェクト指向を用いることにより、 より現実世界の「もの」をそのままの形でプログラムなどで表現可能となります。 メモリー HDD XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作

XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作 目次 オブジェクト指向とは? 研究目的 オブジェクト指向言語と関係データベース オブジェクト指向言語とオブジェクト指向データベース XMLとは? XMLデータベースを用いた オブジェクト指向データベースの提案 デモ 課題と今後の目標 続いて、研究目的です。 XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作

研究目的 オブジェクト指向言語と関係データベース 研究目的  オブジェクト指向言語と関係データベース オブジェクト指向言語 関係データベース インスタンス 現在、もっとも多くの場面で用いられているデータベースは、関係データベースと呼ばれるデータベースです。 オブジェクト指向なプログラミング言語をオブジェクト指向言語と呼びますが、 オブジェクト指向言語で用いられるデータベースとしてもほとんどの場合、関係データベースです。 関係データベースとは、各列に項目、行に一組のデータを格納する二次元の表に対して、重複を避け、一事実を一カ所に格納するよう正規化を行い、 XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作

研究目的 オブジェクト指向言語と関係データベース 研究目的  オブジェクト指向言語と関係データベース オブジェクト指向言語 関係データベース インスタンス インピーダンスミスマッチ 複数の表に分割し、複数の表の間に関係を持たせた関係モデルと呼ばれるデータ表現を用いて、データベースを構築します。 オブジェクト指向言語は先ほど説明致しましたオブジェクト・モデルを用いてデータ表現を行います。 この異なった二つのデータ表現の間で一組のデータをやりとりする際には、 データ構造の設計の際の制限や、オブジェクトモデルと関係モデルの間で変換処理をその都度記述をしなければならない点や、 変換にかかる計算コストなどいくつもの問題があり、これらはインピーダンスミスマッチと呼ばれ、 オブジェクト指向言語と関係データベースを連携させる上で大きな問題となっています。 XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作

研究目的 オブジェクト指向言語とオブジェクト指向データベース 研究目的  オブジェクト指向言語とオブジェクト指向データベース オブジェクト指向言語 オブジェクト指向データベース インスタンス インスタンス しかし、もしオブジェクト指向言語とオブジェクト指向データベースを連携させるのであれば、 インピーダンスミスマッチは発生しません。 オブジェクト指向データベースでは、オブジェクト指向言語のオブジェクト・モデルをそのままの形でデータベースに格納し取り出すことが可能です。 しかし、現在JavaやC++やC#やRubyといったオブジェクト指向言語が台頭してきているにもかかわらず、 オブジェクト指向データベースは、大規模で特殊な環境を除いてほとんど使われていません。 それは何故か? XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作

研究目的 オブジェクト指向言語とオブジェクト指向データベース 研究目的  オブジェクト指向言語とオブジェクト指向データベース 歴史 オブジェクト指向言語 オブジェクト指向データベース 1960~1980年代 オブジェクト指向、オブジェクト指向言語の誕生 1980年代初期 オブジェクト指向データベースの研究が始まる 1980年代後半 C++の誕生 オブジェクト指向データベースの研究が盛んに行われるようになる 1990年代初期 C++に対応した多数のOODBMSが発売される 1993年 ODMGによりOQLやODLが策定される 1995年 Javaの誕生 1999年 ODMGがJavaに対応 2001年 ODMGの活動休止 インスタンス インスタンス オブジェクト指向データベースは、 1980年代初期から中期にグラフ構造を格納可能なデータベースの研究から発展し、 1990年代前半までは盛んに研究が行われていました。 また、1993年には、オブジェクト指向データベースのための標準規格ODMGが策定され、 オブジェクト指向データベースのための問い合わせ言語OQLなどが定められましたが、 XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作

研究目的 オブジェクト指向言語とオブジェクト指向データベース 研究目的  オブジェクト指向言語とオブジェクト指向データベース 歴史 オブジェクト指向言語 オブジェクト指向データベース 1960~1980年代 オブジェクト指向、オブジェクト指向言語の誕生 インスタンス インスタンス オブジェクト指向データベースの欠点 1980年代初期 オブジェクト指向データベースの研究が始まる 1980年代後半 C++の誕生 オブジェクト指向データベースの研究が盛んに行われるようになる オブジェクト指向言語でなければならない オブジェクト指向という概念は曖昧 1990年代初期 C++に対応した多数のOODBMSが発売される 関係データベースは良い製品が多く・環境も整備されている 1993年 ODMGによりOQLやODLが策定される オブジェクト指向データベースの欠点である、 オブジェクト指向という概念自体が曖昧であり、言語ごとデータベースごとに異なっている点、 関係データベースでよりよい製品が出てきた点などから、 1990年代後半以降、オブジェクト指向データベースは衰退していきます。 1995年 Javaの誕生 1999年 ODMGがJavaに対応 2001年 ODMGの活動休止 XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作

研究目的 オブジェクト指向言語とオブジェクト指向データベース 研究目的  オブジェクト指向言語とオブジェクト指向データベース オブジェクト指向言語 オブジェクト指向データベース インスタンス インスタンス しかし、オブジェクト指向言語を使う上で、オブジェクトモデルを、 そのままの形でデータベースに格納可能であるオブジェクト指向データベースは重要な存在であり、 簡単に導入可能なオブジェクト指向データベースが存在しないという現状は、解消しなければならない。 そう考え、このあと説明致します方法を用いれば、そう難しくなくオブジェクト指向データベースを 実現できるのでは無いかと思いつきまして、 僕はオブジェクト指向データベースの試作を卒業研究に選びました。 XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作

XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作 目次 オブジェクト指向とは? 研究目的 オブジェクト指向言語と関係データベース オブジェクト指向言語とオブジェクト指向データベース XMLとは? XMLデータベースを用いた オブジェクト指向データベースの提案 デモ 課題と今後の目標 続いて、具体的にオブジェクト指向データベースの提案に入る前に、そこで使う技術であるXMLについて先にご説明致します。 XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作

XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作 XMLとは? <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja">  <head>   <title>目次</title>  </head>  <body> XMLデータベースを用いたJavaのための仮想的な<br/> オブジェクト指向データベースの提案<br/>   <ul>    <li>オブジェクト指向とは?</li>    <li>研究目的</li>    <li>XMLとは?</li>    <li>XMLDBを用いたOODBの提案</li>    <li>デモ</li>    <li>課題と今後の目標</li>   </ul>  </body> </html> 属性 要素 開始タグ 要素内容 要素 ここにいる皆さんでしたらご存じのことと思いますが、HTMLという言語があります。 XMLはHTMLと同じマークアップ言語です。 つまり、開始タグと終了タグによって囲まれた要素の中に、要素内容として表現したいデータを記します。 また、要素は要素の入れ子構造にし、要素には属性という形で値を付加することが出来ます。 また、XMLはHTMLと違い、要素の構造を定義が可能であり、構造を定義したのであれば、その定義に則って記述します。 終了タグ XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作

XMLとは? タグによって構造化され、構造の定義が可能な、 テキスト形式のデータ記述のための仕様 要素 プログラムAPI <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja">  <head>   <title>目次</title>  </head>  <body> XMLデータベースを用いたJavaのための仮想的な<br/> オブジェクト指向データベースの提案<br/>   <ul>    <li>オブジェクト指向とは?</li>    <li>研究目的</li>    <li>XMLとは?</li>    <li>XMLDBを用いたOODBの提案</li>    <li>デモ</li>    <li>課題と今後の目標</li>   </ul>  </body> </html> 属性 タグによって構造化され、構造の定義が可能な、 テキスト形式のデータ記述のための仕様 要素 開始タグ 要素内容 プログラムAPI DOM SAX XMLDBへの問い合わせ言語 XQuery 要素 任意の場所を指定する XPath XMLの応用例 XHTML MathML SVG つまり、XMLとはタグによって構造化されるマークアップ言語であり、その構造の定義を可能とするメタ言語の二つの側面を備えた、世界で唯一と言えるテキスト形式である標準化されたデータ記述のための表現方法定めた仕様です。 XMLには、XMLそのものの事を標準化した仕様以外にも、 プログラムからXMLを操作するための仕様であるDOMやSAX、 XMLの上の任意の場所を指定する仕様であるXPath、 XMLを専門に格納するデータベースであるXMLデータベースに対する問い合わせ言語XQueryや、 XMLを使う上で、そのタグの名前や構造などを定義した応用規格として、 次世代のWeb記述言語であり、この裏の例でも出していますXHTMLなど 多数の規格が存在します。 終了タグ XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作

XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作 目次 オブジェクト指向とは? 研究目的 オブジェクト指向言語と関係データベース オブジェクト指向言語とオブジェクト指向データベース XMLとは? XMLデータベースを用いた オブジェクト指向データベースの提案 デモ 課題と今後の目標 それでは、オブジェクト指向データベースの実現方法の提案に入ります。 XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作

XMLデータベースを用いた オブジェクト指向データベースの提案 オブジェクトをXMLに変換 クライアント アプリケーション クライアント側システム サーバー側システム XMLDBごとのドライバ XMLデータベース インスタンス XML ネットワーク ネットワーク まず、このシステムは大きく分けて、5つの部分から構成されています。 オブジェクト指向データベースを使用するアプリケーション部分である、クライアントアプリケーション クライアントアプリケーションに対して、オブジェクト指向データベースとしての窓口であるクライアント側システム ネットワーク越しにクライアントからの処理を行うサーバー側システム XMLデータベースごとに異なった仕様を吸収し、標準的な処理を提供するためのXMLデータベースごとのドライバ ネットワークを挟み、オブジェクト指向データベースに格納するオブジェクト・モデルをXMLとして格納するXMLデータベース 以上、五つの部分です。 図ですと、この内の真ん中三つの部分が、僕が作成する部分です。 また、クライアントアプリケーションは、オブジェクト指向言語であるJavaを対象とします。 そして、このシステムでは、クライアント側システムにおいて、 オブジェクト指向言語のオブジェクトモデルを、各インスタンスごとに分割したXMLに変換し、 インスタンスの参照関係を、属性を用いてXML上でも参照関係で表します。 そして、サーバー側システム以降は、XMLとしてオブジェクトを管理していきます。 次に、オブジェクトの検索とオブジェクトの登録・更新という二つの観点から、 このシステムの振る舞いの説明を致します。 XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作

XMLデータベースを用いた オブジェクト指向データベースの提案 オブジェクトの検索をOQLで記述 OQLによる検索 OQLをXQueryに変換 XML クライアント アプリケーション クライアント側システム サーバー側システム XMLDBごとのドライバ XMLデータベース まず、オブジェクトの検索について。 オブジェクトの検索にはオブジェクト指向データベースへの問い合わせ言語としてODMGが定めたOQLのサブセットを使用します。 始めに、クライアントアプリケーションはOQLで記述した検索内容をクライアントシステム側に渡します。 クライアント側システムは、XMLに変換されているオブジェクトを検索するために、OQLをXQueryに変換し、それをサーバー側システムを通して、裏でオブジェクトを格納しているXMLデータベースに投げます。 そして、その結果としてオブジェクトを表すXMLがサーバー側システムに返ってきます。 しかし、このXQueryによる検索でXMLデータベースから獲得したXMLは、 XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作

XMLデータベースを用いた オブジェクト指向データベースの提案 オブジェクトの検索をOQLで記述 OQLによる検索 OQLをXQueryに変換 クライアント アプリケーション クライアント側システム サーバー側システム XMLDBごとのドライバ XMLデータベース XML XML XML オブジェクトモデルのルートとなるインスタンス、例えばこの点滅している部分のXMLだけです。 そのため、獲得したXMLが参照するXMLを獲得するための処理を行います。 図ですと、次にこの点滅している部分のXMLを獲得し、さらに参照するXMLを獲得するための処理を繰り返し行っていきます。 XML XML XML XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作

XMLデータベースを用いた オブジェクト指向データベースの提案 オブジェクトの検索をOQLで記述 OQLによる検索 OQLをXQueryに変換 XML クライアント アプリケーション クライアント側システム サーバー側システム XMLDBごとのドライバ XMLデータベース 参照するXMLを 繰り返し獲得 そして、必要なXMLがそろった時点で、クライアント側にXMLを送信します。 クライアント側システムは送られてきたXMLから、オブジェクトを復元し、 クライアントアプリケーションに、検索結果として渡します。 以上がオブジェクトの検索の処理の流れです。 続いて、オブジェクトの登録・更新に関して説明致します。 XMLから オブジェクトに復元 XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作

XMLデータベースを用いた オブジェクト指向データベースの提案 オブジェクトの登録・更新 1.登録したい オブジェクトをBindする クライアント アプリケーション クライアント側システム サーバー側システム XMLDBごとのドライバ XMLデータベース 1.Bindされている オブジェクトを XMLに変換する 始めに、クライアントアプリケーションは、オブジェクト指向データベースへ新たに登録したいオブジェクトを、Bindします。これは仮の登録です。 また、先ほど説明致しました検索によってオブジェクト指向データベースから取り出したオブジェクトに関しては、全て、Bindされています。 そして、データベースに、Bindされているオブジェクトの状態を反映させたいタイミングで、コミットします。 コミットをした瞬間、データベースにBindされているオブジェクトをXMLに変換し、 新たに増えたインスタンスに関しては追加、 検索によってオブジェクト指向データベースから取り出されたインスタンスに関しては、変更があったものは更新、残りは更新の対象から外し、追加、更新の情報と共に、オブジェクトから変換されたXMLをサーバー側に送信し、XMLデータベースへXMLの追加、更新の処理を行い、オブジェクトの登録・更新の処理とします。 2.コミットする 2.追加・更新・ 無視に分ける XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作

XMLデータベースを用いた オブジェクト指向データベースの提案 クライアントアプリケーションからは 一つのオブジェクト指向データベースに見える クライアント アプリケーション クライアント側システム サーバー側システム XMLDBごとのドライバ XMLデータベース このような処理により、 クライアントアプリケーションからは、 クライアント側システム以降が一つのオブジェクト指向データベースのように見えます。 このような方法でオブジェクト指向データベースを試作致しました。 XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作

XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作 目次 オブジェクト指向とは? 研究目的 オブジェクト指向言語と関係データベース オブジェクト指向言語とオブジェクト指向データベース XMLとは? XMLデータベースを用いた オブジェクト指向データベースの提案 デモ 課題と今後の目標 それでは、このオブジェクト指向データベースのデモを次にお見せ致します。 しかし、データベースそのものだけでは、目に見えるような動作をするものではないため、今回はこのオブジェクト指向データベースを使った、システムを使って、デモをお見せすることで、オブジェクト指向データベースのデモとしたいと思います。 XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作

デモ 著者 本 タイトル:String 名前:String 著者:著者[1…*] Wikipedia:String 著書:本[1…*] 著者クラスと本クラスからなる 二部グラフの構造をしたオブジェクト・モデル 著者 名前:String Wikipedia:String 著書:本[1…*] 本 タイトル:String 著者:著者[1…*] 出版社:String ISBN番号:String * * 先に、お見せするシステムの説明を少ししておきます。 Amazon.comのデータを用いて、著者、本の間に互いに参照を持たせた二部グラフの構造をしたオブジェクト・モデルを用いて、ある著者を選択すると、著書である本を表示することができ、本を選択するとその本の著者を表示することができるというプログラムをお見せします。 また、著者、本はOQLによる検索が可能です。 すでにデータベースには、著者300人分、約2200冊のデータが格納されています。 また、このデータは、任意の著者または本を取ると、任意の著者または本まで辿りつくことが可能なデータとなっています。 では、デモに移ります。 XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作

XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作 目次 オブジェクト指向とは? 研究目的 オブジェクト指向言語と関係データベース オブジェクト指向言語とオブジェクト指向データベース XMLとは? XMLデータベースを用いた オブジェクト指向データベースの提案 デモ 課題と今後の目標 最後に、課題と今後の目標についてお話しします。 XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作

XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作 課題と今後の目標 理論部分での課題 (クエリ内からのメソッド呼び出し、排他制御、 オブジェクトの削除、クエリの最適化など) 実装部分での課題 (アクセス制限、バージョン管理、Xpriori以外のDBへの対応、高速化など) 追加機能 (ネイティブクエリ、スーパークラス・インターフェイスによるクエリ、クラスファイルからのスキーマ生成など) 現在、オブジェクトを登録し、OQLを用いた単純な検索は可能となっていますが、 まだまだ実用レベルのデータベースとしては機能不足です。 そもそもオブジェクト指向データベースとしての理論部分において、 オブジェクトをXMLに変換しているため、OQL内でメソッドを呼び出すことができない点や、 実装部分においても、データベースで管理されたログイン機能などのアクセス制限が無い点や、 先ほど、デモでもお見せしたとおり、少しでも複雑になったクエリは、結果が返ってくるまでに時間がかかるなど速度面の問題がある点など 理論的な問題点を解決し、実装し、オブジェクト指向データベースとしての機能を充実すべく、 これからも時間がある時にこつこつと研究を進めていこうと考えています。 以上です。 ご静聴ありがとうございました。 XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作

XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作 御清聴ありがとうございました。 XMLデータベースを用いたJavaのための仮想的なオブジェクト指向データベースの試作