SAS管理コンソールでデータベースライブラリを定義する方法

[OS] Windows, UNIX
[リリース] SAS 9.1以降
[キーワード] BI, SMC, database library, assign, definition

[質問]

SAS管理コンソールにおいて、データベースライブラリを定義する方法を教えてください。

[回答]

SAS管理コンソール(以下SMC)でデータベースライブラリを定義するには、次のような手順で作業します。ここでは、データベースがOracleである場合を例にしてご紹介します。

  1. Oracleに接続するユーザーの作成
  2. Oracleデータベースサーバーの定義
  3. Oracleデータベーススキーマの定義
  4. Oracleライブラリの定義
  5. メタデータのロード

注意:「5. メタデータのロード」は、無制限ユーザー(sasadm)では行なうことができません。

1. Oracleに接続するユーザーの作成

ユーザーマネージャを開きます。この例ではユーザーを新規作成する手順から紹介します。

  1. 右クリックしてメニューを表示し、[新規作成]で、任意の名称でユーザーを作成します。
  2. [一般タブ]の名前にユーザー名を入力します。
  3. [ログイン]タブに移り、[新規作成]ボタンをクリックします。
  4. [新しいログインのプロパティ]ウィンドウで、ユーザーID(ドメイン名¥ユーザー名)、パスワード、認証ドメインを入力します。
    認証ドメインは、デフォルトでは「DefaultAuth」が登録されています。「DefaultAuth」以外に認証ドメインを追加する場合には、[新規作成]ボタンをクリックし、[認証ドメインの新規作成]ウィンドウで、認証ドメインの名前と説明を入力します。
    認証ドメインの名称に制限事項はありませんが、認証ドメインの認証プロバイダが明確に判断できるようなものにすることをお勧めします。
    認証ドメインを作成後、[新しいログインのプロパティ]ウィンドウに戻り、認証ドメインを上記で新規作成したものに指定して、[OK]を選択します。
  5. Oracleデータベースに接続する際のユーザーを追加します。[新規作成]ボタンをクリックします。
  6. [新しいログインのプロパティ]ウィンドウで、ユーザーID、パスワード、認証ドメインを入力します。ユーザーIDとパスワードは、Oracleのものを使用します。

認証ドメインには、「DefaultAuth」などが登録されています。Oracle接続用の認証ドメインを追加するため、[新規作成]ボタンをクリックします。4 での作業と同様に、認証ドメインの名称と説明を入力します(例:OracleAuth)。

認証ドメインを作成後、[新しいログインのプロパティ]ウィンドウに戻り、認証ドメインを先ほど設定したもの(この例では「OracleAuth」)に指定して[OK]を選択します。

2. Oracleデータベースサーバーの定義

サーバーマネージャで、Oracleデータベースサーバーを登録します。[新規サーバー]ウィザードに沿って設定を行ないます。

  1. [新規作成]を選択します。
  2. 定義するサーバーを選択します。
    [サーバーテンプレート] → [サーバー] → [データベースサーバー] → [Oracleサーバー]の順に選択し、[次へ]をクリックして進みます。
  3. 登録するOracleサーバーに任意の名称を付与し(例:「Oracle9i」)、[次へ]で進みます。
  4. サーバーのプロパティを入力します(下記は入力の一例です)。

    メジャーバージョン番号9
    マイナーバージョン番号2
    ソフトウェアバージョン9.2.0.1.0
    ベンダーOracle Corporation
    使用するマシンSASServer01

    「使用するマシン」に登録がない場合には[新規作成]ボタンをクリックし、サーバーのマシン情報を新たに登録します。入力後、[次へ]をクリックします。

  5. 接続プロパティを設定します。次のように、Oracle Serverへの接続に関する情報を入力後、[次へ]をクリックします。

    パス Oracleドライバ、ノードおよびデータベースを指定します。
    Oracleに直接接続するときに使用するOracleパスと同じパスを指定します。LIBNAMEステートメントのPATH=オプションに相当します。
    ドメイン Oracleサーバーへのログインの認証に使用するドメインを指定します。
    この例ではOracleAuthを作成しました。

  6. これまでに入力した情報が表示されます。設定内容が正しいことを確認し、[完了]を選択します。以上で、Oracleサーバーの定義は完了です。

3. Oracleデータベーススキーマの定義

