annotate paper/introduciton.tex @ 66:493c5c90ca55

Writed introduction.tx
author Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
date Sat, 01 Feb 2014 20:25:42 +0900
parents 27d920592c13
children 2fa14ca42ca6
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
90adb016389d First commit
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
1 \chapter{序論}
90adb016389d First commit
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
2 \pagenumbering{arabic}
65
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 62
diff changeset
3
66
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
4 ウェブサービスにおいてデータベースは必須となってきている.
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
5 ウェブサービスの規模に比例してデータベースへの負荷も大きなものとなってきており, データベースの
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
6 処理能力の高さはそのままウェブサービスの質にも繋がってくる.
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
7 データベースの処理能力をスケールさせる方法としてスケールアップ(垂直スケール)と
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
8 スケールアウト(水平スケール)の考えがある.
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
9 スケールアップはハードウェア的に高価な単一のマシンを用意することで処理性能を上げることをさす.
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
10 スケールアウトは汎用的なマシンをいくつも用意し, 処理を分散させることで処理性能を上げることをさす.
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
11 単純に処理能力をあげたいのならば, スケールアップは有効である.
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
12 しかし, 単一のマシンを高性能にしても限界がある.
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
13 いずれはそのマシン単体が処理できない程負荷が増えるかもしれないし, ネットワーク帯域といったマシン
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
14 以外のハードウェアでボトルネックが発生するかもしれない.
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
15 これではコストがかかってしまう.
65
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 62
diff changeset
16
66
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
17 それに対しスケールアウトは, 処理が重くなるにつれて汎用的なマシンを順次追加していくことで
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
18 性能をあげていく.
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
19 1つのマシンに対して負荷が重くなるということを避けるため, ハードウェア的に高性能なマシンを要求
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
20 せずにすみ, 柔軟な対応をとることができる.
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
21 ウェブサービスでにおけるデータベースの性能をあげる方法としては, このスケールアウトが求められている.
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
22 それは使用されるデータベースにも言える.
9
c09b83fe37ef Writed abstract
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
23
66
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
24 本研究で扱うスケーラビリティはこのスケールアウトのことをさす.
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
25 そういう意味では最も使われているデータベースであるRelational Databaseはスケーラビリティを持たない.
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
26 Relational Databaseにはないスケーラビリティを持つデータベースとしてNoSQLと呼ばれる
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
27 データベースがある.
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
28 それらはConsistency HashinやShardingといった方法を使いデータを分散させスケーラビリティを得ている.
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
29 データベースにおいてデータを分散させスケーラビリティを上げることはもはや必須となっている.
0
90adb016389d First commit
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
30
66
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
31 本論文では, スケーラビリティのあるデータベースを目指して木構造データベースJungleの研究を行った.
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
32 Jungleに分散と永続性の実装を行った.
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
33 既存の分散データベースであるCassandraとの比較を行うため, 簡易掲示板を作成し並列環境から負荷をかけることで
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
34 性能比較を行った.
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
35
493c5c90ca55 Writed introduction.tx
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 65
diff changeset
36 \newpage
0
90adb016389d First commit
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
37
50
faa708c2958b Added log
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 38
diff changeset
38 \section{本論文の構成}
30
92bc4faa9a37 Added benchmark images
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 27
diff changeset
39 本論文では, 始めに分散データベースについて既存の製品を例に上げながら述べる.
62
2cb5ac9282b0 writed description of ods.put
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 57
diff changeset
40 RDBとNoSQLについて説明し, 既存のNoSQLデータベースの特徴について説明する.
57
39c2180b5719 Added log
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 50
diff changeset
41 第3章では, Jungleの持つデータ構造, 非破壊的木構造について説明し, Jungleにおけるデータ編集について述べる.
39c2180b5719 Added log
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 50
diff changeset
42 第4章では, 非破壊的木構造による Jungle の基本設計と, 分散バージョン管理システムを参考にした分散設計
30
92bc4faa9a37 Added benchmark images
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 27
diff changeset
43 について述べる.
57
39c2180b5719 Added log
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 50
diff changeset
44 第5章では, 第4章で行った設計を元にJungleへ行った分散実装について述べる.
39c2180b5719 Added log
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 50
diff changeset
45 第6章では, 第5章で実装した分散データベースJungleの評価を行うため, 簡易掲示板プログラムを実装する.
39c2180b5719 Added log
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 50
diff changeset
46 この掲示板プログラムはJungleとCassanraそれぞれのデータベースを使うものを用意した.
30
92bc4faa9a37 Added benchmark images
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 27
diff changeset
47 学科の並列環境上で開発した掲示板プログラムを複数のノードで実行させ, 負荷をかけることで Jungle と Cassandra の
92bc4faa9a37 Added benchmark images
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 27
diff changeset
48 性能比較を行う.
92bc4faa9a37 Added benchmark images
Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 27
diff changeset
49 第6章は, 本研究におけるまとめと今後の課題について述べる.