データ・ソースの事前構成タスクの実行

データ・ソースにアクセスするために、構成ステップの実行が必要になる場合があります。

データ・ソースからリポジトリ・ファイルに物理オブジェクトをインポートしたり、接続プールをデータ・ソースに設定する前に、これらの構成ステップが必要になる場合があります。

多くのデータ・ソースについては、クライアント・コンポーネントをインストールする必要があります。クライアント・コンポーネントは多くの場合、問合せアクセスについてはOracle BIサーバーをホストするコンピュータに、インポートなどのオフライン操作については管理ツールをホストするコンピュータ(異なる場合)にインストールします。場合によっては、JavaHostプロセスが配置されているコンピュータにクライアント・コンポーネントをインストールする必要があります。

このセクションには次のトピックが含まれます:

ODBCデータ・ソース名(DSN)の設定

ODBC接続を介したデータ・ソースからのインポートや、ODBCデータ・ソースへの接続プールの設定を行う前に、クライアント・コンピュータでそのデータ・ソースのODBCデータ・ソース名(DSN)を作成しておく必要があります。

データ・ソースからメタデータをインポートする際、メタデータのインポート・ウィザードでこのDSNを参照します。

ODBC DSNは、Windowsシステムでのみインポートに使用できます。

  1. Windowsで、「ODBCデータ ソース アドミニストレータ」を検索して開きます。「ODBCデータ ソース アドミニストレータ」ダイアログが表示されます。
  2. 「ODBC データ ソース アドミニストレータ」ダイアログで、「システム DSN」タブをクリックし、「追加」をクリックします。
  3. 「データ ソースの新規作成」ダイアログで、データ・ソースに適したドライバを選択し、「完了」をクリックします。

    残りの構成ステップは、構成するデータ・ソースごとに異なります。詳細は、データ・ソースのドキュメントを参照してください。

WindowsシステムのODBC DSNは、初期インポートにも、問合せ処理時のデータ・ソースへのアクセスにも使用されます。Linuxシステムでは、ODBC DSNはデータ・アクセスにのみ使用されます。Linuxでのデータソースの設定を参照してください。

Teradataデータ・ソースの設定を参照してください。

Oracle Databaseデータ・ソースの設定

Oracle Databaseデータ・ソースからメタデータをインポートする場合や接続プールを設定する場合、データ・ソース名として接続文字列全体を入力することも、tnsnames.oraファイルで定義されているネット・サービス名を使用することもできます。

ネット・サービス名のみを入力するには、Oracle BIサーバーがそのエントリを特定できるように、Oracle Analytics Server環境の次の場所でtnsnames.oraファイルを設定する必要があります。

BI_DOMAIN/bidata/components/core/serviceinstances/ssi/oracledb

Oracle DatabaseからのメタデータのインポートやOracle Databaseへの接続には常にOracle Call Interface (OCI)を使用する必要があります。スキーマのインポートや、接続プールの設定を行う前に、TNS名のエントリをtnsnames.oraファイルに追加しておく必要があります。詳細は、Oracle Databaseのドキュメントを参照してください。

このセクションには次のトピックが含まれます:

Oracle DatabaseおよびTimesTenに対するNUMERICデータ型のサポートの有効化を参照してください。

Oracle 12c Database In-Memoryのデータ・ソース

すべてのOracle 12c Database In-Memoryデータ・ソースで、Oracle BIサーバーはメモリー内に表を作成します。

Oracle 12c Database In-Memoryは、高パフォーマンスのインメモリー・データ・マネージャです。インメモリー列ストアを使用して、メモリー内に存在して迅速にスキャンできる特殊な列形式で、表およびパーティションのコピーを格納します。詳細は、12c リリース1の『Oracle Databaseコンセプト・ガイド』および『Oracle Database管理者ガイド』を参照してください。

Exadataを使用するOracle 12c Databaseのデータ・ソース

Exadataを使用するOracle 12c Databaseのデータ・ソースおよびExadataを使用するOracle 12c Database In-Memoryのデータ・ソースで、Oracle BIサーバーはメモリー内に表を作成します。

Oracle BIサーバーは、デフォルトでExadataハイブリッド列圧縮(EHCC)を使用します。

Oracle Exadata Database Machineは、Oracle Databaseを稼働させるために最適化されたプラットフォームです。Oracle 12c DatabaseおよびOracle 12c Database In-Memoryは共に、Oracle Exadata Database Machineで稼働します。詳細は、Exadata Database Machineに含まれるドキュメントを参照してください。

Oracle BIサーバーでサポートされる高度なOracleデータベースの機能

Oracle BIサーバーは圧縮(Exadataハイブリッド列圧縮)機能とインメモリー機能をサポートすることで、Oracle Databaseのネイティブ機能を活用し、問合せ時間を大幅に短縮しています。

メタデータのインポート時またはデータベース・タイプの指定時に、そのデータベース・オブジェクトの機能セットは、データベース・タイプに応じた適切なデフォルト値によって自動的に移入されます。Oracle BIサーバーは、このデータ・ソースに、これらのSQL機能を使用します。「データベース」ダイアログの「機能」タブで、サポートされていることを示すマーク(チェック)が機能に付けられている場合は、Oracle BIサーバーによってデータ・ソースに関数または計算がプッシュされパフォーマンスの向上が図られます。関数または機能がデータ・ソースでサポートされていない場合はOracle BIサーバーで計算または処理が実行されます。

