SAS Technical News 編集部からのお知らせ

Oct o b e r 1 9 9 8

SAS Technical Newsは広くSASシステムを知っていただくため、深くSASシステムを利用していただくために発行しております。職
場の皆様や、学校の教員・学生の皆様など、SASシステムをご利用の方に無料でご提供しておりますので、多くの方がご講読ください
ますようお願いいたします。なお、編集部では、本紙を確実にお届けできるよう講読者リストを管理しておりますが、宛先不明で戻ってくるケースがあります。お近くに以下のような方がいらっしゃい
ましたら、お手数ですがその方を通じてファクシミリまたは電子メールで編集部までご連絡ください。
・講読申込をしたのに送付されてこない方
・違う住所、部署に送付されている方・複数部送付されてくる方

SAS Technical News 講読申込要領
SAS Technical Newsの講読申込、講読中止、または送付先変更を希望される方は、以下の項目をご記入の上、ファクシミリ、郵便、
または電子メールでお送りください。

特集○ 申込内容- 新規講読希望

SPDSバージョン2.0- 講読中止- 送付先の変更 (SAS Technical News のみ／弊社からの全ての送付物)○ お名前 (フリガナもご記入ください)

SASデータセット資産を高速に活用。

○ 貴社名・ご所属 (正式な名称でご記入ください)

データウェアハウスのリポジトリに最適な○ 郵便番号・ご住所

高速データサーバSPDS

特集 SPDSバージョン2.0○ 電話番号バージョン 2.0のリリース○ FAX番号○ 電子メールアドレス

5

SASシステムの西暦2000年対応について

6

Q&A○ SAS Technical Newsへのご要望、ご感想などがあれば、ご自由にどうぞSASインスティチュートは理想的なデータウェアハウスを構築する

10

SUGI-J '98開催レポート

TEL: 03-3533-3780
FAX: 03-3533-1613
E-mail: technews@jpn.sas.com

ラムの活用に大きなスピードアップとセキュリティ強化をもたらす
Scalable Performance Data Server (以下 SPDS) をご紹介します。

株式会社 SASインスティチュートジャパン
SAS Technical News 編集部

ためのツールを数多く発表してきました。その中でも従来のSASユーザから大きな支持を受け、既存のSASデータセットやSASプログ

お問い合わせ/お申し込み先:〒104-0054 東京都中央区勝どき1-13-1 イヌイビル・カチドキ8F(Scalable Performance Data Server)

11

最新リリース情報

1. はじめに
SPDSは1996年末に初期バージョンが発表され、パフォーマンス関
連での改善・機能追加とサポートするプラットフォームの拡張などがなされてきました。1998年9月20日より販売が開始された最新バージョン 2.0 では、主にSQLパススルー文への対応、セキュリティ面の改善などが実現されています。

2. SPDSの特長
SPDSの大きな目的はデータウェアハウス、またはデータマートに適したデータサーバを提供することです。実際、データウェアハウ
ス市場ではさまざまな同類の製品が発表されていますが、それらとSPDSが大きく異なる点はSASデータセットそのものの処理をより高速にし、SASデータセットに対するセキュリティを高めたSASシ
ステム専用のデータサーバであることです。従来のSASシステムも高速なデータ処理性、高度なデータ加工能力、分析機能を提供し、データウェアハウスのための機能を十分持ち備えていましたが、やOctober 1998, Volume 6 Number 1
発行
株式会社SASインスティチュートジャパン
東京本社〒104-0054 東京都中央区勝どき1-13-1 イヌイビル・カチドキ 8F
TEL: 03-3533-3780 FAX: 03-3533-1613
大阪支店〒530-0004 大阪市北区堂島浜1-4-16 アクア堂島西館 12F
TEL: 06-345-5700 FAX: 06-345-5655
URL http://www.sas.com/japan/
NIFTY SERVE SAS Station:go sas

はりデータサーバという点ではデータベースマネジメントシステム(以下DBMS)に頼らざるを得ないことが多々ありました。実際にSASユーザの中でも、処理はSASシステムで行っているのに、データサーバに関してはDBMSをご利用になっている方が大勢います。
しかしながら、基幹系システムの構築を目的とするDBMSは、かえってその特化した高機能がデータウェアハウスの処理に不都合をもたらすことも多いのも事実です。そのような問題に対してSASイン
スティチュートが提供するソリューションが、SPDSです。

Oct ober 1 9 9 8 Volume6 Number 1

れます。セキュリティの詳細は、「2.4 セキュリティ対応」を参照

デフォルトでは、各ファイルオーナはすべての権利を所有しますが、

3. データウェアハウスデータサーバとしてのSPDS

してください。

それ以外のユーザは一切の権利を所有しません。セキュリティは、

SASデータセットの強力な機能は、また反面、セキュリティの弱さ

各ファイルについて以下の3レベルで設定されます。ユニバーサルとバックアップ機能の欠如にもつながっていたと言えます。しかし、アクセス権が以下で指定されていないユーザへの適用

データウェアハウス構築では必ずテーブルジョイン・データ加工が2.2 SMPを利用した処理の高速化
データ処理をより高速に行うために登場した新しいマシンアーキテ

必要とされ、SASシステムのデータ加工能力が高く評価されていまクチャに、SMP (Symmetric Parallel Processing)があります。残念グループ

ACLグループに対する適用す。またデータウェアハウスの活用のフェーズにかかせない分析でながら、現行のSASシステムはまだSMPに対応していません。複数ユーザ

各ユーザに対する適用も、SASシステムは高く評価されています。SASシステムによるデのCPUを用いて高速に処理を行い、必要に応じてCPUを増やしていータウェアハウス構築をめざすユーザにとって、SPDSはSASシス

くことが可能なSMPは、データウェアハウスの理想的なアーキテク現在評価版として提供されているPROC SPDOで、ACLの設定を簡

テム専用のデータサーバとして高速処理・大容量データ処理・クラチャとして注目されています。SPDSは、いち早くSMPに注目した易に行うことも可能です。

イアントサーバ・ネットワーク負荷軽減・セキュリティ権限の強化

サンマイクロシステムズの協力を得て開発されました。
SPDS バージョン 2.0 の特長としては、下記の項目が挙げられます。
注意：バージョン2.0ではさまざまなプラットフォームに対応

2.1 SASシステムとの高度な親和性と管理等々を提供し、従来は他のDBMSで補完せざるをえなかった

2.5 その他機能をカバーした優れたデータサーバです。データウェアハウスの・インクリメンタルバックアップ・リストアツールの提供

利用にかかわらず、SPDSは大容量のSASデータセットを用いて大‐テーブルリスト表示モジュール

規模な処理を行うパワーSASユーザにはぜひ検討していただきたい製品です。

●LIBNAMEエンジンの活用

SMPの利点を活かし、最大限に並列処理を行うようSPDSはデザイ‐インクリメンタルまたはフルバックアップモジュール

SPDSの設計思想の中心は、まずSASデータセットをそのまま一貫ンされています。

‐インクリメンタルまたはフルリストアモジュール

して扱うことができるということ、また既存のSASアプリケーショ

・SQLパススルーにおけるWHERE文の評価を実施。処理効率の最ンに対してデータアクセスの互換性を保つということがあります。
このために、SASシステムの優れたBASEエンジンを利用して現行のSASシステムと同様のデータアクセスを行う、SAS SPDS(SPDS

適化を自動的に行なう。
・テーブルにデータを追加する時に発生するインデックス更新処理の並列処理化用)エンジンが開発されました。これにより従来と同じ手順である

・複数インデックス作成時のインデックス生成処理の並列化

LIBNAME (ライブラリ名)機能を利用して、ユーザはより高速かつ・SORTプロシジャ、または DATAステップでの BYステートメン

安全な環境で作業が行えます。LIBNAMEエンジンを利用して、ユーザはSPDSサーバ上にあるデータにアクセス・作業が行えるのです。

ト利用時の処理並列化
・複数テーブルアクセス時のデータ読み込みのパイプライン処理

LIBNAMEをSPDS上のライブラリに対して設定するだけでSASプロ
グラム資産をより高速に使用することができます。

・UNIXのツールも利用可
・ODBC/JDBC/IntrNetサポートおよびC言語インタフェース対応
・ログ取得機能対応
・テーブル圧縮機能対応
SAS/IntrNetソフトウェア・JDBCに対応することにより、SPDSの
高速なエンジンをWebからも利用することが可能です。またODBCに対応しているため、サードパーティのツールからもSPDSデータを利用することができます。今後開発を予定している機能として、

2.3 大容量データへの対応

MDDBサポートとスタースキーマサポートがあがっています。

〜ビットマップインデックスへの対応●クライアントサーバモデル

SPDSは、大容量ファイルの作成を可能にし、2Gを超えたファイル

ユーザは、SPDS用の LIBNAME ステートメントを発行するだけでをサポートします。OSの制約に依存せず、ハードウェアの制約の

SPDSのクライアント/サーバ環境を稼動できます。SPDSが提供すみとなります。SPDSデータは、コンポーネントファイルの集まり

るクライアント/サーバモデルは、ユーザに対し複雑な知識を要求であり、各ファイルは1つ以上のディスクファイルから構成されます。

しません。クライアントはSPDS専用のネームサーバを経由して、

1) メタデータコンポーネントファイル(MDFファイル)

実際にデータを提供するホストと接続し、ネットワーク上のどこに

2) データページコンポーネントファイル(DPFファイル)

サーバがあるのかを意識することなく透過的にデータにアクセスで

3) インデックスコンポーネントファイル(IDX、AUX、HYBファイル)

きます。これらの作業は、簡単なSASプログラムを記述するだけで、

1.ローカルのSASシステムからの利用

SAS

SPDS

データ

4. SPDSを利用するためのSASプログラム記述例
・SPDSにデータをロードする場合(インデックスを作成しない)

2.クライアントのSASシステムからの利用

プロキシは、MDFとDPFを使ってデータセットを格納します。IDX、実行できます。

da ta s pds . s a m pl e ;AUX、HYBにはインデックス利用時関連情報が格納されます。従来
SASシステムとSPDSとの接続例

