diff paper/chapter3.tex @ 21:a4dfb70496ee

Added figure
author Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
date Thu, 23 Jan 2014 16:35:50 +0900
parents a7fbd5db80fb
children 56753cfbeeab
line wrap: on
line diff
--- a/paper/chapter3.tex	Thu Jan 23 15:33:54 2014 +0900
+++ b/paper/chapter3.tex	Thu Jan 23 16:35:50 2014 +0900
@@ -78,7 +78,7 @@
 次に続く label="child1" は, node0 が node1 のデータに"child1"という文字列を使うことでアクセス
 できることを示す.
 
-dot ファイルを読み込んだ Alice のトポロジーマネージャーに対して, サーバーノードは
+dot ファイルを読み込んだ Alice のトポロジーマネージャーに対して, サーバノードは
 誰に接続を行えばよいかを訪ねる.
 トポロジーマネージャーは訪ねてきたサーバノードに対してノード番号を割り振り, dot ファイル
 に記述している通りにサーバノード同士が接続を行うよう指示をだす.
@@ -111,29 +111,52 @@
 }
 \end{lstlisting}
 
-そして, プログラムの起動時にトポロジーマネージャーが動いているサーバの
 
-
-
-\begin{comment}
-\subsection{トポロジー用 dot ファイル形成スクリプト}
-Alice ではトポロジー形成用スクリプトが用意されている.
-スクリプトを使用することで, ノードの数を指定するだけで dot ファイルの作成が行える.
-また, ツリーに限らずリングやメッシュといったトポロジーの形成も行うことができる.
-\end{comment}
+そして, プログラムの起動時にはトポロジーマネージャーが動いているサーバのドメインとポート番号を
+渡すことでトポロジーの形成が行われれプログラムの処理がはしる.
+例えば, mass00.cs.ie.u-ryukyu.ac.jp というサーバ上でポート番号10000を指定してトポロジーマネージャーを
+起動した場合は次のようになる(\ref{src:run_program}).
+\begin{lstlisting}[frame=lrbt,label=src:run_program,caption=トポロジーマネージャーの利用,numbers=left]
+% java Program -host mass00.cs.ie.u-ryukyu.ac.jp -port 10000 
+\end{lstlisting}
 
 % MessagePackの説明もここに簡単に入れたほうがいいかも.
 
 \section{Aliceを用いての分散実装}
-Alice によりトポロジーの形成を行うことができれば, 後はデータの送受信を行う部分の実装になる.
+形成されたトポロジー上でのデータの送受信を行う部分について述べる.
 
 
 \section{ログのシリアライズ}
+ここでログのシリアライズについて述べる.
 
-ログのシリアライズについて述べる.
 シリアライズとは, データをネットワーク上に流しても良い形式に変換することである.
 
 
 \section{Jungleの永続性の実装}
-\subsection{マージの実装}
+
+
+\section{マージの実装}
+Jungle への分散実装を行うことである問題が発生する.
+それは更新されたデータ同士が衝突を起こした時の処理である.
+Jungle はリクエストがきた場合, 現在もっているデータを返す.
+しかしそのデータは最新のものであるかは保証されない.
+よって, 別のサーバノードで動いている Jungle からの更新データと衝突する可能性がある.
+
+この問題に対して Jungle はアプリケーションレベルでのマージを実装して貰うことで解決をはかる.
+今回 Jungle に分散を行うにあたり掲示板プログラムを実装した.
+掲示板プログラムに実装を行ったマージの例について述べる.
 
+Jungle を用いた掲示板プログラムのデータ保持方法を示したのが図\ref{fig:merge1}になる.
+\begin{figure}[htpb]
+  \begin{center}
+    \includegraphics[scale=0.70]{figures/merge1.pdf}
+    \caption{Jungle による掲示板プログラムのデータ保持方法}
+    \label{fig:merge1}
+  \end{center}
+\end{figure}
+
+掲示板プログラムでは各掲示板毎に1つの木構造が作成される.
+また, この時作成された木構造データのルートノードを保持する木構造が別にある.
+
+
+