Oracle BIサーバーによってサポートされるOracle Database機能に関する情報を次に示します。

  • 圧縮

    圧縮することで、データベースのサイズが減ります。データを圧縮すると格納に必要なページ数が少なくなるため、問合せでディスクから読み取るページも少なく、その結果、I/Oに過度な負担がかかるワークロードのパフォーマンスを向上させることができます。圧縮はデフォルトで使用されます。Oracleデータベースに集計を作成すると、集計表にはデフォルトで圧縮が適用されます。

    いずれかのOracleデータベースにデータベース・オブジェクトを作成すると、COMPRESSION_SUPPORTED機能がオブジェクトに自動的に適用されます。

  • Exadata Hybrid Columnar Compression (EHCC)

    OracleのEHCCは、Exadata上のデータベース機能およびストレージ機能を使用するために最適化されています。また、パフォーマンスが大きく向上する最高レベルのデータ圧縮が可能です。デフォルトでは、Exadataを使用するOracle 11g Database、Exadataを使用するOracle 12c DatabaseおよびExadataを使用するOracle 12c Database In-Memoryで、このタイプの圧縮が使用されます。

    いずれかのOracleデータベースにデータベース・オブジェクトを作成すると、EHCC_SUPPORTED機能がオブジェクトに自動的に適用されます。

    デフォルトでは、Oracleデータベースのオブジェクトに対して圧縮は無効になっています。オブジェクトの圧縮を有効にするには、オブジェクトのPERF_PREFER_COMPRESSIONフラグをオンに設定してください。

  • インメモリー

    インメモリー検索により、データの問合せの所要時間が削減されます。これは、ディスクよりも迅速で、確実なパフォーマンスです。インメモリー機能は、Oracle 12c Database In-MemoryおよびExadataを使用するOracle 12c Database In-Memoryで、メモリー内に表を作成する機能です。これらのデータベースで集計を作成すると、メモリー内でも集計が作成されます。

    前述のいずれかのOracleデータベースにデータベース・オブジェクトを作成する場合、INMEMORY_SUPPORTED機能がオブジェクトに自動的に適用されます。

Oracle Database高速アプリケーション通知および高速接続フェイルオーバー

高速アプリケーション通知(FAN)イベントと高速接続フェイルオーバー(FCF)がOracle Databaseで有効になっている場合、Oracle Call Interface (OCI)はFANイベントを使用して、Oracle Databaseデータ・ソースのFCFを有効にします。

高速アプリケーション通知(FAN)イベントと高速接続フェイルオーバー(FCF)は、バックグラウンドで実行されます。Oracleデータベースを使用できないためにユーザーが開始した問合せが失敗する場合、問合せはただちに失敗し、ユーザーはデータベース・リクエストのタイムアウトを待機せずに問合せを再試行できます。

クライアント・インストールに対する追加のOracle Database構成

クライアント・インストールを実行したコンピュータでOracle Database Clientをインストールする必要があります。

Oracleデータベース・クライアントをインストールしたら、ORACLE_HOMEという環境変数を作成し、その変数をOracleデータベース・クライアント用のOracleホームに設定します。TNS_ADMINという環境変数を作成し、変数をtnsnames.oraファイルの場所(BI_DOMAIN\config\fmwconfig\bienv\core)に設定します。

ファイアウォールを使用している場合のOracle BIサーバーの構成

Oracle BI ServerとOracle Databaseの間にファイアウォールがあると、問合せ時間が長くなります。

単一のnqcmd問合せの使用時に結果が返されるまでに2分から3分かかる場合、またはAnswersの使用時にプレゼンテーション・サービスで開始したSQL文の実行または検証の後に応答がない場合は、問合せ時間が長くなる可能性があります。

問合せ時間を改善するためには、次のようにして、BI_DOMAIN\config\fmwconfig\bienv\core内のsqlnet.oraファイルで、BREAK_POLL_SKIPパラメータおよびDISABLE_OOBパラメータを追加します。

BREAK_POLL_SKIP=10000
DISABLE_OOB=ON 

この構成変更はOracle BIサーバーでのみ実行できます。Oracle Databaseまたはユーザー・クライアント・デスクトップの構成を変更する必要はありません。

DataDirectドライバとOracle Database

ODBCデータ・ソースへの接続を確立するには、ODBC DataDirectドライバを使用する必要があります。

ODBC DataDirectドライバは、Oracle Platform Security Services (OPSS)のセキュリティ・ストアの実装で資格証明にアクセスするためにも使用されます。

DataDirect ODBCフレームワークのバージョン8.0.2およびOracle Wire Protocolのバージョン8.0.0は、追加の構成なしで、Oracle Database 12cの接続をサポートし、データ・ソース名(DSN)およびDNSなしの接続用に構成されます。

動作保証されたOracle Databaseバージョンには次のものがあります。

  • 12.2.1.2以降

  • 11.2.0.4以降

DataDirectドライバの詳細は、次のインストール・ディレクトリにあるProgress DataDirectのドキュメントを参照してください。

  • mwhome\bi\common\ODBC\Merant\7.1.6\help

  • mwhome\bi\common\ODBC\Merant\8.0.0\help

  • mwhome\bi\common\ODBC\Merant\8.0.2\help

Oracle OLAPデータ・ソースの設定について

Oracle OLAPデータ・ソースからインポートする前に、データ・ソースが標準形式のアナリティック・ワークスペースであることを確認してください。

Oracle OLAPソースからインポートする前に、クライアント・インストールを実行したコンピュータにOracle Database Clientをインストールする必要があります。

