ニュートリノ実験でのデータ管理システム...ニュートリノ実験でのデータ管理システム...

4
ニュートリノ実験でのデータ管理システム 飯田 好美* 1 * 1 高エネルギー加速器研究機構 1. はじめに T2K Tokai to Kamioka)実験 [1] は長基線ニュートリノ振 動実験で、ニュートリノ振動の電子を測定することを目的 としている。T2K では J-PARC(東海村)にある世界最高 強度の 50GeV 陽子シンクロトンでニュートリノビームを 生成しており、 J-PARC から 295km 離れたスーパーカミオ カンデ(SK)の観測装置に向けて発射される(1)T2K 実験では SK での観測結果とニュートリノ振動があ る場合の予想とを比較することで振動パラメータを測定 する。この予想には振動前のデータの研究が重要となるた め、前置ニュートリノ測定器でその研究を行う。前置測定 器は J-PARC 敷地内のニュートリノ生成標的から 280m 流にある ND280 実験ホールに設置されており、ニュート リノビームのモニターとビーム方向測定を主目的とする 測定器と、エネルギースペクトル、ニュートリノ反応断面 積などの研究を主目的とする検出器システムから構成されている。 前置測定器で検出されたデータは、採取後すぐに世界中の共同利用者が利用可能である必要がある。そのため、データ 分配システムが必要であり、それを実現するためのデータ管理システムとして iRODS [2] を導入した。 2. T2K ND280 前置測定器で検出されたデータは、集められるとすぐに分析に使用できるかどうかの査定を行う。2010 年に保管しリ モートからアクセスする必要があったデータは約 60,000 ファイルあった。2010 年はシャットダウン時間が多くあったた め、採取期間は 1 年のほんの一部分である。近い将来、陽子の数の増加に伴い、ファイル数はかなり増加すると予想され る。また、全てのファイルは同じサイズではない。それらは 3 つのカテゴリに分類でき、ほぼ同じ比率で存在する。1 は超小型ファイル(1kB 以下)、1 つは小型ファイル(約 2MB)、そして大型ファイル(10MB 以上)であり、全てのファ イルの総データ量は約 360GB である。 これらのデータを配布するためのシステムとしてユーザが要求したことは、 500 名を超える共同利用者が容易にダウン ロードできるアクセス方法である。最も簡単な方法として提案したのは、読み出し権限を持つアカウントを T2K 共同利 用者に配布し、Web インターフェイスを通してダウンロードすることである。その他に、より詳細なファイル操作が必 要なユーザのためにコマンドラインインターフェイス(CLI)も必要である。また、Web インターフェイスからも CLI らもファイルの検索が可能であることが求められる。 3. iRODS iRODS integrated Rule Oriented Data System の略で、アメリカ ノースカロライナ大学の Data Intensive Cyber Environments DICE)グループが開発したソフトで、 DICE グループが前に開発したデータ管理システム、 Storage Resource 1 T2K 検出器の概要図

Upload: others

Post on 31-Dec-2019

2 views

Category:

Documents


0 download

TRANSCRIPT

ニュートリノ実験でのデータ管理システム

飯田 好美*1

*1高エネルギー加速器研究機構

1. はじめに

T2K(Tokai to Kamioka)実験[1]は長基線ニュートリノ振

動実験で、ニュートリノ振動の電子を測定することを目的

としている。T2K では J-PARC(東海村)にある世界最高

強度の 50GeV 陽子シンクロトンでニュートリノビームを

生成しており、J-PARC から 295km 離れたスーパーカミオ

カンデ(SK)の観測装置に向けて発射される(図 1)。

T2K実験では SKでの観測結果とニュートリノ振動があ

る場合の予想とを比較することで振動パラメータを測定

する。この予想には振動前のデータの研究が重要となるた

め、前置ニュートリノ測定器でその研究を行う。前置測定

器は J-PARC 敷地内のニュートリノ生成標的から 280m 下

流にある ND280 実験ホールに設置されており、ニュート

リノビームのモニターとビーム方向測定を主目的とする

測定器と、エネルギースペクトル、ニュートリノ反応断面

積などの研究を主目的とする検出器システムから構成されている。

前置測定器で検出されたデータは、採取後すぐに世界中の共同利用者が利用可能である必要がある。そのため、データ

分配システムが必要であり、それを実現するためのデータ管理システムとして iRODS[2]を導入した。

2. T2K ND280

前置測定器で検出されたデータは、集められるとすぐに分析に使用できるかどうかの査定を行う。2010 年に保管しリ

モートからアクセスする必要があったデータは約 60,000 ファイルあった。2010 年はシャットダウン時間が多くあったた

め、採取期間は 1 年のほんの一部分である。近い将来、陽子の数の増加に伴い、ファイル数はかなり増加すると予想され