SPDS

s e t l i br e f . l o a dda ta ;データのSASシステムでは処理できなかった大容量データをSPDSを通じ

run;て自由に処理することが可能になりました。
l i b na me sp d s sa ssp ds 't est spds' server=h ost .port
u se r = 'user ̲na me ' p assword='pass̲word';pr o c c o py i n = l i br e f o u t= s pd s memtyp e= d ata;
SAS

2.4 セキュリティ対応

s e l e c t s a m pl e ;SPDSの目的は、パフォーマンスの向上だけでなく従来のSASデー
注意：spds

任意のライブラリ名

タセットに欠けていたセキュリティの強化にも重きをおいています。

sasspds

SPDSのエンジン指定(固定)

ネットワーク経由で移動するデータに対して自動圧縮機能を付加しtestspds

SPDSサーバで定義したライブラリ名てネットワーク負荷を軽減し、またデータの暗号化を行ってデータ

host ホスト名のセキュリティも実現しました。またACL(Access Control List)を

port SPDSサーバに割り当てられたポートの利用して、きめ細かいデータアクセス権限を設定することが可能です。

host.portrun;

3.リモートのPCのODBCクライアントからの利用

・インデックスの作成例
SPDS

pr o c da ta s e ts l i b= s pds ;m o di f y s a m pl e ( bi ti n de x = k e y1) ) ;ODBC

名称、または番号
user̲namepass̲word

SPDSサーバで定義したユーザ名

データ

アクセス権には以下の種類があります。

i n de x c r e a te k e y 1 ;アプリケーションi n de x c r e a te k e y 2 ;SPDSサーバで定義した上のユーザ名に対応するパスワード

いつもお使いのSASプログラムに上記のようなLIBNAMEステート

i n de x c r e a te k e y 3 ;

read
write

書き出し権

alter

ファイル名変更・削除・更新権、またインデックス生成権・メントを加えるだけで、SPDSを利用した処理が実現できます。任意のライブラリに SPDS上のライブラリをあてて、あとはサーバ名と、ユーザ権限を確認するユーザ名とパスワードを記述するだけです。もちろんパスワードは暗号化された形でSPDSに送られ認証さ

読み出し権

JDBC
We b

SPDS
SAS/IntrNet

データセット内の変数関連情報をもつメタデータ変更権
control

qu i t;4.Web経由での利用

データ（データサーバ）（ユーザサイド）

ACL情報の更新権
We b
ブラウザ

Oct ober 1 9 9 8 Volume6 Number 1

れます。セキュリティの詳細は、「2.4 セキュリティ対応」を参照

デフォルトでは、各ファイルオーナはすべての権利を所有しますが、

3. データウェアハウスデータサーバとしてのSPDS

してください。

それ以外のユーザは一切の権利を所有しません。セキュリティは、

SASデータセットの強力な機能は、また反面、セキュリティの弱さ

各ファイルについて以下の3レベルで設定されます。ユニバーサルとバックアップ機能の欠如にもつながっていたと言えます。しかし、アクセス権が以下で指定されていないユーザへの適用

データウェアハウス構築では必ずテーブルジョイン・データ加工が2.2 SMPを利用した処理の高速化
データ処理をより高速に行うために登場した新しいマシンアーキテ

必要とされ、SASシステムのデータ加工能力が高く評価されていまクチャに、SMP (Symmetric Parallel Processing)があります。残念グループ

ACLグループに対する適用す。またデータウェアハウスの活用のフェーズにかかせない分析でながら、現行のSASシステムはまだSMPに対応していません。複数ユーザ

各ユーザに対する適用も、SASシステムは高く評価されています。SASシステムによるデのCPUを用いて高速に処理を行い、必要に応じてCPUを増やしていータウェアハウス構築をめざすユーザにとって、SPDSはSASシス

くことが可能なSMPは、データウェアハウスの理想的なアーキテク現在評価版として提供されているPROC SPDOで、ACLの設定を簡

テム専用のデータサーバとして高速処理・大容量データ処理・クラチャとして注目されています。SPDSは、いち早くSMPに注目した易に行うことも可能です。

イアントサーバ・ネットワーク負荷軽減・セキュリティ権限の強化

サンマイクロシステムズの協力を得て開発されました。
SPDS バージョン 2.0 の特長としては、下記の項目が挙げられます。
注意：バージョン2.0ではさまざまなプラットフォームに対応

2.1 SASシステムとの高度な親和性と管理等々を提供し、従来は他のDBMSで補完せざるをえなかった

2.5 その他機能をカバーした優れたデータサーバです。データウェアハウスの・インクリメンタルバックアップ・リストアツールの提供

利用にかかわらず、SPDSは大容量のSASデータセットを用いて大‐テーブルリスト表示モジュール

規模な処理を行うパワーSASユーザにはぜひ検討していただきたい製品です。

●LIBNAMEエンジンの活用

SMPの利点を活かし、最大限に並列処理を行うようSPDSはデザイ‐インクリメンタルまたはフルバックアップモジュール

SPDSの設計思想の中心は、まずSASデータセットをそのまま一貫ンされています。

‐インクリメンタルまたはフルリストアモジュール

して扱うことができるということ、また既存のSASアプリケーショ

・SQLパススルーにおけるWHERE文の評価を実施。処理効率の最ンに対してデータアクセスの互換性を保つということがあります。
このために、SASシステムの優れたBASEエンジンを利用して現行のSASシステムと同様のデータアクセスを行う、SAS SPDS(SPDS

適化を自動的に行なう。
・テーブルにデータを追加する時に発生するインデックス更新処理の並列処理化用)エンジンが開発されました。これにより従来と同じ手順である

・複数インデックス作成時のインデックス生成処理の並列化

LIBNAME (ライブラリ名)機能を利用して、ユーザはより高速かつ・SORTプロシジャ、または DATAステップでの BYステートメン

安全な環境で作業が行えます。LIBNAMEエンジンを利用して、ユーザはSPDSサーバ上にあるデータにアクセス・作業が行えるのです。

ト利用時の処理並列化
・複数テーブルアクセス時のデータ読み込みのパイプライン処理

LIBNAMEをSPDS上のライブラリに対して設定するだけでSASプロ
グラム資産をより高速に使用することができます。

・UNIXのツールも利用可
・ODBC/JDBC/IntrNetサポートおよびC言語インタフェース対応
・ログ取得機能対応
・テーブル圧縮機能対応
SAS/IntrNetソフトウェア・JDBCに対応することにより、SPDSの
高速なエンジンをWebからも利用することが可能です。またODBCに対応しているため、サードパーティのツールからもSPDSデータを利用することができます。今後開発を予定している機能として、

2.3 大容量データへの対応

MDDBサポートとスタースキーマサポートがあがっています。

〜ビットマップインデックスへの対応●クライアントサーバモデル

SPDSは、大容量ファイルの作成を可能にし、2Gを超えたファイル

ユーザは、SPDS用の LIBNAME ステートメントを発行するだけでをサポートします。OSの制約に依存せず、ハードウェアの制約の

SPDSのクライアント/サーバ環境を稼動できます。SPDSが提供すみとなります。SPDSデータは、コンポーネントファイルの集まり

るクライアント/サーバモデルは、ユーザに対し複雑な知識を要求であり、各ファイルは1つ以上のディスクファイルから構成されます。

しません。クライアントはSPDS専用のネームサーバを経由して、

1) メタデータコンポーネントファイル(MDFファイル)

実際にデータを提供するホストと接続し、ネットワーク上のどこに

2) データページコンポーネントファイル(DPFファイル)

サーバがあるのかを意識することなく透過的にデータにアクセスで

3) インデックスコンポーネントファイル(IDX、AUX、HYBファイル)

きます。これらの作業は、簡単なSASプログラムを記述するだけで、

1.ローカルのSASシステムからの利用

SAS

SPDS

データ

4. SPDSを利用するためのSASプログラム記述例
・SPDSにデータをロードする場合(インデックスを作成しない)

2.クライアントのSASシステムからの利用

プロキシは、MDFとDPFを使ってデータセットを格納します。IDX、実行できます。

da ta s pds . s a m pl e ;AUX、HYBにはインデックス利用時関連情報が格納されます。従来
SASシステムとSPDSとの接続例

SPDS

s e t l i br e f . l o a dda ta ;データのSASシステムでは処理できなかった大容量データをSPDSを通じ

run;て自由に処理することが可能になりました。
l i b na me sp d s sa ssp ds 't est spds' server=h ost .port
u se r = 'user ̲na me ' p assword='pass̲word';pr o c c o py i n = l i br e f o u t= s pd s memtyp e= d ata;
SAS

2.4 セキュリティ対応

s e l e c t s a m pl e ;SPDSの目的は、パフォーマンスの向上だけでなく従来のSASデー
注意：spds

任意のライブラリ名

タセットに欠けていたセキュリティの強化にも重きをおいています。

sasspds

SPDSのエンジン指定(固定)

ネットワーク経由で移動するデータに対して自動圧縮機能を付加しtestspds

SPDSサーバで定義したライブラリ名てネットワーク負荷を軽減し、またデータの暗号化を行ってデータ

host ホスト名のセキュリティも実現しました。またACL(Access Control List)を

port SPDSサーバに割り当てられたポートの利用して、きめ細かいデータアクセス権限を設定することが可能です。

host.portrun;

3.リモートのPCのODBCクライアントからの利用

・インデックスの作成例
SPDS

pr o c da ta s e ts l i b= s pds ;m o di f y s a m pl e ( bi ti n de x = k e y1) ) ;ODBC

名称、または番号
user̲namepass̲word

SPDSサーバで定義したユーザ名

データ

アクセス権には以下の種類があります。

i n de x c r e a te k e y 1 ;アプリケーションi n de x c r e a te k e y 2 ;SPDSサーバで定義した上のユーザ名に対応するパスワード

いつもお使いのSASプログラムに上記のようなLIBNAMEステート

i n de x c r e a te k e y 3 ;

read
write

書き出し権

alter

