• 検索結果がありません。

society 2013b poster

N/A
N/A
Protected

Academic year: 2018

シェア "society 2013b poster"

Copied!
1
0
0

読み込み中.... (全文を見る)

全文

(1)

ALMAキューブデータ閲覧用ウェブビューアの開発

○江⼝ 智⼠

、川崎 渉、⽩崎 裕治、⼩宮 悠、大⽯ 雅寿、⽔本 好彦、⼩杉 城治

Abstract

ALMA望遠鏡は、チリに建設された世界最大の電波望遠鏡である。ALMAによってもたらされる⾼空間分解能・⾼周波

数分解能のデータにより、新たな天⽂学的知⾒が得られることが期待されるいっぽう、そのデータサイズは巨大であ

り、標準較正済みのものでも2 TBを超えると⾒積もられている。そこで国⽴天⽂台では、バーチャル天⽂台の技術を

活用し、Japanese Virtual Observatoryのポータルサイト上で動作するウェブアプリケーション(ALMAWebQL)で巨大

なデータキューブの中から⼀部を動的に切り出し、それをデスクトップビューア(Vissage)でより詳細に解析すること

で、限りあるネットワークおよび計算機資源を有効利用するアプローチをとっている(川崎他参照)。本ポスターでは、

ALMAWebQLの設計等、技術的側⾯について解説する。

1. Introduction

  世界の天⽂データアーカイブ(⽣データ)の 容量は、「1年半で約2倍」という猛烈な勢 いで増え続けている。世界最大の電波望遠 鏡であるALMAの場合、 年間PBもの⽣デー タが⽣成される⾒込みである。実際にはこ こからパイプラインを通過したもの我々は 使用することになるが、それでも1天体につ き2 TBものデータサイズになるみこみであ る。

  インターネット回線の世界平均の速度は 2.6 Mbpsなので、仮に2 TBのデータをイン ターネット経由で取得しようとすると約75 ⽇もかかる計算になる。つまり、これまで のように「FTPで自分のローカルの環境にデータを持ってきて、その中だけで すべての解析を⾏う」ことは事実上不可能である。

Channel Binning (1/p)

Spatial & Channel Binning (1/p/q2)

Spatial Binning(1/q2)

RA

D

ec

Channel

Original Data Cube

Cut out and download interested region only

Data Cube

  そこで我々国⽴天⽂台の Japanese Virtual Observato-ry (JVO)チームとALMAチー ムがタッグを組んで、JVOの ポータルサイトからデータを 配信する仕組みを開発した。 ポイントは1) 巨大データを空 間⽅向・波⻑⽅向に予めビニ ングによりデータを⼩さくし ておき、ユーザはウェブ・ブ ラウザから適切なビニング・ パラメータのデータ・キュー ブを選ぶ、2) さらにそのデー タ・キューブの中の本当に必 要な部分だけを切り出す、と いう2点である。この「ウェ ブ・ブラウザでデータ・キ ューブを選択し、切り出すア プリケーションが、私の開発 しているALMAWebQLであ る。

2. Architecture

  これだけの複雑な処理をウェブ・ブラウザ単体で実現するのは不可能である。 しかし、「Ajax(エイジャックス)」と呼ばれる「ブラウザに搭載されている

JavaScriptとそこから外部サーバとの通信を⾏う技術」を組み合わせることで、 これまでデスクトップ・アプリケーションでしか出来なかったような複雑な処理 を、ウェブ・ブラウザ経由で⾏えるようになった。ただし、⼀般的なAjaxアプリ ケーションでは、ブラウザ側の処理はJavaScriptで記述し、サーバ側はJava等で 記述せねばならず、しかもお互いが協調して動作するため、プログラマに⾼度な 技術スキルを要求する。

  そこで近年ではAjaxプログラミングの敷居を下げるために様々なライブラリが 登場している。その中で我々は「GWT(グイット・旧Google Web Toolkit)」を使 用することにした。GWTはウェブ・ブラウザ側のコードをJava⾔語で記述して、 それをコンパイラがJavaScriptへ変換する仕組みになっている。VOの世界では Java⾔語が共通の開発⾔語となっているので、GWTはVOと非常に親和性が⾼

い。しかし、天⽂に必要な座標計算用のライブラリなどは当然GWTには用意され ていないので、まずはこれらを実装するところから開発を始めた。また、最新の HTML5のサポートも限定的なため、⼀部GUIコンポーネントはゴリゴリと自⼒実 装することにした。

JavaScript

HTML5

GWT

Extended Classes (Math + GUI)

3. Data Transfer