SMCのデータライブラリマネージャにて、Oracleデータベーススキーマを作成します。

  1. [データベーススキーマ]で右クリックしてメニューを表示し、[データベーススキーマの新規作成]を選択します。
  2. 「新規データベーススキーマウィザード」が表示されます。新規データベーススキーマウィザードでは、既存のデータベーススキーマファイルへのメタデータ参照を定義します。[リソーステンプレート] → [データベーススキーマ] → [Oracleスキーマ]を選択し、[次へ]をクリックします。
  3. 定義するスキーマの名前と簡単な説明を入力します。
  4. ここで指定した名前が、SMCのナビゲーションツリーと表示領域に表示されます。説明の入力は任意です。入力後、[次へ]をクリックします。
  5. データベースのデータへのアクセスに使用するデータベーススキーマのスキーマオプションを指定します。入力後、[次へ]をクリックします。

    名前 データベースのデータにアクセスする際に使用する既存のデータベーススキーマに名前(1-8文字)を付けます。開始文字は英文字にする必要がありますが、残りの文字には英文字や数字を使用できます。
    この値はLIBNAMEステートメントのSCHEMA=オプションに相当します。既存のデータベーススキーマの参照となるスキーマを定義するため、このフィールドの値はスキーマファイル名と完全に一致(大文字小文字を含む)する必要があります。
    サーバー このスキーマが定義されているサーバーを指定します。
    「2. Oracleデータベースサーバーの定義」のステップで登録したOracleサーバー(例:Oracle9i)を選択します。

  6. これまで入力した情報が表示されます。設定内容が正しいことを確認し、[完了]を選択します。以上で、Oracleデータベーススキーマの定義は完了です。

4. Oracleライブラリの定義

データライブラリマネージャにて、OracleデータベースにSASライブラリを登録します。

  1. [データライブラリマネージャ] → [SASライブラリ]にて、右クリックしてメニューを表示し、[ライブラリの新規作成]を選択します。
  2. 定義するサーバーを選択します。
    [リソーステンプレート] → [ライブラリ] → [データベースライブラリ] → [Oracleサーバー]を選択し、[次へ]をクリックして進みます(LIBNAMEステートメントのENGINEオプションに相当します)。
  3. ライブラリ名を設定します。
    ライブラリ名とライブラリの簡単な説明を入力します。ここで指定した名前が、SMCのナビゲーション領域と表示領域に表示されます。入力後、[次へ]をクリックします。
  4. ライブラリ参照名を設定します。
    ライブラリに名前(1〜8文字)を付けます。先頭の文字は英文字のみ、残りの文字には英文字および数字を使用できます。入力後、[次へ]をクリックします。
  5. 外部データベースサーバーを指定します。
    「2. Oracleデータベースサーバーの定義」で設定したOracleサーバーと、「3. Oracleデータベーススキーマの定義」で設定したOracleデータベーススキーマを選択します。選択後、[次へ]をクリックして進みます。
  6. ライブラリを割り当てるSASサーバーを指定し、[次へ]をクリックします。
  7. これまで入力した情報が表示されるので、設定内容が正しいことを確認し、[完了]を選択します。以上で、ライブラリの定義は完了です。
  8. LIBNAMEステートメントを確認します。

上記で定義したライブラリを選択した状態で右クリックしてメニューを表示し、「LIBNAMEの表示」を選択します。以下のようなLIBNAMEが表示されます。


  LIBNAME Oralib ORACLE PATH=SAS SCHEMA=SCOTT USER=scott PASSWORD="{sas001}***********" ;

5. メタデータのロード

※この作業は無制限ユーザー(sasadm)以外の権限を持ったユーザーで行なう必要があります。

ステップ4で作成したライブラリに、Oracleテーブルのメタデータをロードします。

  1. [データライブラリマネージャ] → [SASライブラリ] → [Oracleライブラリ(先ほど登録したもの)]を選択し、右クリックしてメニューを表示し、[テーブルのインポート]を選択します。
  2. データソースへ接続するSASライブラリを指定します。内容を確認し、[次へ]進みます。
    この作業により、Oracleデータベースに接続が行なわれます。
  3. 登録するOracleテーブルを選択します。すべてのテーブルを登録する場合には、[テーブルをすべて選択]ボタンをクリックします。選択後、[次へ]進みます。
  4. 登録されたテーブルの名称を確認し、[完了]を選択します。

以上で、Oracleテーブルのメタデータロードは完了です。