34
|
1 \chapter{研究背景と目的} \label{ch:introduction}
|
2
|
2 \pagenumbering{arabic}
|
|
3
|
64
|
4 Web サービスの脆弱性狙った攻撃が頻繁に発生している。
|
|
5 脆弱性を悪用されると、Web サービス運営者は賠償など多大な損害を受ける可能性がある。
|
|
6 純粋関数型プログラミング言語 Haskell は, バッファオーバーフローや, クロスサイトスクリプティング, SQL インジェクションを事前の型検査で防ぐことができる.
|
|
7 つまり, Haskell を用いることで信頼性の高い Web サービスを開発できると言える.
|
|
8
|
|
9 本研究の目標は, Haskell を用いて信頼性の高い Web サービスおよびデータベースの開発である.
|
|
10 また, 並列実行で性能が線形に向上するスケーラビリティの達成を目指す.
|
|
11 Web サービス のスケーラビリティを実現するための難点の一つはデータベースであり, データベースは並列にデータにアクセスできる設計が必要となる.
|
48
|
12
|
64
|
13 本研究では並列にデータへアクセスする手法として, 非破壊的木構造を利用する.
|
|
14 非破壊的木構造では, 排他制御をせずにデータへアクセスすることが可能でありスケーラビリティを確保できる\cite{shoshi:2010a}\cite{shoshi:2011a}\cite{shoshi:2011b}.
|
|
15
|
|
16 実装した並列データベースの読み込みと書き込みについて性能を計測し,
|
|
17 読み込みに関して 12 コアで実行した場合, 1 コアで実行した場合と比較して, 10.37 倍 という性能向上率が確認でき,
|
|
18 マルチコアプロセッサの性能を引き出すことができた.
|
|
19
|
|
20 また, Web 掲示板サービスを開発し, 既存の Java の非破壊的木構造データベースを用いた掲示板実装との比較をおこない, 読み込みで 3.25 倍, 書き込みで 3.78 倍の性能が確認できた.
|
|
21
|
|
22 本研究は JST/CREST 「実用化を目指した組み込みシステム用ディペンダブル・オペレーティングシステム」研究領域 (DEOSプロジェクト) として実施した.
|
65
|
23 本研究ではDEOSプロジェクト内の D-ADD (DEOS Agreement Description Database) を, 信頼性を持って構築ができる非破壊的木構造データベースの実装を示した.
|
64
|
24
|
|
25 DEOSプロジェクトはITシステムにおけるディペンダビリティを担保する技術体系をまとめ, 制度化, さらには事業化を目指している.
|
48
|
26 DEOSプロジェクトは2006年に独立行政法人科学技術機構(JST)はCRESTプログラムの1つとして始まったプロジェクトである.
|
|
27 DEOSプロジェクトは, 変化し続ける目的や環境の中でシステムを適切に対応させ, 継続的にユーザが求めるサービスを提供することができるシステムの構築法を開発することを目標としている\cite{deos2013}.
|
|
28 DEOSプロジェクトではそれらの技術体系を「オープンシステムディペンダビリティ」として定義し, それをDEOSプロセスとしてまとめた(図\ref{fig:deos_proccess}).
|
|
29
|
|
30 \begin{figure}[htpb]
|
|
31 \begin{center}
|
|
32 \includegraphics[scale=0.5]{images/deos_proccess.pdf}
|
|
33 \caption{DEOS プロセス}
|
|
34 \label{fig:deos_proccess}
|
|
35 \end{center}
|
|
36 \end{figure}
|
|
37
|
|
38 DEOSプロセスには変化対応サイクルと障害対応サイクルの2つのサイクルがある.
|
|
39 変化対応サイクルは上流プロセスにおける対象システムのオープンシステムディペンダビリティを担保するためのプロセスである.
|
|
40 障害対応サイクルは対象システムの運用時に必要とされるプロセスである.
|
|
41 DEOSプロセスは企画や設計という上流からシステム運用までの対象システムのライフサイクル全体に係わる.
|
|
42 対象システムの運用は, ステークホルダからの対象システムに対する要求に関する
|
|
43 合意を始めとしたあらゆる議論に関する合意をベースに行われる.
|
|
44
|
|
45 DEOS プロセスを構成している各(サブ)プロセスからアクセスが行われるデータベースとして D-ADD(DEOS Agreement Description Database)がある\cite{d_add2013}.
|
|
46 D-ADD はステークホルダ合意と対象システムに存在するプログラム・コード, 及び対象システムの運用状態との間の一貫性を常に保つための機構を提供する.
|
|
47 このようなデータベースは様々なデータを柔軟に格納する必要があり, データベーススキーマの頻繁な変化に対応する必要がある.
|
|
48 これらのデータベースは, Web からアクセスされることも想定される.
|
|
49 そのため, DEOSは Web サービスとして捉えることができる.
|