ファイル名変更・削除・更新権、またインデックス生成権・メントを加えるだけで、SPDSを利用した処理が実現できます。任意のライブラリに SPDS上のライブラリをあてて、あとはサーバ名と、ユーザ権限を確認するユーザ名とパスワードを記述するだけです。もちろんパスワードは暗号化された形でSPDSに送られ認証さ

読み出し権

JDBC
We b

SPDS
SAS/IntrNet

データセット内の変数関連情報をもつメタデータ変更権
control

qu i t;4.Web経由での利用

データ（データサーバ）（ユーザサイド）

ACL情報の更新権
We b
ブラウザ

Oct ober 1 9 9 8 Volume6 Number 1・パラレルデータロード(インデックスの作成を含む)例

件検索を大幅に高速化する。「AND」や「OR」といった条件付加も可能。

d ata sp d s.sa mp l e ;set l i b r ef.l o ad d a ta(obs=0);
r un;

p ro c d atase ts l i b = sp ds;
m o d i fy sa mp l e (b i ti n dex=key1));

Year 2000
SASシステムの西暦2000年
対応についてi nd e x c r ea te k e y2 ;西暦2000年問題についてのSASシステムの対応状況は、リリースに

i nd e x c r ea te k e y3 ;よって異なります。また、対応しているリリースをご利用の場合でも、SASシステムオプションの指定により、下2桁で表される西暦年の調整が必要になりますので、ご注意ください。

SAS起動時のコマンドに「/YEARCUTOFF=1920」と追加するか、または「DEFINE SAS$CONFIG」で割り当てられたファイルに「YEARCUTOFF=1920」を追加する
・CMS環境SYSPROF SASファイルに「YEARCUTOFF=1920」を追加する「-YEARCUTOFF 1920」を追加する●SASプログラム内で指定する場合
OPTIONSステートメントで「YEARCUTOFF=nnnn」と指定します。次に、西暦2000年を下2桁で表現した日付値を読み込むプロ

p ro c a p p e nd b ase = spds.sample dat a=libref .loaddat a;■対応リリース番号r un;「YEARCUTOFF= 1920」を追加する
・VAX/VMS、AXP/VMS環境

・Macintosh環境

i nd e x c r ea te k e y1

q u i t;・MVS、VOS3、MSP環境

グラムの例を示します。

・ SASシステム リリース6.07以降(メインフレームプラットフォーム)
・データの検索例

・ SASシステム リリース6.08以降 (Windows、OS/2、VMSプラットフォーム)

O P T I O N S Y E A RC U T O F F = 1 9 2 0 ;・ SASシステム リリース6.09以降(UNIXプラットフォーム)・ SASシステム リリース6.10以降(Macintoshプラットフォーム)

d ata sub se t;

D A T A T E ST ;set sp d s.samp l e ;w he r e k e y1 = 'XXXX ';r un;

・データの検索(SQL パススルーによる)例

INPUT DATE;

ただし、前提条件として、稼動するOSが西暦2000年に対応して

C A RD S ;満たしていることが必要です。さらに、下記に示すSASシステム

001014

オプションの指定が必要です。

;■未対応リリース番号

p ro c sq l ;connect to spds(dbq='testspds' host='host̲name' server='port'
use r='u ser̲n ame' passwd='pass̲word');I N F O RM A T D A T E y y m m d d 6. ;いること、稼動するOSがSASシステムのリリースの動作条件を

P RO C P RI N T D A T A = T E ST ;・メインフレーム版SASシステム リリース5.16および5.18
・DOS版SASシステム リリース6.03および6.04

F O RM A T D A T E y y m m dd10. ;RU N ;

sel ec t * fr o m c o nnect ion t o spds
(sel ec t * fr o m sa mple
w he r e k e y1 = 'XXXX');d i sco nnec t fr o m spds;
q u i t;・データのソート(パラレルソート)例■SASシステムオプションの設定について

上記のプログラムを実行すると、以下の結果が得られます。下2

SASシステムにおいて、日付／日時インフォーマットまたはSAS関桁「00」で表記された西暦年が、「西暦2000年」に解釈されてい数の使用時に、西暦年を下2桁で表記した場合に解釈される実際のることが分かります。

西暦年は、YEARCUTOFF= システムオプションに指定した年を開始年とする100年期間になります。YEARCUTOFF= システムオプシ

O BS

DATE

ョンの出荷時の値(デフォルト値)は「1900」なので、下2桁で表さ

12000-10-14

れる西暦年は1900年から1999年と解釈され、接頭値「19」をとり
p ro c so r t sp d sso r t dat a=spds.sample(sort t ype=qu ick);b y so r tk ey;r un;ます。このため、2000年を超えた西暦年を下2桁で表記したい場合

なお、CONFIGファイルとSASプログラム中の両方でには、YEARCUTOFF=オプションの値を明示的に変更する必要が

YEARCUTOFF=システムオプションを指定した場合には、SASプあります。たとえば、YEARCUTOFF=1920と指定した場合には、ログラム中での指定値が優先されます。

下図のように、1920年から2019年までが100年期間となります。つまり、20から99までの範囲は1920年から1999年まで、00から19ま

5. 用語解説での範囲は2000年から2019年までを表すと解釈されます。

SMP(Symmetric Parallel Processing)■YEARCUTOFF=設定値の確認方法
次に示すプログラムを実行することにより、現在設定されている
YEARCUTOFF=システムオプションの値を表示できます。

対称型マルチプロセッサとも呼ばれる。SMPでは、個々のプロセッ
サがメモリと入出力資源に同様にアクセスできるため、大規模並列

P RO C O P T I O N S O P T I O N = Y E A R CUTO FF;

プロセッサ(MPP)よりも一貫して優れたパフォーマンスが得られる。

RU N ;

意思決定支援システムにおいて、サーバが処理すべき全クエリーを予測できるデータベース管理者がいない場合には、SMPは、今日のデータウェアハウスの要求に応じたスケーリングと成長が可能で、■YEARCUTOFF=システムオプションの設定、使用例■お問い合わせ先

さらにデータウェアハウスをサポートしているIT部門のリスクも最YEARCUTOFF=システムオプションは、SASシステムのCONFIG

この件に関してご不明な点、ご質問等ございましたら、お手数で小限に抑えることのできる選択肢となる。

ファイル、またはSASプログラム内で指定できます。この変更をすが弊社テクニカルサポートまでご連絡下さい。

全てのSASシステム利用者に反映したい場合には、CONFIGファ

ご連絡先：カスタマーサポート部 テクニカルサポート

ビットマップインデックス(Bitmap Index)

イルに追加することをお勧めします。

FAX: 03(3533)3781 TEL: 03(3533)3877

データの値をビット列に置き換え、各値に対してビットが立つか立たないか(0か1か)によって識別するインデックス。検索対象範囲の広いクエリーにおいて威力を発揮する。特に、取りうるデータ値の種類が少ないカラムへの適用によって、範囲を指定しないような全●SASシステムのCONFIGファイルに追加する場合
・OS/2、Windows、およびUNIX環境「-YEARCUTOFF 1920」を追加する

また、弊社WWWでも2000年問題に関する情報を提供しています
ので、ご利用ください。
http://www.sas.com/japan/software/technologies/2000.html

Oct ober 1 9 9 8 Volume6 Number 1・パラレルデータロード(インデックスの作成を含む)例

件検索を大幅に高速化する。「AND」や「OR」といった条件付加も可能。

d ata sp d s.sa mp l e ;set l i b r ef.l o ad d a ta(obs=0);
r un;

p ro c d atase ts l i b = sp ds;
m o d i fy sa mp l e (b i ti n dex=key1));

Year 2000
SASシステムの西暦2000年
対応についてi nd e x c r ea te k e y2 ;西暦2000年問題についてのSASシステムの対応状況は、リリースに

i nd e x c r ea te k e y3 ;よって異なります。また、対応しているリリースをご利用の場合でも、SASシステムオプションの指定により、下2桁で表される西暦年の調整が必要になりますので、ご注意ください。

SAS起動時のコマンドに「/YEARCUTOFF=1920」と追加するか、または「DEFINE SAS$CONFIG」で割り当てられたファイルに「YEARCUTOFF=1920」を追加する
・CMS環境SYSPROF SASファイルに「YEARCUTOFF=1920」を追加する「-YEARCUTOFF 1920」を追加する●SASプログラム内で指定する場合
OPTIONSステートメントで「YEARCUTOFF=nnnn」と指定します。次に、西暦2000年を下2桁で表現した日付値を読み込むプロ

p ro c a p p e nd b ase = spds.sample dat a=libref .loaddat a;■対応リリース番号r un;「YEARCUTOFF= 1920」を追加する
・VAX/VMS、AXP/VMS環境

・Macintosh環境

i nd e x c r ea te k e y1

q u i t;・MVS、VOS3、MSP環境

グラムの例を示します。

・ SASシステム リリース6.07以降(メインフレームプラットフォーム)
・データの検索例

・ SASシステム リリース6.08以降 (Windows、OS/2、VMSプラットフォーム)

O P T I O N S Y E A RC U T O F F = 1 9 2 0 ;・ SASシステム リリース6.09以降(UNIXプラットフォーム)・ SASシステム リリース6.10以降(Macintoshプラットフォーム)

d ata sub se t;

D A T A T E ST ;set sp d s.samp l e ;w he r e k e y1 = 'XXXX ';r un;

・データの検索(SQL パススルーによる)例

INPUT DATE;

ただし、前提条件として、稼動するOSが西暦2000年に対応して

C A RD S ;満たしていることが必要です。さらに、下記に示すSASシステム

001014

オプションの指定が必要です。

;■未対応リリース番号

p ro c sq l ;connect to spds(dbq='testspds' host='host̲name' server='port'
use r='u ser̲n ame' passwd='pass̲word');I N F O RM A T D A T E y y m m d d 6. ;いること、稼動するOSがSASシステムのリリースの動作条件を

P RO C P RI N T D A T A = T E ST ;・メインフレーム版SASシステム リリース5.16および5.18
・DOS版SASシステム リリース6.03および6.04

F O RM A T D A T E y y m m dd10. ;RU N ;