オフライン・インポートについてもオンライン・インポートについても、Oracle OLAPデータ・ソースからインポートするには、biadminservlet Javaプロセスが実行中である必要があります。Fusion Middleware Controlを使用してbiadminservlet Javaプロセスのステータスをチェックできます。

「管理者」または「ランタイム」のいずれかのクライアント・インストール・オプションを使用します。

Oracleデータベース・クライアントをインストールしたら、ORACLE_HOMEという環境変数を作成し、その変数をOracleデータベース・クライアント用のOracleホームに設定します。TNS_ADMINという環境変数を作成し、tnsnames.oraファイルの場所(BI_DOMAIN\config\fmwconfig\bienv\core)に設定します。

Javaデータ・ソース

JDBC接続タイプを使用する場合、リモートJavaデータ・ソースをWeblogic Serverに接続する必要があります。

JDBC (ダイレクト・ドライバ)を使用しない場合、この構成手順は必要ありません。

リポジトリにJDBCおよびJNDIデータ・ソースを含める前に、必要な設定タスクを実行する必要があります。

Oracle WebLogic ServerでJDBCを構成する必要があります。この構成を実行する方法の詳細は、Oracle WebLogic Serverのドキュメントの「WebLogic ServerでのJDBCドライバの使用」を参照してください。

データ・ソースをロードして、リポジトリにインポートする必要があります。Javaデータ・ソースのロードを参照してください。

Javaデータ・ソースのロード

リポジトリにインポートするためにJavaデータ・ソースを使用できるようにするには、最初にJavaデータソース・サーバーに接続してJavaメタデータをロードする必要があります。

  1. Oracle BI管理ツールで、「ファイル」を選択してから、「Javaデータソースのロード」を選択します。
  2. 「Javaデータソース・サーバーに接続」ダイアログで、ホスト名、ポートおよび資格証明を入力してサーバーにアクセスし、Javaメタデータをロードします。
  3. 「OK」をクリックします。
Javaメタデータがサーバーからロードされ、リポジトリにインポートするために使用できるようになります。

Oracle TimesTen In-Memory Databaseデータ・ソースの設定について

Oracle TimesTen In-Memoryは、高パフォーマンスのインメモリー・データ・マネージャです。

これらの事前構成手順は、Oracle TimesTenがすでにインストールされていることを想定しています。詳細は、Oracle Data Integratorを参照してください。

TimesTenソース上に集計を作成する予定である場合は、そのインスタンスに対してPL/SQLが有効化されており、そのPL/SQLの最初の接続属性PLSQLが1に設定されていることも確認する必要があります。PL/SQLは、インストール時に有効にすることも、インストール後にttmodinstallユーティリティを実行して有効にすることもできます。詳細は、『TimesTen In-Memory Databaseリファレンス』を参照してください。

このセクションには次のトピックが含まれます:

Oracle DatabaseおよびTimesTenに対するNUMERICデータ型のサポートの有効化を参照してください。

TimesTenデータ・ソースの構成

データ・ソースとして使用する前に、TimesTenを構成する必要があります。

  1. TimesTenがインストールされているコンピュータで、データ・マネージャDSNを(システムDSNとして)作成します。
  2. データ・ソースへの初期接続を実行してTimesTenデータベースをメモリーにロードし、ユーザーを作成して、権限を付与します。データ・ストアのデフォルト・ユーザーはインスタンス管理者、つまりデータベースをインストールしたオペレーティング・システム・ユーザーになります。
  3. Oracle BIサーバーを実行しているコンピュータに、TimesTenクライアントをインストールします。
  4. TimesTenクライアントがインストールされているコンピュータで、クライアントDSNを(システムDSN)として作成します。

TimesTenデータベースがTimesTenクライアントと同じコンピュータにインストールされている場合は、メタデータのインポート・ウィザードでデータ・マネージャDSNまたはクライアントDSNを指定できます。

TimesTenソースからデータをインポートした後、または手動でデータベース・オブジェクトおよび接続プールを設定するときに、「データベース」ダイアログの「一般」タブの「データベース」フィールドにデータベース・タイプとバージョンが正しく設定されていることを確認します。また、「接続プール」ダイアログの「一般」タブの「コール・インタフェース」フィールドが正しく設定されていることを確認することも必要です。次を参照してください。

TimesTenデータ・ソースでのシステム・メモリー・リソースの使用の向上

システム・メモリー・リソースの使用を向上させるために、TimesTenサーバーの最大接続数を増やすことをお薦めします。

ロック・タイムアウトを回避するために、デプロイメントに合せて接続のLockWait間隔を調整することもできます。詳細は、TimesTen In-Memory Databaseのリファレンス・ガイドのLockWaitを参照してください。

  1. TimesTen環境で、編集のためにttendaemon.optionsファイルを開きます。このファイルは次の場所にあります:

    install_dir\srv\info

  2. 次の行を追加します。
    -MaxConnsPerServer number_of_connections
    

    number_of_connectionsを求めるには、次の式を使用します。Oracle BIリポジトリに接続プールごとに接続がM個あり、Oracle BIリポジトリに接続プールがN個あり、Oracle BIサーバーがP台ある場合、必要な接続の総数はM * N * Pとなります。

  3. ファイルを保存して閉じます。
  4. TimesTenサーバーへの接続に使用しているODBC DSNで、Connectionsパラメータを、ステップ2で入力した値と同じ値に設定します。
    • Windowsでは、Windows ODBC データ ソース アドミニストレータからTimesTen ODBCセットアップ・ウィザードを開きます。「接続」パラメータは「最初の接続」タブにあります。

    • Linuxでは、odbc.INIファイルを開き、次のようにTimesTen DSNエントリにConnections属性を追加します。

      Connections=number_of_connections
      
  5. ttisqlプロセスやOracle BIサーバーなど、TimesTenに接続しているすべてのプロセスを停止します。
  6. TimesTenプロセスを停止します。
  7. TimesTenプロセスが停止されていることを確認した後、TimesTenプロセスを再開します。

