# HG changeset patch # User Nobuyasu Oshiro # Date 1391114338 -32400 # Node ID c63aaa6293305d2bd1657b13d64068f5f49e6349 # Parent cd3b8cf7a3a1ff86125d64458d4c41b96735e453 Added dat files diff -r cd3b8cf7a3a1 -r c63aaa629330 paper/.DS_Store Binary file paper/.DS_Store has changed diff -r cd3b8cf7a3a1 -r c63aaa629330 paper/chapter3.tex --- a/paper/chapter3.tex Thu Jan 30 20:22:22 2014 +0900 +++ b/paper/chapter3.tex Fri Jan 31 05:38:58 2014 +0900 @@ -236,22 +236,36 @@ 送受信が可能である. -\section{Aliceを用いたJungleの分散実装} -ここまでAliceを用いたプログラミングの方法について述べた. +\section{ログのシリアライズ} +Jungleの具体的な分散実装について述べる. +Jungleの分散実装はデータ編集のログを他のサーバに送ることで行うことを第3章で説明した. +実装にあたり, 解決しなければならない問題はまず, ログをDataSegmentで扱える形にすることである. +そのためには, @Messageアノテーションを付けたログのクラスの作成を行わなければならない. + + +\subsection{TreeOperationLogの実体} +TreeOperationの仕様は次の通りである. +\begin{lstlisting}[frame=lrbt,label=src:treeoperationlog,aption=TreeOperationLogの仕様,numbers=left] +public interface TreeOperationLog extends Iterable +{ + public TreeOperationLog add(NodePath _p,NodeOperation _op); + public TreeOperationLog append(TreeOperationLog _log); + public int length(); +} +\end{lstlisting} -\subsection{ログのシリアライズ} -ここでログのシリアライズについて述べる. +% TreeOperationLog に木の名前の情報がない +% そのため木の名前を追加して持たせた +% 木がなければそのばでつくるようにした - -シリアライズとは, データをネットワーク上に流しても良い形式に変換することである. +\subsection{local専用の編集の用意} \subsection{} -% TreeOperationLog に木の名前の情報がない -% そのため木の名前を追加して持たせた -% 木がなければそのばでつくるようにした + + \section{掲示板プログラムにおけるマージの実装} Jungle に分散実装を行った後の問題としてデータ衝突がある. diff -r cd3b8cf7a3a1 -r c63aaa629330 paper/chapter4.tex --- a/paper/chapter4.tex Thu Jan 30 20:22:22 2014 +0900 +++ b/paper/chapter4.tex Fri Jan 31 05:38:58 2014 +0900 @@ -43,6 +43,8 @@ \end{center} \end{figure} +\subsection{Torque Resource Manager} + \subsection{weighttp} 最初の実験で1つのノードに負荷をかけるプログラムはウェブサーバの測定ツールであるweighttpを使用する. weighttpは総リクエスト数, 同時接続数, ネイティブスレッド数をオプションとして指定することができるC言語 @@ -53,6 +55,19 @@ 今回使用する掲示板プログラムは組み込み用ウェブサーバであるJettyをフロントエンドとして利用し, バックエンド に Jungle と Cassandra を利用している. +\begin{table}[!htbp] +\caption{簡易掲示板システムで利用したJettyとCassandraのバージョン} +\label{tab:bulletinboard_components} +\begin{center} +\begin{tabular}{|c||c|} \hline +名前 & バージョン \\ \hline \hline +Jetty & 6.1.26 \\ \hline +Cassandra & 2.0.4 \\ \hline +\end{tabular} +\end{center} +\end{table} + + \subsection{実験環境} diff -r cd3b8cf7a3a1 -r c63aaa629330 paper/gnuplot/makegraph_distributed_read.sh --- a/paper/gnuplot/makegraph_distributed_read.sh Thu Jan 30 20:22:22 2014 +0900 +++ b/paper/gnuplot/makegraph_distributed_read.sh Fri Jan 31 05:38:58 2014 +0900 @@ -3,7 +3,8 @@ set terminal postscript eps set output 'distributed_read_bench.eps' set title 'distributed read benchmark (Requests : clients * 50,000)' +set xrange[8:32] set xlabel 'number of nodes and clients' set ylabel 'time(sec)' -plot 'distributed_read_jungle.dat' title 'Jungle' lt rgb "blue" with linespoints, 'distributed_read_cassandra_quorum.dat' title "Cassandra Consistency Level Quorum" lt rgb "red" with linespoints, 'distributed_read_cassandra_one.dat' title "Cassandra Consistency Level ONE" lt rgb "dark-red" with linespoints +plot 'read_jungle_errorbar.dat' using 1:2:3 title 'Jungle' lt rgb "blue" with errorbars, 'distributed_read_cassandra_quorum.dat' title "Cassandra Consistency Level Quorum" lt rgb "red" with linespoints, 'distributed_read_cassandra_one.dat' title "Cassandra Consistency Level ONE" lt rgb "dark-red" with linespoints EOF diff -r cd3b8cf7a3a1 -r c63aaa629330 paper/gnuplot/makegraph_distributed_write.sh --- a/paper/gnuplot/makegraph_distributed_write.sh Thu Jan 30 20:22:22 2014 +0900 +++ b/paper/gnuplot/makegraph_distributed_write.sh Fri Jan 31 05:38:58 2014 +0900 @@ -3,7 +3,8 @@ set terminal postscript eps set output 'distributed_write_bench.eps' set title 'write benchmark (Requests : clients * 50,000)' +set xrange[8:32] set xlabel 'number of nodes' set ylabel 'time(sec)' -plot 'distributed_write_jungle.dat' title 'Jungle' lt rgb "blue" with linespoints, 'distributed_write_cassandra_quorum.dat' title "Cassandra Consistency Level Quorum" lt rgb "red" with linespoints,'distributed_write_cassandra_one.dat' title "Cassandra Consistency Level ONE" lt rgb "dark-red" with linespoints +plot 'write_jungle_errorbar.dat' using 1:2:3 title 'Jungle' lt rgb "blue" with errorbars, 'distributed_write_cassandra_quorum.dat' title "Cassandra Consistency Level Quorum" lt rgb "red" with linespoints,'distributed_write_cassandra_one.dat' title "Cassandra Consistency Level ONE" lt rgb "dark-red" with linespoints EOF diff -r cd3b8cf7a3a1 -r c63aaa629330 paper/gnuplot/read_jungle_errorbar.dat --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/paper/gnuplot/read_jungle_errorbar.dat Fri Jan 31 05:38:58 2014 +0900 @@ -0,0 +1,5 @@ +30 10.924 3.534 +25 10.471 3.131 +20 8.173 2.272 +15 8.164 1.55 +10 5.118 3.167 \ No newline at end of file diff -r cd3b8cf7a3a1 -r c63aaa629330 paper/gnuplot/write_jungle_errorbar.dat --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/paper/gnuplot/write_jungle_errorbar.dat Fri Jan 31 05:38:58 2014 +0900 @@ -0,0 +1,5 @@ +30 19.144 11.526 +25 17.685 7.657 +20 16.688 5.387 +15 15.149 5.443 +10 19.412 8.103 diff -r cd3b8cf7a3a1 -r c63aaa629330 paper/master_paper.pdf Binary file paper/master_paper.pdf has changed