[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[dennou-ruby:002291] Re: RubyNetCDF and opendap/DODS



  堀之内さま

小高@deb パッケージメンテナです.

debian パッケージ版の RubyNetCDF は DODS 非対応です. 

できれば正しい作法(?)で対応させたいと思っています. で, 質問なのですが,

	正しい作法で DODS 対応 RubyNetCDF バイナリを作るには, まずは
	クライアントライブラリー (libdap ?) をリンクした netcdf バイナ
	リを作り, それをリンクして RubyNetCDF バイナリを作る

という理解で正しいでしょうか? 


<20050601220138C.horinout@xxxxxxxxxxxxxxxxxxxx>の記事において
horinout@xxxxxxxxxxxxxxxxxxさんは書きました。

>> バイナリーパッケージメンテナーの皆様.
>> 
>> 堀之内です.
>> 
>> RubyNetCDF の現在のバージョンは,opendap/dods
>> (http://opendap.org/) という遠隔データアクセスの NetCDF 埋め込み
>> 型クライアントライブラリーに対応になってます.具体的には,ruby
>> extconf.rb したとき,もしもそのクライアントライブラリー(の比較
>> 的新しい版)が入っていれば,自動的にそれをリンクして DODS 対応と
>> なります.
>> 
>> # 名前が紛らわしいですが,以前 DODS という名前だったのが,
>>    OPeNDAP/DODS とか OPeNDAP という名前に変ってます.開発者で
>>    も名前の変化について行けてなかったりするようです.以後,
>>    DODS と呼びます.ちょっと前に話題になったジョバンニでも
>>    使われてます.
>> 
>> さて,ここからが本題ですが,RubyNetCDF の各OS用バイナリーパッケー
>> ジでは DODS 対応になってるでしょうか.問題は,そのクライアントラ
>> イブラリーのインストールがかなり面倒だということです(もうやり方
>> 忘れました.もはや再現出来ないかも).
>> 
>> pc linux に関しては,
>> 
>>   http://ruby.gfd-dennou.org/products/ruby-netcdf/#download
>> 
>> に,DODS 入りでコンパイルしたのがありますので,netcdfraw.so だけ
>> ここから取ってきたものに入れ替えれば対応できると思うので,
>> linux 系のパッケージに関しては,もし非対応なら取り込んで頂け
>> ないでしょうか.(linux 以外に関しては,大変そうなので,
>> あんまりお願いしてはいけないかなぁ,と思ってたりします.)
>> 
>> ちなみに,DODS 対応にするとどうなるかというと,NetCDF.open(path)
>> において,path の代りに URL を入れると,ダウンロードなしに,
>> ローカルファイルと同じようにファイルの中身が読めます.
>> 例えば path =
>> "http://motherlode.ucar.edu/cgi-bin/dods/nph-nc/dods/model/2005052800_sst_61-64.nc";
>> とか.DODS経由だと,サーバーに置いてあるファイルが NetCDF でなく
>> ても,DODS が対応してるフォーマットで NetCDF 的なデータ構造をし
>> てるファイルなら同じ NetCDF インターフェースで読めます.
>> 
>> いろんなデータのリンクが
>> 
>>   http://gcmd.gsfc.nasa.gov/KeywordSearch/Home.do?Portal=dods&MetadataType=0index.html
>> 
>> にありますので見てみてください(DODSアクセス可なのが沢山あります).
>> 
>> あと,ECMWF のライセンスの都合上,京大の外のひとは登録が要ります
>> が,ERA40 (ECMWF 40年 再解析)データが以下に置いてあって,DODS で
>> もアクセスできます:
>> 
>>   http://davis.rish.kyoto-u.ac.jp/arch/era40/
>> 
>> RubyNetCDF が DODS 対応になると,GPhys も自動的にそうなります.
>> よって,gave もそうなりますので,遠隔データをダウンロードなしに
>> gui で表示できます.
>> 
>> # ただ,DODS は cgi なので,NetCDF の下位のレベルのアクセスが
>>    生じるたびにプロセス立ち上げコストがかかります.GPhys のよう
>>    に高度なライブラリーでは裏でNetCDFのアクセスが何度も起きます
>>    ので,あまり速くはないです.
>> 
>> 堀之内 武                    horinout@xxxxxxxxxxxxxxxxxx
>> 京都大学生存圏研究所               611-0011 宇治市五ヶ庄
>> 
>>