る。また、全てのファイルは同じサイズではない。それらは 3 つのカテゴリに分類でき、ほぼ同じ比率で存在する。1 つ

は超小型ファイル(1kB 以下)、1 つは小型ファイル(約 2MB)、そして大型ファイル(10MB 以上)であり、全てのファ

イルの総データ量は約 360GB である。

これらのデータを配布するためのシステムとしてユーザが要求したことは、500 名を超える共同利用者が容易にダウン

ロードできるアクセス方法である。最も簡単な方法として提案したのは、読み出し権限を持つアカウントを T2K 共同利

用者に配布し、Web インターフェイスを通してダウンロードすることである。その他に、より詳細なファイル操作が必

要なユーザのためにコマンドラインインターフェイス(CLI)も必要である。また、Web インターフェイスからも CLI か

らもファイルの検索が可能であることが求められる。

3. iRODS

iRODS は integrated Rule Oriented Data System の略で、アメリカ ノースカロライナ大学の Data Intensive Cyber

Environments(DICE)グループが開発したソフトで、DICE グループが前に開発したデータ管理システム、Storage Resource

図1 T2K検出器の概要図

Broker(SRB)の経験を基に作られている。iRODS は内在するストレージシステムを論理的に扱うオープンソースでポリ

シーベースのデータ管理システムである。これを使うことで、ストレージシステムの種類の変更や場所の変更が容易にな

り、新しいストレージを追加してもシステムへのアクセス方法に影響がない。ファイルシステムへのアクセスには論理名

を使い、iRODS の管理するカタログデータベース(現在は PostgreSQL、ORACLE、MySQL が利用可能)が論理名と物理

名の照合を行う。ストレージシステムへの実際のアクセスは iRODS ドライバーが行い、現在はシステムへの POSIX 標準

インターフェイスを提供している。

また、iRODS はいくつかのユーザ認証方式を採用しており、Kerberos、セキュアユーザ名/パスワード、Grid Security

Infrastructure(GSI)がある。ユーザグループはグループへのユーザの追加・削除によってデータコレクション(iRODS

の論理ディレクトリ)の権限管理をより簡単にすることができ、コレクションごとにアクセス権限を設定することはもち

ろん、権限の継承をサブコレクションへ行うか行わないかの設定も可能である。

iRODS ではどんなオブジェクト(ユーザ、ストレージリソース、データ)に対しても、iRODS ルールエンジンによっ

て実行されるサーバサイドのワークフローである iRODS ルールによって、ポリシーを設定することができる。iRODS ル

ールはイベント名・コンディション・アクションから構成されており、iRODS サーバのルールファイルに記載されている。

iRODS ルールエンジンはルールファイルの上から下へ順にルールをチェックし、コンディションが最初に一致したルー

ルを実行する。最優先のルールをファイルの上部に書くことで、そのルールを覆すルールが下部にあったとしても無効に

できる。ルールは複数のアクションが設定されていた場合、左から右まで連続して実行される。

iRODS システムはストレージリソースを扱う iRODS サーバと、論理名と物理名のマッピングやアクセスコントロール

情報を扱う iRODS メタデータカタログのインターフェイスを持つ iRODS サーバ(IES)から構成される。iRODS ルール

エンジンは全ての iRODS サーバで稼動する。クライアントツール(コマンドや Web)は iRODS 認証を行うことで iRODS

サーバとセッションを開始し通信を行う。それぞれの iRODS 通信は、その操作がルールを呼び出すコンディションに一

致するかをルールエンジンがチェックする引き金となる。デフォルトで、コレクション内のリストを表示するコマンド

(ils)を除く全ての操作はルールエンジンの引き金となる。

4. 構成

T2K ND280 グループは、世界中の共同利用者から利用可能で大量の小型ファイルを効果的に扱うことが出来るストレ

ージを要求した。高エネルギー加速器研究機構共通計算機システム(KEKCC)で導入されている大容量ストレージシス

テム HPSS[3]は、セキュリティ確保のため

にアクセス元を制限しており、バックエ

ンドがテープライブラリ装置であるため

小型ファイルを大量に保存すると性能が

落ちることが考えられる。そのため、

HPSS に保管されたデータを管理するフ

ァイルシステムとして iRODS を使用し

た。iRODS をベースとしたシステムの構

成図は図 2 の通りである。iRODS 通信に

必要な指定ポートは J-PARCとKEKの間

で開放している。J-PARC で採取されたデ

ータは KEK のキャッシュストレージに

送られる(1)。送られたデータの総量が

1GBを超えるとデータを tarで固めHPSS 図 2 iRODS をベースとしたシステムの構成図

へ保存するルールが実行され(2)、1GB 未満のときはバックアップ領域に複製を作成するルールが実行される(3)。ル

