# HG changeset patch # User Shinji KONO # Date 1424163305 -32400 # Node ID 70151ab67333d0bd7e20fd51dcddcecdbe819f5c # Parent 713f6f9ceda3f5fde602c9a949b9bd70a422a27d fix diff -r 713f6f9ceda3 -r 70151ab67333 abst.tex --- a/abst.tex Tue Feb 17 16:59:34 2015 +0900 +++ b/abst.tex Tue Feb 17 17:55:05 2015 +0900 @@ -22,25 +22,33 @@ \author{金川竜己 \\ 指導教員 河野真治 {} } \maketitle -\begin{abstract}Knowledge is tree strucuture. We want DataBase to easily store Tree strucuture. laboratory have developed a database Jungle. Jungle which has non-destructive tree strucuture and distributed. Symphony company has developed enterprise Authorization system. We build a enterprise Authorization system on Jungle. And I was a test of the Jungle. Locate the required API, which was implemented. I have implemented a three API , Search API, Index, Access to the past of Tree. we was able to build a practical application on the result Jungle\end{abstract} +\begin{abstract} +Knowledge used in various services are usually tree structured, such as books, HTML or organization. In RDB, these tree structures are converted into table base representation, +but more direct use of tree structure on a database is preferable. Jungle Database can store tree structure directory and it modifies trees non destructively. +As an application of Jungle, authorization system on enterprises, maTrix is implemented. Representation ability, necessary functionality of Jungle and practical performance are +verified. This research is supported by Symphonies, Inc. +\end{abstract} + + \thispagestyle{fancy} \section{分散木構造データベースJungle} -当研究室ではデータの変更の際に過去の木構造を保存しつつ新しく木構造を作成する非破壊的木構造を用いたデータベースであるJungleを開発している。 -非破壊的木構造は、一度生成した木を上書きせず、データの編集はルートから編集を行うノードまでコピーを行い新しく木構造を構築することで行う。 -そのため、非破壊的木構造は検索中の木が変更されないことが保証されているので、破壊的木構造に比べてスケールアウトがしやすくなっている。 +知識構造は様々なサービスで扱われるが、それらは木構造を持つことが多い。例えば、書籍、Webの基本であるHTML、組織構造などである。 +これらのデータをRDBでは表構造に変換する必要があるが、木構造のまま格納することにより、直接的な操作や効率的なサービスが可能に +なると考えられる。 +当研究室では木構造をそのまま格納し、 データの変更の際に過去の木構造を保存するデータベースであるJungleを開発している。 +非破壊変更により、書き込みと読み込みを同時に行うことができ、安全に木の複製を行うことができるので、スケールアウトがしやすくなっている。 +当研究では、Jungleの上に、組織の許認可管理アプリケーションmaTrixを実装し、データベースの表現力、機能の十分性、実用的な性能などの検証を行った。 -当研究では、共同研究を行っているSymphonies社が開発している、組織の中の許認可を管理するアプリケーションmaTrixにJungleを組み込み、実装すべきAPIの洗い出しを行い、その後実用データベースとしての性能があるか実証実験を行う。 \section{組織中の許認可管理\\アプリケーションmaTrix} -maTrixは、人、役職、役割、権限と言った木構造のデータと、許認可判断用のポリシーファイルを持つ。 -maTrixの組織構造は、データ同士がidを用いて参照を行い表現しており、version毎に版管理している。 -また、maTrixが許認可判断に用いるポリシーファイルはXACMLファイル形式で記述されており、XACMLは、組織構造中の人や役職をidを用いて参照する。 -つまり、XACMLを用いて許認可の判断を下すためには、その人がどの組織に所属して、その役割がどの権限を持っているかを返す検索が必要となる。 - -%maTrixがXML形式で出力したデータを、Jungleに格納するために、SAXを用いて、Jungle用のXMLReaderを作成した。 -%読み込んだXACMLTreeからデータを取り出して、Jungle上で許認可判定を行う、XACMLInterpreterの実装も行った。 - +maTrixは組織構造を、人、役職、役割、権限を表すそれぞれ別な木構造の集まりとして持っている。 +ある木のノードは、他の木からidを用いて参照されることがある。例えば役職技官には、PC貸出権限がidを経由して付属する。 +許認可判断は決まったルールにそって行われる。例えば、PCの貸出権限は台数に依存するかもしれない。 +このようなルールは組織構造とは別にポリシーファイルとして記述される。maTrixではXCAMLをルールの記述に使用している。 +XACMLは組織構造を参照するので、Jungleの木構造を参照する仕組みが必要となる。 +XACMLとJungle DBの組み合わせに対して、Subject(誰が)、Resource(何を)、Action(どうする)かを問い合わせ、その許諾を書く。 +許諾事項は日々更新される組織構造やポリシーに対して判断され、過去の情報も残しておく必要がある。 \section{Jungle上での\\maTrixのデータ構造の表現} maTrixの人、組織、役割、権限等のデータは木構造なので Jungleの木構造にそのままマッピングできる。