sel ec t * fr o m c o nnect ion t o spds
(sel ec t * fr o m sa mple
w he r e k e y1 = 'XXXX');d i sco nnec t fr o m spds;
q u i t;・データのソート(パラレルソート)例■SASシステムオプションの設定について

上記のプログラムを実行すると、以下の結果が得られます。下2

SASシステムにおいて、日付／日時インフォーマットまたはSAS関桁「00」で表記された西暦年が、「西暦2000年」に解釈されてい数の使用時に、西暦年を下2桁で表記した場合に解釈される実際のることが分かります。

西暦年は、YEARCUTOFF= システムオプションに指定した年を開始年とする100年期間になります。YEARCUTOFF= システムオプシ

O BS

DATE

ョンの出荷時の値(デフォルト値)は「1900」なので、下2桁で表さ

12000-10-14

れる西暦年は1900年から1999年と解釈され、接頭値「19」をとり
p ro c so r t sp d sso r t dat a=spds.sample(sort t ype=qu ick);b y so r tk ey;r un;ます。このため、2000年を超えた西暦年を下2桁で表記したい場合

なお、CONFIGファイルとSASプログラム中の両方でには、YEARCUTOFF=オプションの値を明示的に変更する必要が

YEARCUTOFF=システムオプションを指定した場合には、SASプあります。たとえば、YEARCUTOFF=1920と指定した場合には、ログラム中での指定値が優先されます。

下図のように、1920年から2019年までが100年期間となります。つまり、20から99までの範囲は1920年から1999年まで、00から19ま

5. 用語解説での範囲は2000年から2019年までを表すと解釈されます。

SMP(Symmetric Parallel Processing)■YEARCUTOFF=設定値の確認方法
次に示すプログラムを実行することにより、現在設定されている
YEARCUTOFF=システムオプションの値を表示できます。

対称型マルチプロセッサとも呼ばれる。SMPでは、個々のプロセッ
サがメモリと入出力資源に同様にアクセスできるため、大規模並列

P RO C O P T I O N S O P T I O N = Y E A R CUTO FF;

プロセッサ(MPP)よりも一貫して優れたパフォーマンスが得られる。

RU N ;

意思決定支援システムにおいて、サーバが処理すべき全クエリーを予測できるデータベース管理者がいない場合には、SMPは、今日のデータウェアハウスの要求に応じたスケーリングと成長が可能で、■YEARCUTOFF=システムオプションの設定、使用例■お問い合わせ先

さらにデータウェアハウスをサポートしているIT部門のリスクも最YEARCUTOFF=システムオプションは、SASシステムのCONFIG

この件に関してご不明な点、ご質問等ございましたら、お手数で小限に抑えることのできる選択肢となる。

ファイル、またはSASプログラム内で指定できます。この変更をすが弊社テクニカルサポートまでご連絡下さい。

全てのSASシステム利用者に反映したい場合には、CONFIGファ

ご連絡先：カスタマーサポート部 テクニカルサポート

ビットマップインデックス(Bitmap Index)

イルに追加することをお勧めします。

FAX: 03(3533)3781 TEL: 03(3533)3877

データの値をビット列に置き換え、各値に対してビットが立つか立たないか(0か1か)によって識別するインデックス。検索対象範囲の広いクエリーにおいて威力を発揮する。特に、取りうるデータ値の種類が少ないカラムへの適用によって、範囲を指定しないような全●SASシステムのCONFIGファイルに追加する場合
・OS/2、Windows、およびUNIX環境「-YEARCUTOFF 1920」を追加する

また、弊社WWWでも2000年問題に関する情報を提供しています
ので、ご利用ください。
http://www.sas.com/japan/software/technologies/2000.html

Oct ober 1 9 9 8 Volume6 Number 1

複数の値を持つある変数ごとにグラフを作成して/* whereデータセットオプションを使用し、 */ROUND関数を用いて四捨五入を行ったときに、期待

SAS/GRAPHオブジェクトによって出力し、その際生/* テストIDごとにグラフ(GPLOT)を作成する結果にならないことがありますが、なぜでしょうか？

成された複数のグラフを、スクロールバーの操作で順次表示するようにしたいのですが、可能ですか。

*/

たとえば、下記のように0.249015を小数点以下第5位% m a c r o g e n g ( ds , w h e r e v a r ) ;までに四捨五入すると、結果が0.24901になります。

% do i dx = 1 % to &c n t;
ti tl e " T E ST - I D = && t& i dx " ;●プログラムを利用してビューテーブルを起動する方法 (リリース6.12)●CONFIG.SASファイルでライブラリの指定に環境変数を利用したい(Windows環境)●複数のグラフをスクロールバーで順次表示したい (SAS/AF)●フルスクリーンデバイスを実行すると漢字が文字化けする(Base SAS)
●ROUND関数の結果が期待どおりにならないことがある(Base SAS)
●TIMEAMPM、DATEAMPMフォーマットでの12時間表記の仕様(Base SAS)
●データの不足で等高線グラフが作成できない場合の回避法(SAS/GRAPH)●SCLプログラムに行番号を付けて外部ファイルに出力したい(SAS/AF、リリース6.12)●SQLプロシジャで任意のSASデータセットの変数名を参照したい(Base SAS)
●2つの変数について任意の相関係数になる乱数を発生させる方法(統計手法)

グラフを一斉に作成してから、スクロールバーオブジ

g o pti o n s n o di s pl a y ;ェクトにより、グラフを順次表示するという方法が考

pr o c g pl o t da ta = & ds ( w h e r e = ( &w h e r e v a r = " & & t& i dx " ) ) ;えられます。以下にそのサンプルプログラムを示します。
各オブジェクト名は、以下のとおりとします。

pl o t y * x / n a m e = " g pl o t& i dx " ;da ta ̲ n u l l ̲ ;x=0.249015;

g o pti o n s di s pl a y ;y = r o u n d( x , . 0 0 0 0 1 ) ;% e n d;スクロールバー名%mend geng;

pu t y = ;run;

入力するSASデータセット名:work.samp% g e n g ( s a m p, te s ti d) ;切り替え用変数名:testide n ds u bm i t;

出力結果
/ * 最 初 の グ ラ フ を G RA P H オ ブ ジ ェ ク ト に 表 示 * /プログラム

c a l l n o ti f y ( ' g r f o u t' , ' ̲ s e t̲ g r a ph ̲ ' , g s e g n 1 ¦ ¦ ' 1 ' ¦ ¦ g s e g n 2 ) ;init :

cntx=symgetn('cnt');g s eg n1 = 'wo rk .g s eg .g p lo t ';Y= 0 . 2 4 9 0 1/* テストID件数をマクロ変数からSCL変数へ *//* スクロールバーの各種設定 */上記プログラムでROUND関数の引数として使用されg s eg n2 = '.g rs eg ';c a l l n o ti f y ( ' s c r ba r ' , ' ̲ s e t̲ m a x ̲ ' , c n tx ) ;ret urn;c a l l n o ti f y ( ' s c r ba r ' , ' ̲ s e t̲ m i n ̲ ' , 1 ) ;た0.249015は、内部的には0.249015になっていません。

c a l l n o ti f y ( ' s c r ba r ' , ' ̲ s e t̲ i n c ̲ ' , 1 ) ;これは、SASシステムでは、数値データを2進数の浮動小数点数とc a l l n o ti f y ( ' s c r ba r ' , ' ̲ s e t̲ v a l u e ̲ ' , 1 ) ;して格納するためです。10進数の小数を2進数の小数に変換すると、

r e tu r n ;多くの場合、無限小数(循環小数)になってしまい、正確にその値をp rep are:/* テ ス ト デ ー タ 作 成 */SASプログラムを使ってビューテーブルを起動し、

s ub mit co nt inue;

任意のSASデータセットを表示したいのですが、どの

d at a s amp ;ようにすればできますか。

t es t id ='t o p 1';表すことができません。そのため、格納される値は近似値になり、
s c r ba r :/* スクロールバーが押されたとき質問にあるような現象が発生する場合があります。このような問題*/

d o x =0 t o 5 b y .1;y =s in(x );o ut p ut ;end ;/* スクロールバーの位置により表示すべきグラフ */は、下記のようなFUZZ関数を利用したマクロを作成することにより、

t es t id ='t o p 2';/* を設定する

回避できます。

*/

ビューテーブルは、VIEWT(VIEWTABLE)コマンドで起

d o x =0 t o 5 b y .1;y =co s (x );o ut p ut ;end ;動できます。書式は次のとおりです。

t es t id ='t o p 3';

c a l l n o ti f y ( ' g r f o u t' , ' ̲ s e t̲ g r a ph ̲ ' , g s e g n 1 ¦ ¦ s ba r l o c ¦ ¦ g s e g n 2 ) ;d o x =0 t o 5 b y .1;y =t an(x );o ut p ut ;end ;r e tu r n ;V IEWT オープンするデ ータセット名プログラム

r u n ; qu i t;

SAS/GRAPH出力のオブジェクト名 :grfout:scrbar/ * グ ラ フ の G RA P H ウ ィ ン ド ウ 出 力 抑 制 * /c a l l n o ti f y ( ' s c r ba r ' , ' ̲ g e t̲ v a l u e ̲ ' , s ba r l o c ) ;t es t id ='t o p 4';

プログラム% m a c r o m a c r o u n d( v a r , u n i t, fu zz= 1e-10) ;d o x =1 t o 6 b y .1;y =s in(x );o ut p ut ;end ;VIEWTコマンドをプログラムから起動する場合には、DMステート

t es t id ='t o p 5';

メントを使用します。プログラム例は以下の通りです。

d o x =1 t o 6 b y .1;y =co s (x );o ut p ut ;end ;データセットSASHELP.RETAILを表示する場合
D M 'V IEWT SA SH ELP.R ETAIL ' VIEW T;

t es t id ='t o p 6';

SJIS環境のVT100端末でSASシステムを起動している時、

d o x =1 t o 6 b y .1;y =t an(x );o ut p ut ;end ;下記のプログラムでフルスクリーンデバイスを実行すrun;

ると漢字が文字化けします。回避方法はありますか。