ールはキャッシュ領域にあるデータの総量を 6 時間おきにチェックし、1GB に達していた場合は tar ファイルに固めて

HPSS へ保存し、キャッシュ領域とバックアップ領域から削除する。

KEK や J-PARC 以外の研究機関にいる共同利用者は iRODS PHP ブラウザかコマンドラインを使用してデータへアクセ

スする(4)。外部からのアクセスには書き込み禁止 iRODS アカウントを使用し、データの改竄やウィルス付ファイルの

書き込みなどの危険性を最小限にする。

5. iRODS ルール

iRODS システムの利点として、ユーザやデータに関するポリシーを設定できることがある。本システムではデータ管

理に関するルールを作成し、それをデフォルトのルールファイルに追加した。このルールでは、キャッシュディスク上の

総データ量が 1GB 未満ならバックアップ領域にファイルをバックアップする(c)。総データ量が 1GB を超えた時点でそ

れらを tar ファイルに固めて HPSS 領域へ格納し(a)、キャッシュ領域、バックアップ領域にあったデータを削除する(b)。

このルール acBunAndRepThenTrim は以下の通りである。

acBunAndRepThenTrim(*collPath, *cacheRes, *backRes, *compRes, *threshold, *bundlePath)||

msiCheckCollSize(*collPath, *cacheRes, *threshold, *aboveThreshold, *status)##

ifExec(

*aboveThreshold == 1,

msiWriteRodsLog("Creating bundle", *status)##

(a) msiPhyBundleColl(*collPath, *backRes, *status)##

msiCollRepl(*bundlePath, verifyChksum++++backupRescName=*compRes, *status)##

msiWriteRodsLog("Finished replicating bundle", *status)##

acKEKTrimData(*collPath, *cacheRes)##

(b) acKEKTrimData(*bundlePath, *backRes),

nop##nop##nop##nop##nop##nop,

msiWriteRodsLog("Starting to backup files", *status)##

acGetIcatResults(list, COLL_NAME LIKE '*collPath%%', *List)##

forEachExec(

*List, msiGetValByKey(*List, DATA_NAME, *Data)##

msiGetValByKey(*List, COLL_NAME, *Coll)##

msiGetValByKey(*List, DATA_RESC_NAME, *dataRes)##

ifExec(

(c) *dataRes == *cacheRes,

msiWriteRodsLog("Replicating file *Coll/*Data", *status)##

msiDataObjRepl(*Coll/*Data, verifyChksum++++backupRescName=*backRes, *status)##

msiWriteRodsLog("Completed replicating file *Coll/*Data", *status),

nop##nop##nop,

nop,

nop

),

nop##nop##nop##nop

),

nop##nop##nop

)|nop##nop

このルールでは最初に msiCheckCollSizeマイクロサービスで、指定したコレクション内の総データ量が threshold値(本

システムでは 1GB)以上であるかをチェックし、それを満たす場合は aboveThreshold を1として返す。満たした場合、

msiPhyBundleCollマイクロサービスがそれらのファイルを tar で固めてバックアップ領域に作成し、その tar ファイルの複

製を HPSS 領域に作成する(a)。その後、キャッシュ領域、バックアップ領域にあるデータを acKEKTrimData ルールで

削除する(b)。もし、aboveThresholdが0の場合、acGetIcatResultsルールでコレクション内のファイルのメタデータを取

り出し、キャッシュ領域にあるファイルを msiDataObjReplルールでバックアップ領域へ複製する(c)。msiPhyBundleColl

マイクロサービスによって作成された tar ファイルはクライアントからのアクセスがあると指定したキャッシュ領域に展

開される。本システムでは tar ファイルの格納先を HPSS、展開先をディスクストレージとすることで、小型ファイルの

扱いが苦手な HPSS を有効に利用することが可能となった。

6. まとめ

KEK では T2K ND280 グループが要求するファイルシステムとして iRODS を使ったデータ管理システムを提供した。

iRODS PHP ブラウザを導入し、書き込み禁止アカウントを作成することで、世界中から安全にデータをダウンロードす

る方法を実現した。iRODS ルールを作成することで、HPSS で大量の小型ファイルを扱う方法を簡素化した。

iRODS はシンプルな構成となっているため導入が比較的容易であり、小規模な実験グループやデータ管理のみを一元

化したいグループへの導入を進めたい。

7. 謝辞

本システム構築に協力いただいたリバプール大学 Adil Hasan 博士、ロンドン大学クイーン・メアリーFrancesca Di

Lodovico 博士に感謝する。

8. 参照

[1] 大強度陽子加速器を用いた次期ニュートリノ振動実験計画 http://www-nu.kek.jp/jhfnu/index.html

[2] iRODS https://www.irods.org/index.php

[3] HPSS http://www.hpss-collaboration.org/