WindowsのTimesTen DLLにアクセスするためのOracle BIサーバーの構成

Oracle BIサーバーを起動するユーザーが、彼らのオペレーティング・システムのPATH変数にTimesTen DLL ($TIMESTEN_HOME\lib)へのパスを設定していない場合、obis.propertiesファイルの変数としてTimesTen DLLパスを追加する必要があります。

  1. 編集のためにobis.propertiesを開きます。obis.propertiesは、次の場所にあります。

    BI_DOMAIN\config\fmwconfig\bienv\obis

  2. 次の例のように、必要なTimesTen変数TIMESTEN_DLLを追加し、LD_LIBRARY_PATH変数も更新します。
    TIMESTEN_DLL=$TIMESTEN_HOME\lib\libttclient.so
    LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$TIMESTEN_HOME\lib
    
  3. ファイルを保存して閉じます。
  4. OBIS1を再起動します。
  5. Oracle BIサーバー・プロセスを実行している各コンピュータで前述のステップを繰り返します。同じコンピュータで複数のOracle BIサーバー・インスタンスを実行する場合は、必ず、obis.propertiesで各インスタンスについてias-componentタグを適切に更新してください(ias-component id="coreapplication_obis1"ias-component id="coreapplication_obis2"など)。

Essbaseデータ・ソースの設定について

Oracle BIサーバーは、Essbaseクライアント・ライブラリを使用して、Essbaseデータソースに接続します。

Essbaseクライアント・ライブラリは、デフォルトでインストールされます。Essbaseデータ・ソースのアクセスを有効にするために追加の構成は必要ありません。

EPMシステム・インストーラでインストールしたEssbaseに対して共有トークンを使用する認証に使用する構成については、Essbase、Hyperion Financial ManagementまたはHyperion Planningデータ・ソースのSSOの構成を参照してください。

Cloudera Impalaデータ・ソースの設定について

これらのトピックでは、Windows ODBCドライバおよびCloudera Impalaメタデータについて説明します。

この項では、Cloudera Impalaデータ・ソースをOracle BIリポジトリで設定する方法について説明します。

Cloudera用のWindows ODBCドライバの取得

クライアント・インストールを実行した場合、Cloudera Impalaメタデータのインポートに必要となるWindows ODBCドライバはありません。

インストーラを使用してOracle BI管理ツールをインストールした場合、この手順を実行する必要はありません。

  1. ClouderaのWebサイトに移動します。
  2. 「Downloads」リンク、「Impala ODBC Drivers & Connectors」リンクの順にクリックします。
  3. 「Download」リストで、使用する管理ツール・プラットフォームで必要なODBCドライバを特定し、「Download Bits」をクリックしてインストーラをダウンロードします。
  4. ODBCドライバ・インストーラを実行して、ドライバをインストールします。

Windows ODBCドライバを使用したCloudera Impalaメタデータのインポート

Cloudera Impalaは、Massively Parallel Processing (MPP) SQL問合せエンジンで、元々、Apache Hadoopで稼働しています。この手順を実行して、Cloudera ImpalaメタデータをOracle BIリポジトリにインポートします。

この手順を実行するためには、Windows ODBCドライバを準備する必要があります。管理ツールのクライアント・インストールがある場合、Cloudera用のWindows ODBCドライバの取得の手順に従い、必要なWindows ODBCドライバをインストールする必要があります。

  1. Windowsで、「ODBCデータ ソース アドミニストレータ」を検索して開きます。
  2. 「ODBC データ ソース アドミニストレータ」ダイアログで、「システム DSN」タブをクリックし、「追加」をクリックします。
  3. ドライバ・リストから、Cloudera Impalaドライバを検索して選択します。「終了」をクリックします。
  4. Impala DSN設定用のCloudera ODBCドライバで、これらのフィールドにImpalaインスタンスの接続の詳細を入力します。
    • 「データ ソース名」フィールドに、リポジトリで定義した接続プールに指定されているデータソース名を入力します。

    • 「ホスト」フィールドに、完全修飾ホスト名またはIPアドレスを入力します。

    • 「ポート」フィールドにポート番号を入力します。デフォルトは、21050です。

    • 「データベース」フィールドで、データベースを指定します。通常、この値は「デフォルト」です。

  5. Cloudera Impalaドライバでデータ・ソースを設定している場合、「テスト」をクリックします。
  6. DataDirect Impalaドライバでデータ・ソースを設定している場合、「テスト接続」をクリックします。
  7. 管理ツールで、「ファイル」を選択し、「メタデータのインポート」を選択します。
  8. メタデータのインポート・ウィザードの「データ・ソースの選択」画面で、「接続タイプ」フィールドにODBC 3.5が表示されていることを確認します。
  9. Impala DSNを選択し、ユーザー名とパスワードを入力し、「次」をクリックします。
  10. 「メタデータ型の選択」画面で、「次」をクリックしてデフォルト値を受け入れます。
  11. 「メタデータ・オブジェクトの選択」画面で、「データソース・ビュー」リストからインポートするImpala表を選択し、>(選択項目をインポート)ボタンをクリックして、それらの表を「リポジトリ・ビュー」リストへ移動します。
  12. 「終了」をクリックします。
  13. 物理レイヤーのリポジトリで、Impalaデータベースをダブルクリックします。「データベース」ダイアログが表示されます。
  14. 「データベース・タイプ」フィールドから、Cloudera Impalaを選択し、「OK」をクリックします。
  15. 「保存」をクリックして、リポジトリを保存します。
  16. (オプション)必要に応じて、新しくインポートしたデータを、「ビジネス・モデルとマッピング」レイヤーおよび「プレゼンテーション」レイヤーでモデリングします。