mak eg :/* グ ラ フ 作 成 、 表 示

s ub mit co nt inue s q l;*//* テ ス ト ID の 抽 出 */creat e t ab le t es t id d s as s elect d is t inct (t es t id ) f ro m s a m p;

CONFIG.SASファイル内で、WORKやSASUSERライ

end s ub mit ;-sa suser !use r d i r ¥ sa su ser

6

format x xx xxx 9.8;
run;

出力結果

合に表示コードをsjisにするには、次のコマンドを実行してください。
O BS

X

XX

XXX

.24901500.24901000. 24902000

s a s - f s de v i c e a s c i i . v t1 0 0 - f s dbty pe s j i scall s y mp ut ('t '¦ ¦ lef t (̲ n̲ ),t es t id );1

if eo f t hen call s y mp ut ('cnt ',̲ n̲ );なお、端末名が"hp"から始まっていると、HP15コードがデフォル

run;

トの表示コードになります。変更する場合は、同様に-fsdbtypeシ

なお、多くのパッケージソフトウェアや表計算ソフトウェアでは、

ステムオプションを使用してください。

内部的に暗黙のFUZZ値を用いてこの問題を回避していますが、環境変数 userdir にディレクトリ名が設定されている場合!user d i r ¥ sa swork

SASシステムのデフォルトの表示コードはDECコー/* 全 テ ス ト ID お よ び 件 数 を マ ク ロ 変 数 に 設定 * /s et t es t id d s end =eo f ;-wo r k

端末名が"dec"または"vt"から始まっている場合、ドになります。表示コードを明示的に指定するにはs ub mit co nt inue;d at a ̲ null̲ ;run;

pr o c pr i n t;

-fsdbtype システムオプションを使用します。端末名がvt100の場

ブラリの指定に環境変数を利用したいのですが、可能きます。

x=.249015;
x x = r o u n d( x , . 0 0 0 0 1 ) ;x x x = % m a c r o u n d( x , . 0 0 0 01) ;s a s - f s de v i c e a s c i i . v t1 0 0

Windows版 SASシステムを使用しています。

「!環境変数名」という書式で、環境変数の値を使用で

da ta o n e ;end s ub mit ;ret urn;ですか。

r o u n d( ( & v a r + ( s i g n ( &var) *& fu zz) ) , & u n i t)
% m e n d m a c r o u n d;/* グ ラ フ カ タ ロ グ を 初 期 化 す る */p ro c d at as et s lib =wo rk ;SASシステムのROUND関数では引数の値をそのまま用いて処理を

d elet e g s eg /mt =cat alo g ;行うため、上記のような現象が発生します。

run;q uit ;7

Oct ober 1 9 9 8 Volume6 Number 1

複数の値を持つある変数ごとにグラフを作成して/* whereデータセットオプションを使用し、 */ROUND関数を用いて四捨五入を行ったときに、期待

SAS/GRAPHオブジェクトによって出力し、その際生/* テストIDごとにグラフ(GPLOT)を作成する結果にならないことがありますが、なぜでしょうか？

成された複数のグラフを、スクロールバーの操作で順次表示するようにしたいのですが、可能ですか。

*/

たとえば、下記のように0.249015を小数点以下第5位% m a c r o g e n g ( ds , w h e r e v a r ) ;までに四捨五入すると、結果が0.24901になります。

% do i dx = 1 % to &c n t;
ti tl e " T E ST - I D = && t& i dx " ;●プログラムを利用してビューテーブルを起動する方法 (リリース6.12)●CONFIG.SASファイルでライブラリの指定に環境変数を利用したい(Windows環境)●複数のグラフをスクロールバーで順次表示したい (SAS/AF)●フルスクリーンデバイスを実行すると漢字が文字化けする(Base SAS)
●ROUND関数の結果が期待どおりにならないことがある(Base SAS)
●TIMEAMPM、DATEAMPMフォーマットでの12時間表記の仕様(Base SAS)
●データの不足で等高線グラフが作成できない場合の回避法(SAS/GRAPH)●SCLプログラムに行番号を付けて外部ファイルに出力したい(SAS/AF、リリース6.12)●SQLプロシジャで任意のSASデータセットの変数名を参照したい(Base SAS)
●2つの変数について任意の相関係数になる乱数を発生させる方法(統計手法)

グラフを一斉に作成してから、スクロールバーオブジ

g o pti o n s n o di s pl a y ;ェクトにより、グラフを順次表示するという方法が考

pr o c g pl o t da ta = & ds ( w h e r e = ( &w h e r e v a r = " & & t& i dx " ) ) ;えられます。以下にそのサンプルプログラムを示します。
各オブジェクト名は、以下のとおりとします。

pl o t y * x / n a m e = " g pl o t& i dx " ;da ta ̲ n u l l ̲ ;x=0.249015;

g o pti o n s di s pl a y ;y = r o u n d( x , . 0 0 0 0 1 ) ;% e n d;スクロールバー名%mend geng;

pu t y = ;run;

入力するSASデータセット名:work.samp% g e n g ( s a m p, te s ti d) ;切り替え用変数名:testide n ds u bm i t;

出力結果
/ * 最 初 の グ ラ フ を G RA P H オ ブ ジ ェ ク ト に 表 示 * /プログラム

c a l l n o ti f y ( ' g r f o u t' , ' ̲ s e t̲ g r a ph ̲ ' , g s e g n 1 ¦ ¦ ' 1 ' ¦ ¦ g s e g n 2 ) ;init :

cntx=symgetn('cnt');g s eg n1 = 'wo rk .g s eg .g p lo t ';Y= 0 . 2 4 9 0 1/* テストID件数をマクロ変数からSCL変数へ *//* スクロールバーの各種設定 */上記プログラムでROUND関数の引数として使用されg s eg n2 = '.g rs eg ';c a l l n o ti f y ( ' s c r ba r ' , ' ̲ s e t̲ m a x ̲ ' , c n tx ) ;ret urn;c a l l n o ti f y ( ' s c r ba r ' , ' ̲ s e t̲ m i n ̲ ' , 1 ) ;た0.249015は、内部的には0.249015になっていません。

c a l l n o ti f y ( ' s c r ba r ' , ' ̲ s e t̲ i n c ̲ ' , 1 ) ;これは、SASシステムでは、数値データを2進数の浮動小数点数とc a l l n o ti f y ( ' s c r ba r ' , ' ̲ s e t̲ v a l u e ̲ ' , 1 ) ;して格納するためです。10進数の小数を2進数の小数に変換すると、

r e tu r n ;多くの場合、無限小数(循環小数)になってしまい、正確にその値をp rep are:/* テ ス ト デ ー タ 作 成 */SASプログラムを使ってビューテーブルを起動し、

s ub mit co nt inue;

任意のSASデータセットを表示したいのですが、どの

d at a s amp ;ようにすればできますか。

t es t id ='t o p 1';表すことができません。そのため、格納される値は近似値になり、
s c r ba r :/* スクロールバーが押されたとき質問にあるような現象が発生する場合があります。このような問題*/

d o x =0 t o 5 b y .1;y =s in(x );o ut p ut ;end ;/* スクロールバーの位置により表示すべきグラフ */は、下記のようなFUZZ関数を利用したマクロを作成することにより、

t es t id ='t o p 2';/* を設定する

回避できます。

*/

ビューテーブルは、VIEWT(VIEWTABLE)コマンドで起

d o x =0 t o 5 b y .1;y =co s (x );o ut p ut ;end ;動できます。書式は次のとおりです。

t es t id ='t o p 3';

c a l l n o ti f y ( ' g r f o u t' , ' ̲ s e t̲ g r a ph ̲ ' , g s e g n 1 ¦ ¦ s ba r l o c ¦ ¦ g s e g n 2 ) ;d o x =0 t o 5 b y .1;y =t an(x );o ut p ut ;end ;r e tu r n ;V IEWT オープンするデ ータセット名プログラム

r u n ; qu i t;

SAS/GRAPH出力のオブジェクト名 :grfout:scrbar/ * グ ラ フ の G RA P H ウ ィ ン ド ウ 出 力 抑 制 * /c a l l n o ti f y ( ' s c r ba r ' , ' ̲ g e t̲ v a l u e ̲ ' , s ba r l o c ) ;t es t id ='t o p 4';

プログラム% m a c r o m a c r o u n d( v a r , u n i t, fu zz= 1e-10) ;d o x =1 t o 6 b y .1;y =s in(x );o ut p ut ;end ;VIEWTコマンドをプログラムから起動する場合には、DMステート

t es t id ='t o p 5';

メントを使用します。プログラム例は以下の通りです。

d o x =1 t o 6 b y .1;y =co s (x );o ut p ut ;end ;データセットSASHELP.RETAILを表示する場合
D M 'V IEWT SA SH ELP.R ETAIL ' VIEW T;

t es t id ='t o p 6';

SJIS環境のVT100端末でSASシステムを起動している時、

d o x =1 t o 6 b y .1;y =t an(x );o ut p ut ;end ;下記のプログラムでフルスクリーンデバイスを実行すrun;

ると漢字が文字化けします。回避方法はありますか。

mak eg :/* グ ラ フ 作 成 、 表 示

s ub mit co nt inue s q l;*//* テ ス ト ID の 抽 出 */creat e t ab le t es t id d s as s elect d is t inct (t es t id ) f ro m s a m p;

CONFIG.SASファイル内で、WORKやSASUSERライ

end s ub mit ;-sa suser !use r d i r ¥ sa su ser

6

format x xx xxx 9.8;
run;

出力結果

合に表示コードをsjisにするには、次のコマンドを実行してください。
O BS

X

XX

XXX

.24901500.24901000. 24902000

s a s - f s de v i c e a s c i i . v t1 0 0 - f s dbty pe s j i scall s y mp ut ('t '¦ ¦ lef t (̲ n̲ ),t es t id );1

if eo f t hen call s y mp ut ('cnt ',̲ n̲ );なお、端末名が"hp"から始まっていると、HP15コードがデフォル

run;

トの表示コードになります。変更する場合は、同様に-fsdbtypeシ

