Mercurial > hg > Papers > 2014 > nobuyasu-master
diff paper/chapter3.tex @ 69:4f31182c8244
fixed
author | Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Sat, 01 Feb 2014 22:41:24 +0900 |
parents | d770a2b534b3 |
children | 4e8bfd65768f |
line wrap: on
line diff
--- a/paper/chapter3.tex Sat Feb 01 21:06:49 2014 +0900 +++ b/paper/chapter3.tex Sat Feb 01 22:41:24 2014 +0900 @@ -98,7 +98,7 @@ また, データ分散のために形成したトポロジー上で扱うデータを決めなければならない. -\subsection{ツリートポロジーの形成} +\subsection{ツリートポロジーの形成とルーティング} 分散データーベス Jungle で形成されるネットワークトポロジーはツリー構造を想定している. ツリー構造ならば, データの整合性をとる場合, 一度トップまでデータを伝搬させることで行える. トップもしくはトップまでの間にあるサーバノードでデータ伝搬中に衝突が発生したらMergeを行い, Mergeの結果を改めて伝搬すれば @@ -140,9 +140,8 @@ \end{minipage} \end{figure} - そこで当研究室で開発を行っている並列分散フレームワークである Alice を使用する. -Alice はユーザが望んだマシンへの接続や必要なデータへのアクセスを行う機構と, 接続トポロジー +Alice はユーザが望んだマシンへの接続や必要なデータへのアクセスを行う機構と, ネットワークトポロジー 形成機能を提供している. % トポロジー形成の説明をする. 重要さなども。 @@ -155,9 +154,9 @@ \section{並列分散フレームワークAlice} Alice は当研究室で開発している並列分散フレームワークである. Alice はデータを DataSegment, タスクを CodeSegment という単位で扱うプログラミングを提供している. -コードの部分となる CodeSegment は, 計算に必要なデータである DataSegment が揃い次第実行が行われる(図\ref{fig:cs_ds}). +タスクの部分となる CodeSegment は, 計算に必要なデータである DataSegment が揃い次第実行が行われる(図\ref{fig:cs_ds}). CodeSegment の結果により出力される新たなデータでは, 別の CodeSegment が実行されるための DataSegment となる. -DataSegment と CodeSegment の組み合わせにより並列・分散プログラミングの依存関係が表される. +DataSegment と CodeSegment の組み合わせにより並列・分散プログラミングの依存関係が表されるようになっている. \begin{figure}[htpb] \begin{center} @@ -168,7 +167,7 @@ \end{figure} \subsection{MessagePack によるシリアライズ} -Alice では DataSegment のデータ表現に MessagePack(http://msgpack.org) を利用している. +Alice では DataSegment のデータ表現に MessagePack\cite{msgpack:2013}を利用している. MessagePack はオブジェクトをバイナリへと変換させるシリアライズライブラリである. Alice によりネットワークを介してデータにアクセスするときは, そのデータが MessagePack でシリアライズが 行えることが条件である. @@ -176,7 +175,7 @@ \section{Jungle のデータ分散} -Alice によりトポロジーの形成とデータアクセスの機構が提供された. +Alice によりトポロジーの形成とデータアクセスの機構が提供される. 後はデータ分散の為にどのデータをネットワークに流すのか決めなければならない. そこで選ばれたのが TreeOperationLog である. TreeOperationLog はデータ編集の履歴になる. @@ -197,11 +196,11 @@ ディスクからデータを読み込むことでデータの復旧を行えるようにしたい. そこで, ログによるデータの永続性の実装を行う. -Jungleの永続性実装の余地としてJournalという機能が用意されている. +Jungleの永続性実装の余地としてJournalという機能が元々用意されている. このJournalにはディスクへ書き出すためのクラスとしてWriterが用意されている. Jungleはデータの編集が完了した際にこのWriterクラスのwrite関数を呼び出すようになっている. -このJournalとWriterクラスを新たに用意し, ディスクへと書き込み行える機能を実装する. +このJournalとWriterクラスを新たに用意し, ディスクへと書き込みが行える機能を実装する. このとき, ログをどのようなデータ表現でハードディスクへと書きだすかという問題が発生するが, これは Alice を使うことで 解決している. Aliceを用いるためMessagePackによりシリアライズ可能な TreeOperationLog ができる.