Apache Hiveデータソースの設定について

これらのトピックでは、Windows ODBCドライバおよびApache Hiveについて説明します。

このセクションには次のトピックが含まれます:

クライアント・インストール用のWindows ODBCドライバの取得

管理ツールのクライアント・インストールがある場合、Apache Hiveメタデータをインポートするために必要なWindows ODBCドライバはありません。

インポートの実行に必要なWindowsドライバを取得するには、My Oracle Support Webサイト、support.oracle.comにログインしてDocID 1520733.1にアクセスします。このDocIDに関連付けられているテクニカル・ノートには、必須のWindowsドライバが、ドライバのインストール手順およびHiveデータ・ソースからのメタデータ・インポートの実行手順とともに含まれています。

Apache Hiveの使用に関する制限事項

これらのトピックでは、Oracle Analytics ServerでHadoopおよびHiveを使用する場合の制限事項について説明します。

このセクションには次のトピックが含まれます:

日付に関するHiveの制限

Hiveデータ・ソースの場合、DATE型について制限事項があります。

HiveはTimestampデータ型をサポートします。リポジトリの物理レイヤーのタイムスタンプ列には、DATEまたはDATETIMEデータ型を使用します。

Hiveではカウント(個別M)とグループ化Mとの同時使用をサポートしていません

Hiveデータ・ソースの制限事項について学習します。

次に類似の問合せが原因で、Hiveがクラッシュすることがあります。

  • SELECT M, COUNT(DISTINCT M) ... FROM ... GROUP BY M ...
    

このような状況では、COUNT(DISTINCT...)定義における属性が直接問合せの対象となり、その属性が表または外部キーまたはレベル・キーの一部でもある場合があります。COUNT(DISTINCT X)GROUP BY Xと同時に使用した結果は、常にカウント値が1になるため、このケースが多発する可能性はほとんどありません。

このエラーを回避するために、COUNT(DISTINCT...)をメジャーで使用するときには、同じレベルに完全属性またはその他の属性を含めないようにしてください。

Hiveではケース・タイプの区別をサポートしていません

Hiveでは、ケース文の各部分のタイプに対して厳密なチェックが要求されます。

このため、Hiveでは、次のようなプレゼンテーション問合せは失敗します。

select supplierid, case supplierid when 10 then 'EQUAL TO TEN' when 20 then 
'EQUAL TO TWENTY' else 'SOME OTHER VALUE' end as c2 from supplier order by c2
asc, 1 desc 

この問合せに対するHiveの完全なエラー・メッセージは次のようになります。

FAILED: Error in semantic analysis: Line 2:32 Argument type mismatch '10': 
The expressions after WHEN should have the same type with that after CASE: 
"smallint" is expected but "int" is found 
範囲外の開始位置の値を示すLocate関数に対して例外をスローします

Locate関数の構文の使用方法について学習します。

Locate関数の完全な構文のフォームは次のとおりです。

LOCATE ( charexp1, charexp2, [, startpos] )

ここで、charexp1は、文字列charexp2の中で検索の対象となる文字列です。

オプションのパラメータstartposは、charexp2の中で検索開始を示す文字の位置です。

startposの値がcharexp2の長さよりも長い場合、次の例のようになります。

select locate('c', 'abcde', 9) from employee 

Hiveは0を返すのではなく、例外をスローします。

Hiveは部分文字列を使用する問合せでクラッシュすることがあります

開始位置パラメータの値を指定してSubstring関数を使用する問合せでは、Hiveがクラッシュすることがあります。

次の場合には、Hiveがクラッシュする可能性があります。

select substring(ProductName, 2) from Products 
Hiveでは表の作成をサポートしていません

Apache Hive ODBCドライバは、表の作成に使用するSQLTransactをサポートしていないため、HiveではCREATE TABLEをサポートしていません。

Hiveは複数のAND句とOR句を含む長い問合せで失敗することがあります

Hiveデータ・ソースが失敗する可能性のある条件の例を示します。

次のWHERE句は、問合せの長さが過剰なためにHiveで失敗する可能性のある条件の例です。

例1

        WHERE (Name = 'A' AND Id in (1))
           OR (Name = 'B' AND Id in (2))
           OR  .......
           OR (Name = 'H' AND Id in (8))

例2

        WHERE (Id BETWEEN '01' AND '02')
           OR (Id BETWEEN '02' AND '03')
           OR  .......
           OR (Id BETWEEN '07' AND '08'))

長い問合せはHiveで失敗する可能性がありますが、前述の例に示すように、複数のOR句を使用する条件が指定されていて、それぞれのグループがANDおよびBETWEENの副次句で組み合されている場合に特にその可能性が高くなります。

サブクエリー式が含まれている問合せは失敗することがあります

サブクエリー式が含まれている問合せは、Hiveでは失敗することがあります。

サブクエリー式が使用されている場合は、Oracle BIサーバーによって生成された物理問合せで等価条件にデータ型を混成して含めることもできます。等価演算子におけるHiveの問題により、正しくない問合せ結果を受け取る場合があります。