なお、多くのパッケージソフトウェアや表計算ソフトウェアでは、

ステムオプションを使用してください。

内部的に暗黙のFUZZ値を用いてこの問題を回避していますが、環境変数 userdir にディレクトリ名が設定されている場合!user d i r ¥ sa swork

SASシステムのデフォルトの表示コードはDECコー/* 全 テ ス ト ID お よ び 件 数 を マ ク ロ 変 数 に 設定 * /s et t es t id d s end =eo f ;-wo r k

端末名が"dec"または"vt"から始まっている場合、ドになります。表示コードを明示的に指定するにはs ub mit co nt inue;d at a ̲ null̲ ;run;

pr o c pr i n t;

-fsdbtype システムオプションを使用します。端末名がvt100の場

ブラリの指定に環境変数を利用したいのですが、可能きます。

x=.249015;
x x = r o u n d( x , . 0 0 0 0 1 ) ;x x x = % m a c r o u n d( x , . 0 0 0 01) ;s a s - f s de v i c e a s c i i . v t1 0 0

Windows版 SASシステムを使用しています。

「!環境変数名」という書式で、環境変数の値を使用で

da ta o n e ;end s ub mit ;ret urn;ですか。

r o u n d( ( & v a r + ( s i g n ( &var) *& fu zz) ) , & u n i t)
% m e n d m a c r o u n d;/* グ ラ フ カ タ ロ グ を 初 期 化 す る */p ro c d at as et s lib =wo rk ;SASシステムのROUND関数では引数の値をそのまま用いて処理を

d elet e g s eg /mt =cat alo g ;行うため、上記のような現象が発生します。

run;q uit ;7

Oct ober 1 9 9 8 Volume6 Number 1

ここでa,bは定数です。この新変数yと、前の変数のうちの一つxとSASシステムのTIMEAMPMおよびDATEAMPM フォー
マットを指定して時間を表示すると、12時間表記が用カタログ内のSCLプログラムを、行番号付きで外部フいられますが、「24:00」に対してTIMEAMPMフォー

ァイルに出力する方法はありますか。

の相関係数がrになるように、aとbとを定めるのを問題とします。
まず、新しい変数yの分散は 1 にしておきましょう。yの分散は次のマットを指定すると、「12:00 AM」と出力されます。なぜ「00:00
AM」ではないのでしょうか。

SASシステム リリース 6.12では、BUILDプロシジャのw i th y ;
run;

出力結果

ようになります。

PRINTステートメントでLINENUMオプションを指定すプログラム

ることにより、SCLプログラムに行番号を付けて出力

Simple Statistics

Var(y)=a2+b2できます。また、外部ファイルに出力するにはPRTFILE= オプショ
d a ta nul l ;つまり、これから決めるa, bの定数にはンを指定します。

YX

var 1= '24 :0 0 ';var 2= i np ut(va r 1,ti me5.);

カタログ SASUSER.TEST内の全SCLエントリのSCLプログラムに

p ut va r 2 ti me a mp m8. ;

行番号を付け、外部ファイルc:¥temp¥source.lstに出力する場合

Mean

Std Dev

Sum

Minimum

Maxi mu m

10000

0.00509

0.995950.8997-3.9208

3. 4808

10000

0.0147

0.9939147.0-3.8408

4. 3135

Variablea2+b2=1

N

Pearson Correlation Coefficients / Prob > R under Ho: Rho=0/ N = 10000という制約がつきます。

r un;
p ro c b uild c=s as us er.t es t b at ch;

出力結果

p rint s o urce et =s cl linenum p rt f ile='c:¥t emp ¥s o urce.l s t' ;次に、xとyとの共分散を求めます。

X
Y

run;

1 Σx(ax+bz)
Cov(x,y)= n

1 2:0 0 A M

0.593650.00011 (aΣx 2+bΣxz)=n= a Σx 2+ b Σxznn=aSASシステムでの12時間表記については、仕様として「01時」から「12時」までの表記法を採用しています。このため、「24:00」の場合は、「00:00 AM」ではなくSQLプロシジャを使用して、任意のSASデータセット「12:00 AM」と表示されます。

