TRIAMデータ処理系でのJavaScope利用の取組み 長谷川真 & TRIAM Group
はじめに 現在のTRIAMにおけるデータ収集から閲覧までのシステムの構築において、その構築の経緯と現在のシステムの特徴を紹介することを目的とする。 内容 経緯:システムの構築にJava言語を採用した理由 採用理由その1~その4 特徴:システムの構築に際してのJavaの導入事例の紹介 導入事例その1~その4
データ収集から閲覧までの 手続きに対する要求事項 簡便に閲覧できる。 データの閲覧をするためのPCのセットアップは最小限に抑えること。セットアップをしないで閲覧できるなら尚良い。 オンデマンドのデータ閲覧ができる。 いつでもどこででもデータにアクセスして閲覧することができ、データファイル自体も取得することができること。 プラットフォームに依存しないデータ閲覧を提供する。 Mac, Linux, Windowsなどの区別がなくデータの閲覧ができること。 Java言語によるデータ収集・閲覧システムの構築
Java言語 Sun Microsystems社が1995年に開発したオブジェクト指向言語。 もともとインターネット環境や、PDA、Fax、携帯電話などコンピュータ以外の情報機器で利用することを目的として開発されている。 Javaの最大の特徴はプラットフォームに依存しない動作が保証されている点。Javaアプリケーションは、Mac OS Runtime for Java(MRJ)などJavaVirtual Machine(Java VM)と呼ばれる動作環境をもつコンピュータなら、ハードウェアやOSの相違を超えて、全く変更なしに動作させることができる。 Microsoft Internet Explorer 3.0以降等のWEBブラウザでは、Javaで書かれた小さなアプリケーション(Javaアプレット)をWebサーバーから自動的にダウンロードして実行する機能をもつ。 アスキーデジタル用語辞典(http://yougo.ascii24.com/)より抜粋
Java言語の採用理由 プラットフォームを選ばない。 導入コストがかからない。 オブジェクト指向言語でありコードのメンテナンス性が高く、ポピュラーな言語である。 GUIを比較的簡単に作成できる。 ネットワークに対応した言語である。(XML, TCP/IP, ソケット, CORBA, JMS)
Java言語の採用理由その1 プラットフォームを選ばない。 プラットフォームごとにソースコードを書いたり、コンパイルする必要がなく、Java言語で作成したアプリケーションをWeb上に配置しておけば、各ユーザーは任意のプラットホームにてそのアプリケーションをダウンロードして実行できる。 一度コードを作成すれば使い回しができるので、データ収集システムの変更や拡張に柔軟に対応できる。 外部からの共同研究者は、データを閲覧し、データの取得、解析をするに際して、自分の使い慣れたノートPC等を用いることができる。
Java言語の採用理由その2 導入コストがかからない。 コンパイラはSun Microsystems (http://java.sun.com/)から無料でダウンロードできる。 統合開発環境も無料でダウンロードして構築できる。 Eclipse(http://www.eclipse.org/) NetBeans IDE(http://java.sun.com/) メンテナンス性が高いオブジェクト指向言語で、ポピュラーな言語であるため、色々なところでサポートが受けられる。
Java言語の採用理由その3 統合開発環境NetBeansのスナップショット コード作成からデバッグまでGUIで操作可能。
Java言語の採用理由その4 ネットワークに対応した言語である。 TCP/IP, ソケット, CORBA XML技術対応 ネットワーク上(WEBサーバ、FTPサーバ、ウィンドウズ共有等)でのデータの受渡しが行いやすい。 XML技術対応 文書のデータ化が行いやすい。 ネットワークによる負荷分散 クライアントのWEBブラウザ上で実行できるJavaアプレットと、サーバー上で実行できるサーバサイドJavaの両方を使うことができる。
TRIAMにおけるデータ収集・閲覧システム 導入事例その1:データ解析と閲覧 - JavaアプリケーションとMathematicaを用いて - 内容 Javaのネットワーク機能にてサーバーから測定データを取得し、Mathematicaの数学関数にてデータ解析を行う。アプリケーションのGUIはJavaにて提供する。 Webサーバー上にJavaアプリケーションを配置しておき、各ユーザーは、それをダウンロードして各自のコンピュータにセットアップする。 特徴 プラットホームに依存しないので、Webサーバー上に一つだけ配置しておけばよい。 Mathematicaの数学関数が使えるのでプログラミングが容易 改善すべき点 Mathematicaを使う時点で、プラットホームに制限が生じる。 Mathematicaがなければ数学関数が使えない。 Javaアプリケーションに柔軟性を持たせすぎた。
TRIAMにおけるデータ収集・閲覧システム 実験予定閲覧画面のスナップショット
TRIAMにおけるデータ収集・閲覧システム 導入事例その2:実験予定と実験ログの管理 -XMLとサーバサイドJavaを用いて- 内容 実験予定および実験ログをXMLで記述して、文書のデータ化を行う。そのデータの閲覧・記入機能をサーバサイドJavaにより提供してWebブラウザによる実験予定と実験ログの閲覧・記入を実現する。 特徴 管理者(実験計画調整者)側の利点 実験予定と実験ログの管理の簡易化 XMLにより様々な角度からのデータの抽出が容易に行える。 ユーザー側 LANにつながるPCがあれば、いつでもどこからでも実験予定と実験ログの閲覧・記入ができる。 実験予定から、実験ログ、実験データへとリンクをたどる事で所望のデータにすぐにたどり着ける。
TRIAMにおけるデータ収集・閲覧システム データサーバ 各クライアントPC Webブラウザ Apache+Tomcat 入力した文章の保存要求 一覧表の表示要求 一覧表の表示 XMLデータとして保存 XMLデータ 保存用タスク 文章のデータを XML形式に変換 読込み用タスク XMLデータの読込み 要求されている データの抽出 表の作成
TRIAMにおけるデータ収集・閲覧システム 実験予定閲覧画面のスナップショット
TRIAMにおけるデータ収集・閲覧システム 実験ログ閲覧画面のスナップショット 閲覧したいショットの指定
TRIAMにおけるデータ収集・閲覧システム 導入事例その3:Webブラウザによる実験データのグラフ閲覧 - サーバサイドJavaとJavaアプレットを用いて - 内容 サーバサイドJavaを用いてユーザーの希望する実験データの情報(Shot No, 測定物理量)を取得し、Javaアプレットを用いてWebブラウザ上にその実験データのグラフを表示する。 特徴 Webブラウザによるデータの閲覧 チャート描画のサブルーチンは製品(グレープシティー株式会社製JClass Chart)を購入 ユーザーはJavaアプレットを実行できるWebブラウザを用意するだけでよい。 希望のデータにすぐにアクセスできる。
TRIAMにおけるデータ収集・閲覧システム データサーバ 各クライアントPC Webブラウザ Apache+Tomcat 入力フォームの表示 要求するデータの情報入力 データの要求 グラフ描画 Web上でのグラフ表示 入力フォームの送信 データの準備 グラフ描画アプリと データの送信 定期タスク 各計測器のデータ監視 グラフ表示用データの生成 測定データ グラフ描画用タスク
TRIAMにおけるデータ収集・閲覧システム データ閲覧画面のスナップショット ショット番号の指定 表示するグラフのタイプの指定 表示するグラフの時間帯の指定 データディレクトリの参照 (データのダウンロード)
TRIAMにおけるデータ収集・閲覧システム 導入事例その4:プラズマ制御用システムのGUI化 - JavaアプレットとサーバサイドJavaを用いて - 内容 サーバサイドJavaによりプラズマ制御用WSにアクセスして制御用ファイルの編集を行う。Webブラウザ上のGUIはJavaアプレットとサーバサイドJavaにより行う。 特徴 Webブラウザによるプラズマ制御用GUIの提供 実験者はWebブラウザを用意するだけでよい。 実験者は、どのプラットホームからでも制御が可能であり、どの端末からでも制御が可能。 原理的に外部からの実験参加で制御も可能だが危険性も含む
TRIAMにおけるデータ収集・閲覧システム プラズマ制御用WS データサーバ 各クライアントPC Apache+Tomcat Webブラウザ FTP Server 制御ファイル編集用タスク 制御ファイルの ダウンロード 制御ファイルの ダウンロード要求 制御ファイル グラフ描画アプリと 制御ファイルの送信 制御ファイルの グラフ描画 編集操作の妥当性検証 編集操作 プラズマ制御用タスク 制御ファイルの アップロード 制御ファイルの アップロード要求 プラズマ制御
TRIAMにおけるデータ収集・閲覧システム プラズマ制御用画面のスナップショット 数値データの編集 編集操作の妥当性検証、 及びアップロード要求
まとめと今後の課題 まとめ Webブラウザによるグラフ閲覧や、制御用GUIの提供などにより、プラットフォームを選ばない、PCのセットアップをする必要がないなど、ユーザーに負担の少ないデータ収集・閲覧システムにしている。 Java言語の特徴を生かし、実験ログなどの文書データや、測定の数値データをネットワーク上に配置し、互いにそれらのデータを統合的に結び付ける(Webによるリンクなど)ようにしている。 今後の課題 データ収集・閲覧システムの公開方法について セキュリティーの確保 超長時間放電時のリアルタイムデータ収集と閲覧方法について 速いサンプリング周波数でデータ収集した際の閲覧方法など 大容量化するデータの取り扱い方法について 保存方法(保存メディア、データ圧縮と展開方法)
XML言語に対応するJava eXtensible Markup Language HTMLのようなシンプルなフォーマットで文書構造を記述でき、独自にタグを定義できることが特徴のマークアップ言語。1998年にW3C(World Wide Web Consortium:WWWで使われる技術を標準化する団体)により標準化勧告され、現在はインターネットのさまざまな分野での応用が進められている。 独自にタグを定義できるという特徴は、単なる文書を「データ」として処理することを可能にするものである。言いかえれば、XMLで記述した文書は、たとえば「<価格>」というように人間が理解しやすい構造で内容を記述できるうえに、「スキーマ」を使うことで<価格>タグに書かれた「数字」を、あるアプリケーションの「価格を表わす数値データ」として利用することができる。スキーマとはXML文書内のデータを定義する情報のことで、XML Schemaなどが有名。 XMLの普及がもっとも見込まれているのは、企業間(B to B)の電子商取引においてである。これまで企業は、オンライン(主に専用線)で物品の調達や流通を行なえる仕組みを作ってきたが、電子的な取引情報の交換(EDI:Electronic Data Interchange)には専用のシステムが必要である。このEDIシステムをXMLで構築すれば、インターネットを利用し、Webブラウザベースで電子商取引を行なうことが可能になる。これは、システムの大幅なコスト削減につながるだけでなく、共通のフォーマットを利用することで取引に参加できる企業を拡大することができる。なお、XMLによる企業間EDIを実現するには共通のスキーマを用いる必要があるが、XSLT(eXtensible Stylesheet Language Transformations)というコンバータを使って変換する仕組みも用意されている。 現在は、IBMやオラクル、マイクロソフトといった多くのソフトウェアベンダーが自社製品をXMLに対応させているだけでなく、インフォテリアの製品群のようにXML関連のツールも充実してきた。特にマイクロソフトは.NET戦略の中心にXMLを据え、XMLをベースにして同社の各種機能を統合しようとしている。その中核になる製品は「BizTalk Server 2000」で、企業内や企業間のデータ通信を行なうXMLのフレームワークと、開発環境を提供する予定だ。