Application Server

(Java) Cache Disk

(for FITS Files)

VO Server FITS File Server

1. User Action

Access URL to each FITS File 2. Data Search

(ADQL)

3. Results (VOTable)

4.1. Parse VOTable 4.2. Request

FITS File 5. FITS File

6.1. Parse FITS Header

6.2. Convert FITS Image to PNG 6.3. Pack the Data into a JSON 6.4. Send Back the JSON

User Client (JavaScript)

ALMAWebQLは、3台のサーバで 構成される。⼀台はGWTで書かれた アプリケーションを実⾏するアプリ ケーション・サーバ、もう⼀台は JVOのポータルサイトの⼀部でどの ようなファイルを持っているか、す なわちメタデータを保持するVOサー バ、そして実際にFITSファイルが置 いてあるファイル・サーバである。  ユーザの操作によりFITSファイル へのアクセスが必要になると(1)、 Remote Procedure Call (RPC)とい う仕組みにより、アプリケーショ ン・サーバのFITS処理メソッドをウ ェブ・ブラウザが呼び出す。これを トリガーにしてアプリケーション・ サーバはVOサーバに対してファイル の置き場所を問い合わせる(2)。VO サーバは検索結果をVO Tableの形で アプリケーション・サーバに返す (3)。アプリケーション・サーバは VO Tableを解析してファイル・サー バ上でのFITSファイルの置き場所を 探し出し(4.1)、ファイル・サーバに 対しそのファイルを送ってくれるよ う依頼する(4.2)。

 ファイル・サーバからファイルの送信が開始されると、アプリケーション・サーバはその内 容を備え付けのキャッシュ用ディスクに書き込む(5)。FITSファイルの転送が終了すると、ア プリケーション・サーバはそのFITSファイルのヘッダの内容を解析し(6.1)、イメージHDUの 中からユーザの操作で指定された部分を取り出して、イメージやスペクトルを画像ファイル (PNG)に変換する(6.2)。FITSヘッダと⽣成したPNGファイルをひと組のJavaScript Object Notation (JSON)に変換し(6.3)、それをウェブ・ブラウザへ送り返す(6.4)。

4. Just-in-Timeエンディアン変換法

2.5 3 3.5 4 4.5

1 2 3 4 5 6 7 8

Ti

m

e

(sec)

Number of Threads On Ahead Just-in-Time

Original CFITSIO b) Machine B

0 0.2 0.4 0.6 0.8 1

1 2 3 4 5 6 7 8

Ti

m

e

(sec)

Number of Threads On Ahead Just-in-Time

b) Machine B

16進数で0x12345678という値があったと する。

  ・リトルエンディアン : 78 56 34 12

  ・ビッグエンディアン : 12 23 46 78

 今では大半のコンピュータがリトルエンデ

ィアンを採用しているが、FITS形式はビッグ

エンディアンを採用している。したがって、

FITSファイルを読み書きするときには必ずエ ンディアンを変換する必要がある。処理の大 半はCPUとメモリの間のデータアクセスなの で、正直にエンディアン変換を⾏うとCPUを 遊ばせることになる。

 そこで、出来る限りCPUを遊ばせないアル ゴリズム「Just-in-Timeエンディアン変換法」 を開発した。このアルゴリズムは並列化とも 相性が良く、相乗効果によって最大40%もエ ンディアン変換を⾼速化できる。しかし、

JVM (Javaの仮想マシン)はエンディアン変換を 苦⼿としており、このアルゴリズムをJavaで 実装しても意味がない。そのため、C++でラ イブラリとして実装し、 Javaからネイティ ブ・コードを呼び出す仕組みJava Native

Interface (JNI)を介して利用するようにした。

「で、結局どんなものができたん?

→デモ・ブースへG

参照

関連したドキュメント

グローバル化をキーワードに,これまでの叙述のス

実際, クラス C の多様体については, ここでは 詳細には述べないが, 代数 reduction をはじめ類似のいくつかの方法を 組み合わせてその構造を組織的に研究することができる

えて リア 会を設 したのです そして、 リア で 会を開 して、そこに 者を 込 ような仕 けをしました そして 会を必 開 して、オブザーバーにも必 の けをし ます

最愛の隣人・中国と、相互理解を深める友愛のこころ

“〇~□までの数字を表示する”というプログラムを組み、micro:bit

帰ってから “Crossing the Mississippi” を読み返してみると,「ミ

欄は、具体的な書類の名称を記載する。この場合、自己が開発したプログラ

 根津さんは20歳の頃にのら猫を保護したことがきっかけで、保健所の