view chapter8.tex @ 4:3ac8c8d97fea

2/16
author tatsuki
date Mon, 16 Feb 2015 17:56:08 +0900
parents 470dc248d615
children 96fc201c4e8c
line wrap: on
line source

\chapter{結論}
\label{chap:poordirection}
\section{まとめ}
本研究では、初めに当研究室が開発している分散データベースJungleで使われている非破壊的木構造について述べ、破壊的木構造に比べてロックが少ないというメリットがあること、当研究室で開発している並列分散フレームワークAliceを用いて分散実装を行っていることを述べた。

その後、株式会社Symphonyが開発しているアカウント管理、許諾判定システムであるmaTrixが、どのようなデータ構造を保持しており、どのようにアカウント管理を行い、申請の許認可を行っているかの説明を行って、Jungle上でmaTrixをどのように実装するかを述べた。
その後Jungle上でどのようにmaTrixを表現するかの説明を行った。
検索APIは、Java8の新機能であるlambda式を用いて実装を行い、検索を高速化するため、functionalJavaのTreeMapを用いてIndexの実装も行った。過去のTreeに対するアクセスは、全てのVersionのTreeが持っている固有のrevisionIdを使用しアクセスを可能にした。

また、maTrixが書きだしたxmlファイルを読み込むためにXMLReaderをsaxを用いて実装し、XMLファイルをJungleに取り込めるようにした。
その後、XACMLInterpreterを実装し、maTrixが使用しているポリシーファイルを読み込んで、Jungle上で許諾判定を行えるようにした。

最後に、実際にmaTrixがデータにアクセスする際に使用するアクセス関数を実装し、性能評価を行った。
1つ目の実験ではIndexの性能評価を行うため、Indexを使用する場合と、使用しない場合で検索を行い、アクセス関数の実行速度の比較を行った。
2つ目の実験では、データの検索APIに対して複数のThreadから負荷をかけ、並列に動作するかどうかを調べ、どちらの実験でもIndexの性能は出ていた。
\section{今後の課題}
\subsection{push/pop}
\subsection{indexのIncrementalUpdate}
\subsection{differencialList}
\subsection{exponential backoff}