たとえば、次の問合せを考えてみます。

select ReorderLevel from Product where ReorderLevel in 
  (select AVG(DISTINCT ReorderLevel) from Product);

Oracle BIサーバーでは、'ReorderLevel = 15.0'が含まれている次の物理問合せを生成します。ここで、ReorderLevelのデータ型はIntであり、15.0Floatとして扱われます。

Select T3120.ReorderLevel as c1 from Products T3120 
 where (T3120.ReorderLevel = 15.0) 

次のコマンドを使用することで、混合したデータ型の問題を修正できます。

select ReorderLevel from Product where ReorderLevel in 
  (select cast(AVG(DISTINCT ReorderLevel) as integer) from Product);
Hiveでは同じSelectリストにある個別MとMをサポートしていません

Hiveデータ・ソースでSELECTを使用する場合の制限事項について学習します。

次のような形の問合せは、Hiveでサポートされていません。

  • SELECT DISTINCT M, M  ... FROM TABX
    

Hyperion Financial Managementデータ・ソースの設定について

これらの必須のステップを使用して、Hyperion Financial Managementデータ・ソースを構成します。

Hyperion Financial Management 11.1.2.3.xまたは11.1.2.4.xは、ADMネイティブ・ドライバまたはADMシン・クライアント・ドライバを使用できます。Linuxオペレーティング・システム上でADMシン・クライアント・ドライバをインストールおよび構成できます。

Hyperion Financial Management 11.1.2.3.xおよび11.1.2.4.xデータ・ソースは、Oracle Analytics ServerがWindowsまたはLinuxのデプロイメントで実行されている場合にも使用できます。

Hyperion Financial Management ADMドライバには、ADMネイティブ・ドライバおよびADMシン・クライアント・ドライバが含まれます。WindowsおよびLinuxの両デプロイで、Enterprise Performance Managementコンフィギュレータを使用して、必ず構成を実行してください。

  • Windows構成およびLinux構成では、Hyperion Shared Servicesデータベースの詳細を指定し、FoundationサーバーおよびHyperion Financial Managementサーバーに登録します。

  • 構成中は、DCOM構成を必ず有効にしてください。

  • Windows用に構成をする場合、DCOMユーザー詳細ページで、Hyperion Financial Managementサーバーに接続するためのユーザーとしてドメイン・ユーザーを入力します。Linux用のADMシン・クライアント・ドライバを構成している場合は、このステップを実行する必要はありません。

さらに、JavaHostプロセスを実行している各システムでobijh.propertiesファイルを編集し、Hyperion Financial Managementに必要な環境変数を追加する必要があります。オフライン・インポートについてもオンライン・インポートについても、Hyperion Financial Managementデータ・ソースからインポートするには、JavaHostプロセスが実行中である必要があります。管理ツールのクライアント・インストールがある場合は、JavaHostの構成ステップについて、「クライアント・インストールに対する追加のHyperion構成の実行」を参照してください。

重要:

obijh.propertiesファイルでEPMパスを構成する場合は、バックスラッシュ(\)ではなく常にスラッシュ(/)を使用する必要があります。

Windows上のEPMパスには、スラッシュが必要です。obijh.propertiesファイルでEPMパスを構成する場合、バックスラッシュは機能しません。

  1. obijh.propertiesは、次の場所にあります。

    ORACLE_HOME/bi/modules/oracle.bi.cam.obijh/env/obijh.properties

  2. 編集のためにobijh.propertiesファイルを開きます。

  3. OBIJH_ARGS変数に次の値を追加します。

    DEPM_ORACLE_HOME=C:/Oracle/Middleware/EPMSystem11R1 
    -DEPM_ORACLE_INSTANCE=C:/Oracle/Middleware/user_projects/epmsystem1 
    -DHFM_ADM_TRACE=2
  4. 次の変数をobijh.propertiesファイルの最後に追加します。

    EPM_ORACLE_HOME=C:/Oracle/Middleware/EPMSystem11R1

    EPM_ORACLE_INSTANCE=C:/Oracle/Middleware/user_projects/epmsystem1

  5. loaders.xmlファイルは次の場所にあります。

    ORACLE_HOME/bi/bifoundation/javahost/config/loaders.xml

  6. loaders.xmlファイルで、<!-- BI Server integration code -->を見つけます。

  7. <ClassPath>で、fm-adm-driver.jarfm-web-objectmodel.jarepm_j2se.jarおよびepm_hfm_web.jarファイルを次に示すフォーマットを使用して追加します。

    <ClassPath>
    {%EPM_ORACLE_HOME%}/common/hfm/11.1.2.0/lib/fm-adm-driver.jar;
    {%EPM_ORACLE_HOME%}/common/hfm/11.1.2.0/lib/fm-web-objectmodel.jar;
    {%EPM_ORACLE_HOME%}/common/jlib/11.1.2.0/epm_j2se.jar;
    {%EPM_ORACLE_HOME%}/common/jlib/11.1.2.0/epm_hfm_web.jar;
    </ClassPath>
  8. 保存してファイルを閉じます。

  9. ORACLE_HOME/bi/bifoundation/javahost/lib/obisintegration/admディレクトリに移動して、admintegration.jarおよびadmimport.jar以外のすべてのjarファイルを削除します。

  10. OBIS1を再起動します。

  11. JavaHostプロセスを実行している各コンピュータで前述のステップを繰り返します。

クライアント・インストールに対する追加のHyperion構成の実行