1 Σx 2=1, 1 Σxz=0 より)( nnの変数名などを参照することはできますか。
これから、xとyとの相関係数rは次のようになります。
SASデータセットの変数名などの情報は、ディクショ
ナリテーブルに保存され、SQLプロシジャで参照でき

GCONTOURプロシジャを実行して等高線グラフを出ERROR: 半数以上のグ リッドセルにデータ値がありません。
等高線グラフを作成しません。

ます。
以上より、
SASUSERS.CLASS を参照する場合

a2+b2=1ap ro c s q l;=r

(a2+b2)s elect * f ro m d ict io nary .co lumnsを満たすように a,b を設定すればよいことになります。この式を解where lib name='S AS U S E R ' and memname='C LAS S ';DATAステップ等でオブザベーションを増やす以外には、回避方法

a(a2+b2)

力しようとした際、以下のエラーメッセージが出力され、グラフが作成できません。

Corr(x,y) =いて、

q uit ;はないのでしょうか。
a=r
上記のように、データ値の不足のためにエラーメッセ

b= (1-r2)

ージが出力される場合、SAS/GRAPHソフトウェアの以前のQ&Aで、任意の分散共分散行列の正規乱数を発G3DGRIDプロシジャでデータを補完できます。以下に生させる例がありましたが(SASサンプルプログラムを示します。

Technical

Volume5No3)、もっと簡単に、2つの変数について任d a ta test;

意の相関係数になる乱数を SAS/IMLソフトウェアを使わないで発i n p ut x y z;

生させる方法はないでしょうか。

たとえば相関係数が0.6の変数x,yを10000個発生させるには次のようにします。
プログラム

c a r d s;
1 1

1

2変数の場合、DATAステップで計算させることも可能

2 22です。下記に、その手順を示します。それぞれ平均が0、

3 3

3

分散が1、共分散が0の確率変数xとzとが利用できるとします。

p r o c g 3g r i d d ata= te st ou t =t est 2;
g r i d x *y= z;r un;
p r o c g co nto ur d ata=t est 2;
p l o t x *y= z;
run;が得られます。

Newsda ta c o r r s i m ( k e e p= x y ) ;a = 0.6;b = s qr t( 1 - a * a ) ;do n = 1 to 1 0 0 0 0 ;1 Σx 2=1
Var(x) = n
Var(z) = 1 Σz 2=1n
Cov(x,z)= 1 Σxz=0n

x = rannor(4989);
y = a * x + b* r a n n o r ( 5 9 6 3 ) ;o u tpu t;
e n d;

ここで、xとzとの線形結合で計算する新しい変数yを求めます。

run;

y=ax+bzpr o c c o r r da ta = c o r r s i m ;var x;

89

Oct ober 1 9 9 8 Volume6 Number 1

ここでa,bは定数です。この新変数yと、前の変数のうちの一つxとSASシステムのTIMEAMPMおよびDATEAMPM フォー
マットを指定して時間を表示すると、12時間表記が用カタログ内のSCLプログラムを、行番号付きで外部フいられますが、「24:00」に対してTIMEAMPMフォー

ァイルに出力する方法はありますか。

の相関係数がrになるように、aとbとを定めるのを問題とします。
まず、新しい変数yの分散は 1 にしておきましょう。yの分散は次のマットを指定すると、「12:00 AM」と出力されます。なぜ「00:00
AM」ではないのでしょうか。

SASシステム リリース 6.12では、BUILDプロシジャのw i th y ;
run;

出力結果

ようになります。

PRINTステートメントでLINENUMオプションを指定すプログラム

ることにより、SCLプログラムに行番号を付けて出力

Simple Statistics

Var(y)=a2+b2できます。また、外部ファイルに出力するにはPRTFILE= オプショ
d a ta nul l ;つまり、これから決めるa, bの定数にはンを指定します。

YX

var 1= '24 :0 0 ';var 2= i np ut(va r 1,ti me5.);

カタログ SASUSER.TEST内の全SCLエントリのSCLプログラムに

p ut va r 2 ti me a mp m8. ;

行番号を付け、外部ファイルc:¥temp¥source.lstに出力する場合

Mean

Std Dev

Sum

Minimum

Maxi mu m

10000

0.00509

0.995950.8997-3.9208

3. 4808

10000

0.0147

0.9939147.0-3.8408

4. 3135

Variablea2+b2=1

N

Pearson Correlation Coefficients / Prob > R under Ho: Rho=0/ N = 10000という制約がつきます。

r un;
p ro c b uild c=s as us er.t es t b at ch;

出力結果

p rint s o urce et =s cl linenum p rt f ile='c:¥t emp ¥s o urce.l s t' ;次に、xとyとの共分散を求めます。

X
Y

run;

1 Σx(ax+bz)
Cov(x,y)= n

1 2:0 0 A M

0.593650.00011 (aΣx 2+bΣxz)=n= a Σx 2+ b Σxznn=aSASシステムでの12時間表記については、仕様として「01時」から「12時」までの表記法を採用しています。このため、「24:00」の場合は、「00:00 AM」ではなくSQLプロシジャを使用して、任意のSASデータセット「12:00 AM」と表示されます。

1 Σx 2=1, 1 Σxz=0 より)( nnの変数名などを参照することはできますか。
これから、xとyとの相関係数rは次のようになります。
SASデータセットの変数名などの情報は、ディクショ
ナリテーブルに保存され、SQLプロシジャで参照でき

GCONTOURプロシジャを実行して等高線グラフを出ERROR: 半数以上のグ リッドセルにデータ値がありません。
等高線グラフを作成しません。

ます。
以上より、
SASUSERS.CLASS を参照する場合

a2+b2=1ap ro c s q l;=r

(a2+b2)s elect * f ro m d ict io nary .co lumnsを満たすように a,b を設定すればよいことになります。この式を解where lib name='S AS U S E R ' and memname='C LAS S ';DATAステップ等でオブザベーションを増やす以外には、回避方法

a(a2+b2)

力しようとした際、以下のエラーメッセージが出力され、グラフが作成できません。

Corr(x,y) =いて、

q uit ;はないのでしょうか。
a=r
上記のように、データ値の不足のためにエラーメッセ

b= (1-r2)

ージが出力される場合、SAS/GRAPHソフトウェアの以前のQ&Aで、任意の分散共分散行列の正規乱数を発G3DGRIDプロシジャでデータを補完できます。以下に生させる例がありましたが(SASサンプルプログラムを示します。

Technical

Volume5No3)、もっと簡単に、2つの変数について任d a ta test;

意の相関係数になる乱数を SAS/IMLソフトウェアを使わないで発i n p ut x y z;

生させる方法はないでしょうか。

たとえば相関係数が0.6の変数x,yを10000個発生させるには次のようにします。
プログラム

c a r d s;
1 1

1

2変数の場合、DATAステップで計算させることも可能

2 22です。下記に、その手順を示します。それぞれ平均が0、

3 3

3

分散が1、共分散が0の確率変数xとzとが利用できるとします。

p r o c g 3g r i d d ata= te st ou t =t est 2;
g r i d x *y= z;r un;
p r o c g co nto ur d ata=t est 2;
p l o t x *y= z;
run;が得られます。

Newsda ta c o r r s i m ( k e e p= x y ) ;a = 0.6;b = s qr t( 1 - a * a ) ;do n = 1 to 1 0 0 0 0 ;1 Σx 2=1
Var(x) = n
Var(z) = 1 Σz 2=1n
Cov(x,z)= 1 Σxz=0n

x = rannor(4989);
y = a * x + b* r a n n o r ( 5 9 6 3 ) ;o u tpu t;
e n d;

ここで、xとzとの線形結合で計算する新しい変数yを求めます。

run;

y=ax+bzpr o c c o r r da ta = c o r r s i m ;var x;

89

October 1 9 9 8 Volume6 Number 1

SUGI-J ’98
SUGI-J 98
開催レポート

賞の選出結果が懇親会にて発表され、下記の論文が各賞に輝きました。

使用した各種データです。
入手方法：NIFTY SERVE SAS Station (GOコマンド GO SAS) デ●最優秀論文賞

ータライブラリ1番#33「SAS/DATAステップによる群逐次計画における棄却限界値及びまたはftp://ftp.sas.com/pub/webfiles/Japan/

必要症例数の算出」
武田薬品工業株式会社 宇野一氏

sample/sugi-jmp.lzh「SASのマクロの作り方」●優秀論文賞

データ名：SUGI-MAC.LZH「ニューロTAA」

著作権者：大学入試センター 前川眞一氏

株式会社ニッセイ基礎研究所 小野潔氏

解説

：ハンズオン・ワークショップ「SASのマクロの作り方」

1998年7月2日、3日の両日、東京・明治記念館にて「第17回 日本「盲検下での症例数の再計算のためのEMアルゴリズムを用いた分で使用した各種マクロ等のデータです。なお、このデSASユーザー会総会および研究発表会 (SUGI-J '98)」が開催されま散推定プログラムについて」ータは「SASによる多変量データの解析」(前川眞一著、した。本年度は、例年ご好評をいただいているシンポジウム、また日本ベーリンガーインゲルハイム株式会社 鍵村達夫氏、出本敏靖氏

JMPに関する特別講演など多彩なイベントが催され、会場は多数の●世話人会特別賞

SASユーザーでにぎわいました。開催された各イベントの概要をご「SASを用いた統計解析学習支援システムの構築」
神戸商科大学 古隅弘樹氏

紹介します。

イベント概要東京大学出版会発行)で使用しているデータと共通です。

SASシステムリリース 6.11 TS040

Digital Unix版

SASシステムリリース 6.12 TS040

ータライブラリ1番#34

ABI+版

SASシステムリリース 6.11 TS040

またはftp://ftp.sas.com/pub/webfiles/Japan/

SunOSおよびSolaris版 SASシステムリリース 6.12 TS020

sample/sugi-mac.lzh

HP-UX版

SASシステムリリース 6.12 TS020

AIX版

SASシステムリリース 6.12 TS020■フォーマルデモンストレーション
フォーマルデモンストレーションでは、毎年SASシステムの新製論文集について

品／新機能について、実演を交えてご紹介しています。本年度は、SUGI-J '98で発表されたすべての論文が掲載された論文集は、弊社ついての報告、および世話人の交代が発表されました。

SASシステムが企業の情報活用に対して提供できるソリューショマニュアル販売係を通してご購入いただけます(定価 4,000円)。論

ン関連のツールを中心に、10トラックのデモンストレーションが文集ご購入についてのお問い合わせは、下記までお寄せください。

■シンポジウム

下記の2トピックについて開催されました。

■ハンズオン・ワークショップショップ。本年度は、下記の4つのトピックについて開催され、会場には開催前から受講希望者が列を作りました。

司会：SASインスティチュートジャパン 今城義高

「SASのマクロの作り方」

スピーチ：SAS Institute Inc., James H. Goodnight
株式会社金融エンジニアリング・グループ 中林三平氏
成蹊大学 岩崎学教授
SAS Institute Inc., John Brocklebank「総括報告書」
司会：持田製薬株式会社 舟喜光一氏

講師：大学入試センター 前川眞一先生

SASシステムリリース 6.12 TS020

マニュアル販売係

OS/2版

SASシステムリリース 6.12 TS020

TEL:03-3533-3860 FAX:03-3533-3781

Macintosh版

SASシステムリリース 6.12 TS040■ミニコンピュータプラットフォーム
OpenVMS AXP版 SASシステムリリース 6.12 TS020
OpenVMS VAX版 SASシステムリリース 6.08 TS407「JMPソフトウェア」
講師：東京理科大学 芳賀敏郎先生■メインフレームプラットフォーム「SAS/IMLによる行列ベクトル入門」
講師：専修大学 朝野熙彦先生「ポイント&クリックで行うデータウェアハウスの構築」
講師：SASジャパン 松井陽子

パネリスト：東京大学 大橋靖雄教授
持田製薬株式会社 水留稔氏

SASシステムリリース 6.12 TS045*

Windows版

毎年好評の、1人1台のマシンを利用して行うハンズオン・ワーク「データマイニング」

パネリスト：株式会社クレディセゾン 三谷宏雄氏■PCプラットフォーム
Windows版

行われました。

トピックごとに多彩なパネリストをお招きし、専門家ならではのディスカッションを繰り広げていただくシンポジウム。本年度は、■UNIXプラットフォーム
MIPS ABI版

入手方法：NIFTY SERVE SAS Station (GOコマンド GO SAS) デ総会では、ワーキンググループなど、1年間のユーザー会活動に■日本SASユーザー会総会

最新リリース情報

MVS版

SASシステムリリース 6.09E TS450

MSP版

SASシステムリリース 6.08 TS415

VOS3版

SASシステムリリース 6.08 TS420

CMS版

SASシステムリリース 6.08 TS410■論文発表／ハンズオン・ワークショップのデータ

住友製薬株式会社 東宮秀夫氏

本年度の論文発表およびハンズオン・ワークショップで使用されシミック株式会社 市川宏司氏、田中貴幸氏

た下記の3種類のデータが、オンラインで入手可能になっています。

イー・ピー・エス株式会社 安達健氏

ダウンロードし、解説やREADMEファイルなどをお読みの上、有限会社電助システムズ 安藤永一氏

ご利用ください。

（＊印は現在準備中です。）

株式会社富士通大分ソフトウェアラボラトリ 志賀功氏
クインタイルズ・アジア・インク 西次男氏

●論文発表データ「盲検下での症例数の再計算のためのEMアルゴリズムを用いた分■JMP特別講演

散推定プログラムについて」

大学における統計教育のあり方とその未来について、先進的コン

データ名：ESTIM.LZH

ピュータ教育で知られる慶応義塾大学 湘南藤沢キャンパスでの著作権者：日本ベーリンガーインゲルハイム株式会社 鍵村達夫氏、

JMP-IN導入事例を題材に、下記のタイトルでご講演いただきま
した。

出本敏靖氏
解説

「JMP-INによる実践的統計入門教育 −慶応義塾大学湘南藤沢キャンパスの事例−」：SUGI-J '98で発表したIMLプログラム等が圧縮されて入っています。

入手方法：NIFTY SERVE SAS Station (GOコマンド GO SAS)

講師：慶応義塾大学 総合政策学部 片岡正昭先生

データライブラリ1番#36●ハンズオン・ワークショップデータ

■論文発表

10

「JMPソフトウェア」

本年度も社内外からさまざまな応用事例の論文が集まりました。

データ名：SUGI-JMP.LZH

8カテゴリ41本の論文が発表され、うち29本は各会場にて口頭発

著作権者：東京理科大学 芳賀敏郎氏表されました。また恒例となりました、世話人会による優秀論文

解説：ハンズオン・ワークショップ「JMPソフトウェア」で

11

October 1 9 9 8 Volume6 Number 1

SUGI-J ’98
SUGI-J 98
開催レポート

賞の選出結果が懇親会にて発表され、下記の論文が各賞に輝きました。

使用した各種データです。
入手方法：NIFTY SERVE SAS Station (GOコマンド GO SAS) デ●最優秀論文賞

ータライブラリ1番#33「SAS/DATAステップによる群逐次計画における棄却限界値及びまたはftp://ftp.sas.com/pub/webfiles/Japan/

必要症例数の算出」
武田薬品工業株式会社 宇野一氏

sample/sugi-jmp.lzh「SASのマクロの作り方」●優秀論文賞

データ名：SUGI-MAC.LZH「ニューロTAA」

著作権者：大学入試センター 前川眞一氏

株式会社ニッセイ基礎研究所 小野潔氏

解説

：ハンズオン・ワークショップ「SASのマクロの作り方」

1998年7月2日、3日の両日、東京・明治記念館にて「第17回 日本「盲検下での症例数の再計算のためのEMアルゴリズムを用いた分で使用した各種マクロ等のデータです。なお、このデSASユーザー会総会および研究発表会 (SUGI-J '98)」が開催されま散推定プログラムについて」ータは「SASによる多変量データの解析」(前川眞一著、した。本年度は、例年ご好評をいただいているシンポジウム、また日本ベーリンガーインゲルハイム株式会社 鍵村達夫氏、出本敏靖氏

JMPに関する特別講演など多彩なイベントが催され、会場は多数の●世話人会特別賞

SASユーザーでにぎわいました。開催された各イベントの概要をご「SASを用いた統計解析学習支援システムの構築」
神戸商科大学 古隅弘樹氏

紹介します。

イベント概要東京大学出版会発行)で使用しているデータと共通です。

SASシステムリリース 6.11 TS040

Digital Unix版

SASシステムリリース 6.12 TS040

ータライブラリ1番#34

ABI+版

SASシステムリリース 6.11 TS040

またはftp://ftp.sas.com/pub/webfiles/Japan/

SunOSおよびSolaris版 SASシステムリリース 6.12 TS020

sample/sugi-mac.lzh

HP-UX版

SASシステムリリース 6.12 TS020

AIX版

SASシステムリリース 6.12 TS020■フォーマルデモンストレーション
フォーマルデモンストレーションでは、毎年SASシステムの新製論文集について

品／新機能について、実演を交えてご紹介しています。本年度は、SUGI-J '98で発表されたすべての論文が掲載された論文集は、弊社ついての報告、および世話人の交代が発表されました。

SASシステムが企業の情報活用に対して提供できるソリューショマニュアル販売係を通してご購入いただけます(定価 4,000円)。論

ン関連のツールを中心に、10トラックのデモンストレーションが文集ご購入についてのお問い合わせは、下記までお寄せください。

■シンポジウム

下記の2トピックについて開催されました。

■ハンズオン・ワークショップショップ。本年度は、下記の4つのトピックについて開催され、会場には開催前から受講希望者が列を作りました。

司会：SASインスティチュートジャパン 今城義高

「SASのマクロの作り方」

スピーチ：SAS Institute Inc., James H. Goodnight
株式会社金融エンジニアリング・グループ 中林三平氏
成蹊大学 岩崎学教授
SAS Institute Inc., John Brocklebank「総括報告書」
司会：持田製薬株式会社 舟喜光一氏

講師：大学入試センター 前川眞一先生

SASシステムリリース 6.12 TS020

マニュアル販売係

OS/2版

SASシステムリリース 6.12 TS020

TEL:03-3533-3860 FAX:03-3533-3781

Macintosh版

SASシステムリリース 6.12 TS040■ミニコンピュータプラットフォーム
OpenVMS AXP版 SASシステムリリース 6.12 TS020
OpenVMS VAX版 SASシステムリリース 6.08 TS407「JMPソフトウェア」
講師：東京理科大学 芳賀敏郎先生■メインフレームプラットフォーム「SAS/IMLによる行列ベクトル入門」
講師：専修大学 朝野熙彦先生「ポイント&クリックで行うデータウェアハウスの構築」
講師：SASジャパン 松井陽子

パネリスト：東京大学 大橋靖雄教授
持田製薬株式会社 水留稔氏

SASシステムリリース 6.12 TS045*

Windows版

毎年好評の、1人1台のマシンを利用して行うハンズオン・ワーク「データマイニング」

パネリスト：株式会社クレディセゾン 三谷宏雄氏■PCプラットフォーム
Windows版

行われました。

トピックごとに多彩なパネリストをお招きし、専門家ならではのディスカッションを繰り広げていただくシンポジウム。本年度は、■UNIXプラットフォーム
MIPS ABI版

入手方法：NIFTY SERVE SAS Station (GOコマンド GO SAS) デ総会では、ワーキンググループなど、1年間のユーザー会活動に■日本SASユーザー会総会

最新リリース情報

MVS版

SASシステムリリース 6.09E TS450

MSP版

SASシステムリリース 6.08 TS415

VOS3版

SASシステムリリース 6.08 TS420

CMS版

SASシステムリリース 6.08 TS410■論文発表／ハンズオン・ワークショップのデータ

住友製薬株式会社 東宮秀夫氏

本年度の論文発表およびハンズオン・ワークショップで使用されシミック株式会社 市川宏司氏、田中貴幸氏

た下記の3種類のデータが、オンラインで入手可能になっています。

イー・ピー・エス株式会社 安達健氏

ダウンロードし、解説やREADMEファイルなどをお読みの上、有限会社電助システムズ 安藤永一氏

ご利用ください。

（＊印は現在準備中です。）

株式会社富士通大分ソフトウェアラボラトリ 志賀功氏
クインタイルズ・アジア・インク 西次男氏

●論文発表データ「盲検下での症例数の再計算のためのEMアルゴリズムを用いた分■JMP特別講演

散推定プログラムについて」

大学における統計教育のあり方とその未来について、先進的コン

データ名：ESTIM.LZH

ピュータ教育で知られる慶応義塾大学 湘南藤沢キャンパスでの著作権者：日本ベーリンガーインゲルハイム株式会社 鍵村達夫氏、

JMP-IN導入事例を題材に、下記のタイトルでご講演いただきま
した。

出本敏靖氏
解説

「JMP-INによる実践的統計入門教育 −慶応義塾大学湘南藤沢キャンパスの事例−」：SUGI-J '98で発表したIMLプログラム等が圧縮されて入っています。

入手方法：NIFTY SERVE SAS Station (GOコマンド GO SAS)

講師：慶応義塾大学 総合政策学部 片岡正昭先生

データライブラリ1番#36●ハンズオン・ワークショップデータ

■論文発表

10

「JMPソフトウェア」

本年度も社内外からさまざまな応用事例の論文が集まりました。

データ名：SUGI-JMP.LZH

8カテゴリ41本の論文が発表され、うち29本は各会場にて口頭発

著作権者：東京理科大学 芳賀敏郎氏表されました。また恒例となりました、世話人会による優秀論文

解説：ハンズオン・ワークショップ「JMPソフトウェア」で11

SAS Technical News 編集部からのお知らせ

Oct o b e r 1 9 9 8

SAS Technical Newsは広くSASシステムを知っていただくため、深くSASシステムを利用していただくために発行しております。職
場の皆様や、学校の教員・学生の皆様など、SASシステムをご利用の方に無料でご提供しておりますので、多くの方がご講読ください
ますようお願いいたします。なお、編集部では、本紙を確実にお届けできるよう講読者リストを管理しておりますが、宛先不明で戻ってくるケースがあります。お近くに以下のような方がいらっしゃい
ましたら、お手数ですがその方を通じてファクシミリまたは電子メールで編集部までご連絡ください。
・講読申込をしたのに送付されてこない方
・違う住所、部署に送付されている方・複数部送付されてくる方

SAS Technical News 講読申込要領
SAS Technical Newsの講読申込、講読中止、または送付先変更を希望される方は、以下の項目をご記入の上、ファクシミリ、郵便、
または電子メールでお送りください。

特集○ 申込内容- 新規講読希望

SPDSバージョン2.0- 講読中止- 送付先の変更 (SAS Technical News のみ／弊社からの全ての送付物)○ お名前 (フリガナもご記入ください)

SASデータセット資産を高速に活用。

○ 貴社名・ご所属 (正式な名称でご記入ください)

データウェアハウスのリポジトリに最適な○ 郵便番号・ご住所

高速データサーバSPDS

特集 SPDSバージョン2.0○ 電話番号バージョン 2.0のリリース○ FAX番号○ 電子メールアドレス

5

SASシステムの西暦2000年対応について

6

Q&A○ SAS Technical Newsへのご要望、ご感想などがあれば、ご自由にどうぞSASインスティチュートは理想的なデータウェアハウスを構築する

10

SUGI-J '98開催レポート

TEL: 03-3533-3780
FAX: 03-3533-1613
E-mail: technews@jpn.sas.com

ラムの活用に大きなスピードアップとセキュリティ強化をもたらす
Scalable Performance Data Server (以下 SPDS) をご紹介します。

株式会社 SASインスティチュートジャパン
SAS Technical News 編集部

ためのツールを数多く発表してきました。その中でも従来のSASユーザから大きな支持を受け、既存のSASデータセットやSASプログ

お問い合わせ/お申し込み先:〒104-0054 東京都中央区勝どき1-13-1 イヌイビル・カチドキ8F(Scalable Performance Data Server)

11

最新リリース情報

1. はじめに
SPDSは1996年末に初期バージョンが発表され、パフォーマンス関
連での改善・機能追加とサポートするプラットフォームの拡張などがなされてきました。1998年9月20日より販売が開始された最新バージョン 2.0 では、主にSQLパススルー文への対応、セキュリティ面の改善などが実現されています。

2. SPDSの特長
SPDSの大きな目的はデータウェアハウス、またはデータマートに適したデータサーバを提供することです。実際、データウェアハウ
ス市場ではさまざまな同類の製品が発表されていますが、それらとSPDSが大きく異なる点はSASデータセットそのものの処理をより高速にし、SASデータセットに対するセキュリティを高めたSASシ
ステム専用のデータサーバであることです。従来のSASシステムも高速なデータ処理性、高度なデータ加工能力、分析機能を提供し、データウェアハウスのための機能を十分持ち備えていましたが、やOctober 1998, Volume 6 Number 1
発行
株式会社SASインスティチュートジャパン
東京本社〒104-0054 東京都中央区勝どき1-13-1 イヌイビル・カチドキ 8F
TEL: 03-3533-3780 FAX: 03-3533-1613
大阪支店〒530-0004 大阪市北区堂島浜1-4-16 アクア堂島西館 12F
TEL: 06-345-5700 FAX: 06-345-5655
URL http://www.sas.com/japan/
NIFTY SERVE SAS Station:go sas

はりデータサーバという点ではデータベースマネジメントシステム(以下DBMS)に頼らざるを得ないことが多々ありました。実際にSASユーザの中でも、処理はSASシステムで行っているのに、データサーバに関してはDBMSをご利用になっている方が大勢います。
しかしながら、基幹系システムの構築を目的とするDBMSは、かえってその特化した高機能がデータウェアハウスの処理に不都合をもたらすことも多いのも事実です。そのような問題に対してSASイン
スティチュートが提供するソリューションが、SPDSです。