changeset 17:a1b621c6ca86

fix abstarct
author Daichi TOMA <toma@cr.ie.u-ryukyu.ac.jp>
date Sat, 01 Feb 2014 12:07:28 +0900
parents eb6a70fc9c9f
children 87222a71a71a
files paper/abstract.tex paper/introduciton.tex paper/master_paper.pdf
diffstat 3 files changed, 17 insertions(+), 41 deletions(-) [+]
line wrap: on
line diff
--- a/paper/abstract.tex	Sat Feb 01 08:40:15 2014 +0900
+++ b/paper/abstract.tex	Sat Feb 01 12:07:28 2014 +0900
@@ -1,40 +1,17 @@
 \begin{abstract}
 
 Haskellは純粋関数型プログラミング言語である。
-純粋であるため、引数が同じならば関数は必ず同じ値が返すことが保証されている。
-純粋性は、関数の正しさを簡単に推測できる、関数同士を容易に組み合わせることができるといったメリットをもたらす。
-
-本研究では、Haskell を用いて並列に実行できるデータベースの設計と実装を行う。
-並列にデータへアクセスする手法として、非破壊的木構造を用いる。
-非破壊的木構造は、破壊的代入の存在しない Haskell と相性がよい。
-
-Haskellの純粋性は並列実行と相性が良いが、実際に並列プログラムを書く際には遅延評価が問題となる。
-結果が必要となるまで評価しないため、いつ実行されるかが不明確で並列度を思うように高めることが難しい。
-また同じ呼び出しがあった場合、Haskellには結果をキャッシュし同じ式が再計算されない仕組みがあるが、並列実行時には各スレッド間での同期コストが大きくなってしまう。
-
-Haskell での並列実行について考察し、並列データベースの設計及び実装を行った。
-データベースの書き込み及び読み込みについて性能を計測し、並列データベースを評価する。
-また、簡易掲示板システムを開発し、既存の Java の並列データベースの実装との性能比較を行う。
+モダンな型システムを持ち、型推論と型安全により簡潔で信頼性の高いプログラムを書くことが可能である。
+また、Haskellは純粋であるため、関数は引数が同じならば必ず同じ値を返すことが保証されている。
+これは、並列処理において並列化に適した部分が分かりやすくなるというメリットをもたらし、状態に依存したバグから解放されることを意味する。
 
-% ブロードバンド環境やモバイル端末の普及により、ウェブサービスの利用者数は急激に伸びている。
-% リクエスト数の増加を予想することは困難であり、負荷が増大した場合に容易に拡張できるスケーラビリティが求められる。
-% ここでいうスケーラビリティとは、利用者や負荷の増大に対し、単なるリソースの追加のみでサービスの質を維持することのできる性質のことである。
-% 
-% ウェブサービスにおけるスケーラビリティを実現するためには、並列にデータにアクセスできる設計が必要となる。
-% 本研究では、並列にデータへアクセスする手法として、非破壊的木構造を利用する。
-% 非破壊的木構造では、排他制御をせずにデータを読むことが可能でありスケーラビリティを確保できる。
-% 
-% 非破壊的木構造を用いたデータベースとして、オブジェクト指向プログラミング言語 Java を用いた Jungle\texttrademark が存在する。
-% しかしながら、非破壊的木構造は破壊的代入がないためオブジェクト指向プログラミング言語よりも純粋関数型言語との相性が良いと考えられる。
-% 実際に、Java による実装でも Functional Java 用いて関数型プログラミングスタイルで記述されている。
-% 本研究では、純粋関数型言語 Haskell による Jungle の再実装を行った。
-% 
-% Haskell を用いることで、表現力や純粋性のメリットを享受することができる。
-% Haskell では、高度な型を一からつくり上げることができ、型情報を利用してコンパイル時に多くのエラーを捕捉できる。
-% また、並列処理において副作用に依存する問題から解放され処理が簡潔になった。 
-% そのうえ、Haskell による実装では、Java による実装と比較して開発期間およびコード行数が非常に短くなるといったメリットもあった。
-% 
-% 性能比較のために Haskell で書かれた HTTP サーバ Warp を用いて簡易掲示板システムを開発し、既存の Java の実装と同程度の性能を達成できた。
+本研究では、Haskell を用いて並列に読み書き可能なデータベースの実装を行う。
+並列にデータへアクセスする手法として、元となる木構造を変更することなく編集できる非破壊的木構造を用いる。
+非破壊的木構造は、破壊的代入が存在しない Haskell と相性がよい。
+
+実装した並列データベースの読み込みと書き込みについて性能を計測し、読み込みに関して高い並列度が確認できた。
+また、簡単な掲示板ウェブアプリケーションを開発し、既存の Java の非破壊的木構造データベースとの比較をおこない、Java 以上の性能を確認することができた。
+
 
 \end{abstract}
 
--- a/paper/introduciton.tex	Sat Feb 01 08:40:15 2014 +0900
+++ b/paper/introduciton.tex	Sat Feb 01 12:07:28 2014 +0900
@@ -13,20 +13,19 @@
 非破壊的木構造では、排他制御をせずにデータへアクセスすることが可能でありスケーラビリティを確保できる。
 
 データベースの実装には、純粋関数型言語 Haskell を用いる。
-Haskell を用いることで、表現力や純粋性のメリットを享受することができる。
-Haskell では、高度な型を一からつくり上げることができ、型情報を利用してコンパイル時に多くのエラーを捕捉できる。
-また、並列処理において副作用に依存する問題から解放され処理が簡潔になるといったメリットがある。
+Haskell は、モダンな型システムを持ち、型推論と型安全により簡潔で信頼性の高いプログラムを書くことが可能である。
+また、Haskellは純粋であるため、関数は引数が同じならば必ず同じ値を返すことが保証されている。
+これは、並列処理において並列化に適した部分が分かりやすくなるというメリットをもたらし、状態に依存したバグから解放されることを意味する。
 
-本研究で実装したデータベースを用いて、簡易掲示板システムを開発し、既存の Java による非破壊的木構造データベースと性能比較を行う。
-
+本論文では、Haskellを用いて非破壊的木構造データベースを実装し、スケーラビリティを実現できることを明らかにする。
 \newpage
 
 \section{本論文の構成}
 
-本論文では、データベースの開発によって得られた知見について述べる。
+本論文では、データベースの実装によって得られた知見について述べる。
 
 第\ref{ch:haskell}章では、純粋関数型言語 Haskell の特徴及び Haskell を用いた並列プログラミングについて述べる。
 第\ref{ch:design}章では、非破壊的木構造を用いたスケーラビリティ確保の方法について考察し、Haskellを用いたデータベースの設計について述べる。
 第\ref{ch:impl}章では、Haskellを用いた非破壊的木構造データベースの実装と、その利用方法について述べる。
-第\ref{ch:bench}章では、実装したデータベースのベンチマークを行う。
-簡易掲示板システムを開発し、既存の Java との性能比較を行う。
+第\ref{ch:bench}章では、実装したデータベースの性能評価を行う。
+実装したデータベースを用いて、簡単な掲示板ウェブアプリケーションを開発し、Java による非破壊的木構造データベースとの比較を行う。
Binary file paper/master_paper.pdf has changed