Plus Clientインストーラを使用して管理ツールをインストールする場合は、Hyperion Financial Managementのデータ・ソースからオフライン・インポートを実行する前に追加の構成を実行する必要があります。

Hyperion Financial Managementデータ・ソースからオフライン・モードでインポートする場合、管理ツールは実行中のJavaHostの場所を指す必要があります。

この項のステップは、管理ツールのクライアント・インストールの場合にのみ必要です。

  1. 管理ツールを閉じます。
  2. 管理ツールと同じコンピュータ上で、テキスト・エディタを使用して、次の場所にあるNQSConfig.INIファイルを開きます。

    BI_DOMAIN\config\fmwconfig\biconfig\OBIS

  3. JAVAHOST_HOSTNAME_OR_IP_ADDRESSESパラメータを見つけます。
  4. 完全修飾ホスト名またはIPアドレスとポート番号を使用して、実行中のJavaHostを指すように、JAVAHOST_HOSTNAME_OR_IP_ADDRESSESを更新します。次に例を示します。

    JAVAHOST_HOSTNAME_OR_IP_ADDRESSES = "myhost.example.com:9810"

    Oracle Analytics Serverの(クライアントではない)フル・インストールでは、JAVAHOST_HOSTNAME_OR_IP_ADDRESSES設定はFusion Middleware Controlによって管理されるため、手動では編集できません。

  5. ファイルを保存して閉じます。

SAP/BWデータ・ソースの設定

SAP/BWデータ・ソースに接続するには、XMLA接続タイプ、またはSAP BWネイティブ接続タイプ(BAPI)を使用します。

SAP BWネイティブ接続が、目的のプラットフォームで使用できることを確認する必要があります。

SAP BWネイティブ接続タイプを使用してSAP/BWデータ・ソースに接続するには、まず、OBIEE BAPI Adapter for SAPをダウンロードする必要があります。

ダウンロードに付属しているドキュメントに記載された構成手順を実行します。

XMLA経由でSAP/BWに接続する場合、事前構成ステップは必要ありません。

Oracle RPASデータ・ソースの設定

Oracle BIサーバーは、ODBC DSNを使用してOracle RPAS (Retail Predictive Application Server)データ・ソースに接続できます。

Oracle RPASデータ・ソースを設定するには、まず、Oracle RPAS ODBCドライバをインストールする必要があります。ODBC DSNの設定時には、SQLExtendedFetchオプションを選択し、認証方法リストからDBMSを選択して、ディメンション表の正規化リストからいいえを選択します。「Oracle RPASデータ・ソースからのメタデータのインポートについて」を参照してください。

Windowsシステムでは、初期インポートの場合にも、問合せ処理時のデータ・ソースへのアクセスの場合にもOracle RPASデータ・ソースに接続できます。Linuxシステムでは、Oracle RPASデータ・ソースに接続できるのはデータ・アクセスの場合のみです。

Teradataデータ・ソースの設定

ODBCを使用してTeradataデータ・ソースにアクセスできます。

ODBCデータ・ソース名(DSN)の設定を参照してください。

最新のTeradata ODBCドライバをインストールし、ODBC DSNを設定した後、Teradataデータ・ソースのlibディレクトリをWindowsシステムのパス環境変数に追加する必要があります。例:

C:\Program Files\Teradata\Client\15.00\ODBC Driver for Teradata nt-x8664\Lib

Oracle BIサーバーを実行している各コンピュータ上のobis.propertiesを編集して、必要なTeradata変数を含める必要があります。

  1. 次の場所にあるobis.propertiesを開きます。:

    BI_DOMAIN\config\fmwconfig\bienv\obis

  2. PATHLD_LIBRARY_PATHおよびLIBPATHで、次の例のように必要な変数情報を入力します。
    PATH=C:\Program Files\Teradata\Client\15.00\ODBC Driver for Teradatant-x8664\Lib;
    LD_LIBRARY_PATH=C:\Program Files\Teradata\Client\15.00\ODBC Driver forTeradata nt-x8664\Lib;
    LIBPATH=C:\Program Files\Teradata\Client\15.00\ODBC Driver for Teradatant-x8664\Lib; 
    

    ノート:

    Teradataクライアントをインストールするときにデフォルトの場所を使用する場合は、PATH変数が、Windowsによって適用される1024文字の制限を超える可能性があります。この問題を回避するには、短いパス名(C:\TDなど)のディレクトリにTeradataクライアントをインストールするか、短い8.3ファイル名(C:\Program Files\Teradata\Client\13.10\ODBC Driver for Teradata\BinのかわりにC:\PROGRA~1\Teradata\Client\13.10\ODBCDR~1\Binなど)を使用します。

    正しい8.3ファイル名を判別するには、該当するディレクトリからdir /xを実行します。例:

    C:\>dir /x
     Volume in drive C has no label.
     Volume Serial Number is 0000-XXXX
     Directory of C:\
    08/25/2008  03:36 PM   <DIR>    DATAEX~1    DataExplorer
    04/20/2007  01:38 PM   <DIR>                dell
    08/28/2010  10:49 AM   <DIR>    DOCUME~1    Documents and Settings
    07/28/2008  04:50 PM   <DIR>    ECLIPS~2    EclipseWorkspace
    09/07/2007  11:50 AM   <DIR>                Ora92
    09/07/2007  11:50 AM   <DIR>                oracle
    05/21/2009  05:15 PM   <DIR>                OracleBI
    05/21/2009  05:12 PM   <DIR>    ORACLE~1    OracleBIData
    03/02/2011  04:51 PM   <DIR>    PROGRA~1    Program Files
  3. ファイルを保存して閉じます。
  4. OBIS1を再起動します。
  5. Oracle BIサーバー・プロセスを実行している各コンピュータで前述のステップを繰り返します。同じコンピュータで複数のOracle BIサーバー・インスタンスを実行する場合は、必ず、obis.propertiesで各インスタンスについてias-componentタグを適切に更新してください(ias-component id="coreapplication_obis1"ias-component id="coreapplication_obis2"など)。

