SAS University Edition、OnDemand for Academics、どちらを使うべきか
SAS University Editionをただインストールしただけだと面白くないので、いろんな環境でSASを実行してみた結果を比べてみました。
比較のために実行したプログラムは以下です。
比べたのは
- データステップの処理時間
- ソートの処理時間
- freqプロシージャの処理時間
実行した環境は以下の4つ
- SAS OnDEMAND for Academics(ODA)
- SAS University Edition on AWS(AWS)
- SAS University Edition on localhost(UE)
- SAS 9.4 M4(SAS94)
(上の3つを勝手にSAS Studio系と呼びます)
処理時間の違いは以下の通りです。
まずはデータステップの実行時間
続いてソートの実行時間
最後に、freqの実行時間
誰がどう見てもわかると思いますが、PC版SASとODAがほぼ同レベルで処理速度が速いです。使用PCがCorei7、メモリ16GB、SSDということを考えると、ODAが乗っているサーバのスペックは相当にいいものなのではないかと推測されます。
また、VirtualBoxで起動するローカルのUEはソートだけ遅いっていうのはなんででしょうか。ローカル環境なのでPC版SASと同等、というのは期待しすぎだったようです。
最後にAWSですが、全てにおいて平均を大幅に上回っており、かなり期待を裏切る結果となりました。
単純な実行時間としては以上なんですが、その他にも何点か。
- fullstimerオプションで出力される、ログのタイムスタンプがPC版SASのみローカル時間(JST, UTC+9:00)で、その他はUTCが使われている。
- ODAのみ、セッション開始時点でfullstimerオプションが有効となっている。
- ODAは使用可能なプロダクトが多い
- SAS Studio系にはコード支援機能がある
- University Editionでは、大きいサイズのデータセットを扱えない?(およそ4GBのデータセットの生成に失敗する)
地味にコード支援機能は嬉しいです。
SASの拡張エディタは自動保存機能が貧弱、等幅フォントなのに揃わない、勝手にイタリックになる、コード支援、サジェスト機能がない、というものでした。
ですので私はエディタ(EmEditor)を使ってコーディングをしているのですが、コード支援、サジェスト機能がしっかり機能しているため、通常使う分にはエディタは使わず、SAS Studioでコーディングするのがいいかもしれません。
ただ、現状ではコードの折りたたみ機能がないため、今後の機能追加(というかPC版SASの拡張エディタには搭載されている)に期待したいところです。
最後に、(PC版SASは除き)無料で使用できるSASが3種類用意されているなかで何を選択すべきか、という点ですが、
- ローカルでも使いたい/PCがそこそこ高性能→VirtualBox+SAS University Edition
- ネット接続が前提/PCがボロい→ODA
ということになるかと思います。
現状ではUniversity Edition on AWSは処理が遅い、使用開始までのステップが長く、分かりづらい、という理由から、特別選択すべきものではない、といえます。
お金をかけてサーバのスペックを上げればもっと速度があがるのかもしれませんが、それならODA使ったほうが早いですよ、っと。