Teradataデータ・ソースに対する問合せのスプール領域エラーの回避

Teradataに対する問合せでは、データ・ソースからスプール領域不足のエラーを受け取ることがあります。

このエラーは、「アンサー」の「フィルタ」ペインで「全選択項目」を選択した結果、DISTINCTの問合せに対して発生することがあります。

このエラーを回避するために、次の条件を満たすことによって、これらの問合せに対してDISTINCTではなくGROUP BYを使用するように、Oracle BIサーバーによって問合せがリライトされるようにすることができます。

  • プロジェクション・リストのディメンション列が1つのみ存在し、それが結合式ではなくターゲット列です。

  • アンサーからの元の問合せがDISTINCTを要求しており、GROUP BY句が含まれていません

  • FROM表が不透明なビューではなく実物理表です。

  • FROM表が導出表ではなくアトミック表です。

  • 次の比率が、しきい値未満です:

    (計画された列の個別数) / (FROM表の行数)

    この比率で使用される値はどちらもリポジトリ・メタデータから取得されます。これらの値を移入するには、次の両方のオブジェクトに対して管理ツール「行数の更新」をクリックします。

    • FROM物理表

    • 計画された列の物理列

    デフォルトでは、この比率のしきい値は0.15です。しきい値を変更するには、Oracle BIサーバー・コンピュータ上でSA_CHOICES_CNT_SPARSITYという環境変数を作成し、それを新しいしきい値に設定します。

Oracle DatabaseおよびTimesTenに対するNUMERICデータ型のサポートの有効化

Oracle DatabaseおよびTimesTenに対するNUMERICデータ型のサポートを有効にすることができます。

NUMERICデータ型のサポートが有効になっていると、Oracle DatabaseおよびTimesTenのデータ・ソースのNUMBER列がでNUMERICとして扱われるため、精度が向上します。さらに、Oracle DatabaseおよびTimesTenのデータ・ソースのリテラルが、DOUBLEではなく、NUMERICとしてインスタンス化されます。

Oracle Business Intelligence Enterprise Edition論理SQLリファレンス・ガイド数値リテラルに関する項を参照してください。

  1. NQSConfig.INIファイルで、ENABLE_NUMERIC_DATA_TYPEYESに設定します。このファイルは、BI_DOMAIN/config/fmwconfig/biconfig/OBISにあります。
  2. 物理レイヤーのデータベース・オブジェクトでNUMERIC_SUPPORTEDデータベース機能を有効にします。データベース機能の設定方法の詳細は、データ・ソースでサポートされるSQL機能を参照してください。

その他のデータベース・タイプからの10進/数値データは、ENABLE_NUMERIC_DATA_TYPE パラメータがYESに設定されていると、DOUBLEとしてマップされます。

ENABLE_NUMERIC_DATA_TYPEの設定を変更する前にインポートした物理列のデータ型は、そのまま変更されることはありません。既存のDOUBLE物理列については、必要に応じて手動でデータ型をNUMBERに更新する必要があります。

NUMERICデータ型は、その他のNUMBERデータ型に変換します。また、その他のNUMBERデータ型はNUMERICデータ型に変換します。

NUMERICデータ型は、Oracle BIサーバーのJDBCドライバを使用しているときには使用できません。

NUMERICデータ型を有効化すると、パフォーマンスのオーバーヘッドが増加することがあります。これは、NUMERICデータのほうがビット数が多いためです。

共有ログオンを使用するためのEssbaseの構成

すべてのEssbase接続プールには、共有ログオンが必要であり、デフォルトで有効になっています。

「接続プール・プロパティ」ダイアログの「一般」タブで、共有ログオン設定を無効にすることはできません。

Essbase、Hyperion Financial ManagementまたはHyperion Planningデータ・ソースのSSOの構成

EPMシステム・インストーラを使用してインストールされたHyperion Financial ManagementまたはHyperion Planningをデータ・ソースとして使用するには、SSOおよび共有ログオンを構成します。

Oracle BIサーバーのデータ・ソースとして、EPMシステム・インストーラを使用してインストールされたHyperion Financial ManagementまたはHyperion Planningを使用する場合、共有ログオンでSSOトークン・オプションを使用する必要があります。この場合、Oracle BIサーバーでは、Hyperion Planningに接続するために偽装が使用されます。共有ログオンで指定されたユーザーの詳細がデータ・ソースへの接続に使用され、処理中のユーザーが偽装ユーザーとなります。偽装ユーザーは、Hyperion Financial ManagementまたはHyperion Planningで使用されるアイデンティティ・ストアに存在する必要があります。

ユーザーおよびEnterprise Performance Managementのユーザーは、同じアイデンティティ・ストアを使用する必要があります。

ノート:

Essbaseでは、CSSトークン・ベース認証はサポートされなくなりました。結果として、EssLoginAs認証を使用する場合、接続プールを更新する必要があります。EssLoginAS認証では、CSSトークン・ベース認証よりも向上した信頼性の高いパフォーマンスが提供され、接続プール内のEssbase管理者の共有ログオン資格証明を使用できます。