この項の内容:
この章の情報は、ブロック・ストレージと集約ストレージ・データベースに適用されます。
Unicodeモードのアプリケーションを管理するコンピュータ上で、UTF-8でエンコードされたテキストを処理するには、次のツール(サードパーティ・ベンダーから提供)をインストールします:
UTF-8フォント: 非ASCII文字を含む、UTF-8でエンコードされたテキストを表示するため
(オプション) Unicodeエディタ(UTF-8シグネチャを含む): データ・ソースやその他のテキスト・ファイルを手動で編集するため
Essbaseでは、テキスト・ファイルをUTF-8エンコード方式に変換するEssbase Unicodeファイル・ユーティリティを提供しています。Essbase Unicodeファイル・ユーティリティを参照してください。
Essbaseのセキュリティは、Essbaseサーバーのレベルで定義されます。パスワードを作成するには、Essbaseサーバー・コンピュータ上のESSLANG変数に指定されているコード・ページに従ってエンコードされた文字を使用します。
マルチバイト文字セットの環境でも、パスワードにマルチバイト文字を含められません。標準のASCII文字セットにある文字(0から127までの範囲)を使用することを検討してください。この文字セットには、標準の英語のアルファベットにある大文字および小文字と数字の0から9までが含まれています。これらの文字は、すべてのコード・ページおよびUTF-8に共通です。
アプリケーションとデータベースの命名時には、ESSLANG変数で指定された文字セットによってサポートされている文字を使用する必要があります。Essbaseサーバーがインストールされているコンピュータ上において、ESSLANG変数はそのコンピュータのオペレーティング・システムに定義されているロケールに設定されている必要があります。
このセクションのトピックでは、UnicodeモードのEssbaseサーバーを管理するためのプロセスについて説明します。
EssbaseサーバーをUnicodeモードに設定することにより、Unicodeモードのアプリケーションを作成するための権限と、アプリケーションをUnicodeモードに移行するための権限が付与されます。
このセクションのトピックでは、Unicodeモードのアプリケーションを管理するためのプロセスについて説明します。
Essbaseサーバーで非UnicodeモードのアプリケーションをUnicodeモードに移行する場合は、アプリケーション・ファイル内の文字のエンコード方式がUTF-8エンコード方式に変換されます。
アプリケーション・ファイルをUnicodeモードに移行する場合は、次のタスクを実行します:
アプリケーション内のすべてのアプリケーションおよびデータベース・ファイルをバックアップします。
『Oracle Hyperion Enterprise Performance Management Systemバックアップおよびリカバリ・ガイド』を参照してください。
必要に応じて、アウトライン変更ファイルを適用してから、それらのファイルを削除します。
アウトライン変更ファイルは、存在する場合は各データベース・ディレクトリ内にあり、ファイル名はデータベース名と同じで、拡張子は.chgです。たとえば、/sample/basic/basic.chgのようになります。
ログ・ファイル内でUnicodeエンコード方式と非Unicodeエンコード方式が混在しないように、ログ・ファイルをバックアップしてから、ログ・ファイルを消去または移動します。
ログ・ファイルは、.log、.xcp、.olgのいずれかの拡張子で終わります。
アプリケーションをUnicodeモードに移行するためのEssbaseサーバーの権限を付与します。EssbaseサーバーのUnicodeモードへの設定を参照してください。
計算スクリプト、レポート・スクリプト、データ・ソースなどのテキスト・ファイルは、UTF-8エンコード方式に変換されません。Unicodeモードのアプリケーションの場合、テキスト・ファイルは、UTF-8または非Unicodeロケールでエンコードできます。Essbase Unicodeファイル・ユーティリティを使用すると、非UnicodeでエンコードされたファイルをUTF-8に変換できます。Essbase Unicodeファイル・ユーティリティを参照してください。
Unicodeモードのアプリケーションで非Unicodeテキスト・ファイルを処理することを選択する場合は、非Unicodeテキスト・ファイルのロケールがEssbaseによってどのように決定されるかを理解しているようにしてください。ファイルのエンコード方式の管理を参照してください。 |
Unicodeアプリケーションと非Unicodeアプリケーションを使用している場合、Essbaseでは、Unicodeアプリケーションからバックアップされたデータベースの非Unicodeアプリケーションへの復元は許可されていません。
Unicodeアプリケーションと非Unicodeアプリケーションの間での、バックアップされたデータベースの復元がサポートされている組合せのリストについては、『Oracle Hyperion Enterprise Performance Management Systemバックアップおよびリカバリ・ガイド』を参照してください。
非Unicodeモードのアプリケーションでレポートを処理する場合、レポート・ライターは、縦欄式データを正確に整列できるようにするための言語固有のコードを使用します。Unicodeのエンコード方式には言語固有のフォーマット・コードは含まれていないため、レポートの列が正確に整列されない可能性があります。
1バイトのコード・ページを使用する非Unicodeモードのアプリケーションでは、レポート・スクリプトで、次の16進制御文字がサポートされています:
x20, x09, x0A, x0D, xB3, xC3, xC4, xC2, xC0, x0C, xB1
マルチバイト・コード・ページを使用するUnicodeモードのアプリケーションおよび非Unicodeモードのアプリケーションでは、レポート・スクリプトで、次の16進制御文字がサポートされています:
x20, x09, x0A, x0C, x0D
パーティションを設計し処理する場合は、次の状況について検討します:
リンク・パーティションではない透過パーティションおよび複製パーティションの場合は、パーティションのソースとターゲットとで、アプリケーションのモード(Unicodeモードまたは非Unicodeモード)を揃えておく必要があります。
Unicodeモードのデータベースにまたがるパーティションは、Unicodeモードのクライアント、たとえば、Administration Servicesや、管理サービス・コンソールで実行されたMaxLスクリプトで管理できます。
マルチバイト文字を含む非Unicodeモードのアウトラインは、Administration ServicesやMaxLスクリプトなどのUnicodeモードのクライアントでは同期できません。ただし、MaxLシェル(essmsh)などの、Unicodeに対応していないクライアントまたは非Unicodeモードのクライアントを使用できます。
デフォルトでは、Essbaseのエージェント・ログ・ファイルは、Essbaseサーバーで定義されたESSLANG変数に指定されているロケールでエンコードされます。UNICODEAGENTLOG構成設定を使用すると、エージェント・ログ・ファイルをUTF-8エンコード方式で書き込めます。UTF-8フォントを使用すると、ログ・ファイル内のすべての文字が読取り可能になります。『Oracle Essbaseテクニカル・リファレンス』を参照してください。
Unicodeモードのアプリケーションの場合、データベースのアプリケーション・ログ・ファイルおよびアウトライン変更ログ・ファイルは、UTF-8でエンコードされています。表示するには:
アプリケーション・ログの場合は、Administration Servicesのログ・ビューアまたはログ・アナライザを使用するか、またはUTF-8エディタを使用します
アウトライン変更ログの場合は、UTF-8エディタを使用します
Unicodeモードのアプリケーションに関連するログ・ファイルのエンコード方式は、非Unicodeエンコード方式に変更できません。
Essbaseは、多くの非Unicodeエンコード方式をサポートしています(サポートされているロケールを参照)。さらに、UnicodeモードのアプリケーションではUTF-8エンコード方式がサポートされています。
ビットの組合せが同じでもエンコード方式が異なれば異なる文字にマッピングされることがあるため、特に非UnicodeでエンコードされたファイルをUnicodeモードのアプリケーションで使用する場合など、Essbaseでファイルのエンコードをどのように扱うのかを理解しておく必要があります。
複数のロケールにわたって共有されるUnicodeモードのアプリケーションには、UTF-8でエンコードされたファイルを使用することをお薦めします。ロケールやエンコード方式を追跡する必要がないため、UTF-8エンコード方式を使用する方が簡単です。また、Essbase管理サーバーが内部的にUnicodeエンコード方式を使用しており、フォーマット間の内部の変換が必要なくなるため効率も向上します。 |
以降のトピックでは、Essbaseによるファイルのエンコード方式の決定方法、およびエンコード方式が異なるファイルの管理方法について説明します。
非Unicodeモードのアプリケーションの場合、EssbaseおよびAdministration Servicesは、文字テキストがEssbaseサーバーで定義されたESSLANG値に指定されているロケールでエンコードされていることを前提にします。
Essbaseは、Unicodeモードのアプリケーションを処理する場合、文字テキストを内部的にUTF-8エンコード方式でエンコードし、UTF-8でその文字テキストを保管します。また、エクスポート・ファイルもUTF-8でエンコードされます。Essbaseはまた、Unicodeモードのアプリケーションを処理する場合、非Unicodeでエンコードされた入力ファイル(スクリプト・ファイル、ルール・ファイル、データ・ソースなど)も扱い、内部的にUTF-8に変換します。
EssbaseおよびAdministration Servicesでは、ファイルのエンコード方式のインディケータ(UTF-8シグネチャまたはロケール・インディケータ)を使用して、ファイルがUTF-8またはサポートされている非Unicodeエンコード方式のどちらでエンコードされているかを認識します。
ロケール・インディケータは、エンコード方式がEssbaseサーバーのロケールに一致する非Unicode入力ファイルではオプションです。ただし、エンコード方式が一致しない場合は、ロケール・インディケータを指定する必要があります。エンコード方式のインディケータを参照してください。
UTF-8でエンコードされているテキスト・ファイルには、UTF-8シグネチャが必要です。
Administration Servicesでは、次のプロセスを使用して、非Unicodeでエンコードされたファイルのエンコード方式を決定します:
Essbaseで次元構築またはデータ・ロードを実行する場合は、ルール・ファイルとデータ・ファイルのエンコード方式が異なっていても問題はありません。たとえば、ルール・ファイル内のテキストがUTF-8でエンコードされており、データ・ソースが非Unicodeのコンピュータ・ロケールでエンコードされていても問題はありません。
管理サービス・コンソールを使用してスクリプト・ファイルまたはデータ・ソースを作成する場合は、適切なエンコード方式のインディケータがファイル内に自動的に含まれます。他のいずれかのツールを使用して、Unicodeでエンコードされたテキスト・ファイルを作成する場合は、UTF-8シグネチャが含まれていることを確認する必要があります。非Unicodeでエンコードされたテキスト・ファイルで、そのエンコード方式がEssbaseサーバーのロケールと異なる場合はロケール・インディケータが必要です。 |
次のEssbaseのシステム・テキスト・ファイルは、Essbaseサーバーで定義されたESSLANG値に指定されているロケールでエンコードされます:
テキスト(メンバー名など)を正しく解釈するには、Essbaseで、そのテキストのエンコード方式を認識している必要があります。多くのファイルにはエンコード方式のインディケータが含まれていますが、場合によっては、エンコード方式を指定するよう求められることがあります。たとえば、次のような場合があります:
Administration Servicesがファイルを作成し、それをEssbaseサーバーとは別の場所に保管する場合
Administration Servicesが、非Unicodeであった、7.0より前のリリースのEssbaseで作成されたファイルを読み取る場合
エンコード方式のインディケータのタイプは、ファイルのタイプによって異なります:
アプリケーションおよびデータベースで内部的に使用され、ユーザーが直接編集できないファイルは、一般にバイナリ・ファイルであり、エンコード方式のインディケータは含まれていません。
これらのファイル内の文字テキストは、アプリケーションのモードに基づいてエンコードされています:
ユーザーが編集できるバイナリ・ファイル(アウトライン・ファイルやルール・ファイルなど)
必要に応じて、Essbaseでは、文字テキストがUTF-8でエンコードされているかどうかを内部的に追跡します。UTF-8エンコード方式でない場合、Essbaseは内部のロケール・インディケータを使用して、文字テキストのエンコード方式に使用されているロケールを識別します。
次の編集可能なテキスト・ファイルでは、UTF-8シグネチャまたはロケール・インディケータを使用してエンコード方式が示されます:
注意 | 7.0より前のリリースのEssbaseサーバー・インストール(Unicodeに対応していません)で作成されたロケール・インディケータを含む、非Unicodeでエンコードされたファイルを使用しないでください。これらのロケール・インディケータを削除するには、Essbase Unicodeファイル・ユーティリティを使用します。Essbase Unicodeファイル・ユーティリティを参照してください。 |
UTF-8でエンコードされたテキスト・ファイルには、テキスト・ファイルの先頭のマークであるUTF-8シグネチャが含まれている必要があります。このシグネチャは、一部のサードパーティ製UTF-8テキスト・エディタで表示されます。
UTF-8シグネチャは、多くのUTF-8テキスト・エディタで作成できます。また、Essbase Unicodeファイル・ユーティリティを使用して、ファイルにUTF-8シグネチャを挿入もできます(Essbase Unicodeファイル・ユーティリティを参照)。
管理サービス・コンソールを使用してファイルを作成した場合は、UTF-8シグネチャがファイルに自動的に挿入されます。
ロケール・インディケータは、非Unicodeテキスト・ファイルのエンコード方式を識別するための追加のテキスト・レコードであるロケール・ヘッダー・レコードです。非Unicodeでエンコードされたテキスト・ファイルの作成時に、ファイル内の最初のレコードとしてロケール・ヘッダー・レコードを挿入するか、Essbase Unicodeファイル・ユーティリティを使用してヘッダーを追加できます。
UTF-8でエンコードされたファイル内にロケール・ヘッダー・レコードを挿入しないでください。テキスト・ファイルに両方のタイプのエンコード方式のインディケータが含まれていると、そのロケール・ヘッダーは最初のデータ・レコードとして読み取られます。 |
ロケール・ヘッダー・レコードのフォーマットは次のとおりです:
//ESS_LOCALE
locale-name
locale-nameは、サポートされているGlobal Cロケールで、そのフォーマットはESSLANG変数と同じです:
language _ territory . code_page_name @ sortsequence
次の例は、あるロシア語コード・ページのロケール・ヘッダー・レコードを示しています:
//ESS_LOCALE Russian_Russia.ISO-8859-5@Default
注: | Essbaseは、レコードのcode_page_nameの部分のみを調べます。sortsequenceの指定は、レポート・スクリプト内のソート順には影響を与えません。 |
互換性のために、管理サービス・コンソールは、7.0より前のリリースのEssbaseサーバー・インストール上の計算スクリプトを異なるフォーマットで保存します。ロケールの前に//を付けるのではなく、管理サービス・コンソールでは、ロケール・ヘッダーを計算スクリプトのコメント・マークの間に挿入します:
/* */
次のサポートされているロケールを、ロケール・ヘッダー・レコードおよびEssbase Unicodeファイル・ユーティリティで、またはESSLANG変数の値として使用できます:
Arabic_SaudiArabia.ISO-8859-6@Default Arabic_SaudiArabia.MS1256@Default Croatian_Croatia.ISO-8859-2@Croatian Croatian_Croatia.MS1250@Croatian CyrillicSerbian_Yugoslavia.ISO-8859-5@Default CyrillicSerbian_Yugoslavia.MS1251@Default Czech_CzechRepublic.ISO-8859-2@Czech Czech_CzechRepublic.MS1250@Czech Danish_Denmark.ISO-8859-15@Danish Danish_Denmark.IBM500@Danish Danish_Denmark.Latin1@Danish Danish_Denmark.MS1252@Danish Dutch_Netherlands.IBM037@Default Dutch_Netherlands.IBM500@Default Dutch_Netherlands.ISO-8859-15@Default Dutch_Netherlands.Latin1@Default Dutch_Netherlands.MS1252@Default English_UnitedStates.IBM037@Binary English_UnitedStates.IBM285@Binary English_UnitedStates.IBM500@Binary English_UnitedStates.MS1252@Binary English_UnitedStates.Latin1@Binary English_UnitedStates.US-ASCII@Binary Finnish_Finland.IBM500@Finnish Finnish_Finland.ISO-8859-15@Finnish Finnish_Finland.Latin1@Finnish Finnish_Finland.MS1252@Finnish French_France.IBM297@Default French_France.IBM500@Default French_France.ISO-8859-15@Default French_France.Latin1@Default French_France.MS1252@Default German_Germany.IBM273@Default German_Germany.IBM500@Default German_Germany.ISO-8859-15@Default German_Germany.Latin1@Default German_Germany.MS1252@Default Greek_Greece.ISO-8859-7@Default Greek_Greece.MS1253@Default Hebrew_Israel.ISO-8859-8@Default Hebrew_Israel.MS1255@Default Hungarian_Hungary.ISO-8859-2@Hungarian Hungarian_Hungary.MS1250@Hungarian Italian_Italy.IBM280@Default Italian_Italy.IBM500@Default Italian_Italy.ISO-8859-15@Default Italian_Italy.Latin1@Default Italian_Italy.MS1252@Default Japanese_Japan.IBM930@Binary Japanese_Japan.JapanEUC@Binary Japanese_Japan.MS932@Binary Korean_Korea.MS1361@Binary Korean_Korea.MS949@Binary Norwegian_Norway.IBM500@Danish Norwegian_Norway.ISO-8859-10@Danish Norwegian_Norway.ISO-8859-15@Danish Norwegian_Norway.ISO-8859-4@Danish Norwegian_Norway.Latin1@Danish Norwegian_Norway.MS1252.Default Portuguese_Portugal.IBM037@Default Portuguese_Portugal.IBM500@Default Portuguese_Portugal.ISO-8859-15@Default Portuguese_Portugal.Latin1@Default Portuguese_Portugal.MS1252@Default Romanian_Romania.ISO-8859-2@Romanian Romanian_Romania.MS1250@Romanian Russian_Russia.ISO-8859-5@Default Russian_Russia.MS1251@Default Serbian_Yugoslavia.ISO-8859-2@Default Serbian_Yugoslavia.MS1250@Default SimplifiedChinese_China.IBM935@Binary SimplifiedChinese_China.MS936@Binary SimplifiedChinese_China.UTF-8@Binary Slovak_Slovakia.ISO-8859-2@Slovak Slovak_Slovakia.MS1250@Slovak Slovenian_Slovenia.ISO-8859-10@Slovenian Slovenian_Slovenia.ISO-8859-2@Slovenian Slovenian_Slovenia.ISO-8859-4@Slovenian Slovenian_Slovenia.MS1250@Slovenian Spanish_Spain.IBM500@Spanish Spanish_Spain.ISO-8859-15@Spanish Spanish_Spain.Latin1@Spanish Spanish_Spain.MS1252@Spanish Swedish_Sweden.IBM500@Swedish Swedish_Sweden.ISO-8859-15@Swedish Swedish_Sweden.Latin1@Swedish Swedish_Sweden.MS1252@Swedish Thai_Thailand.MS874@Thai TraditionalChinese_Taiwan.EUC-TW@Binary TraditionalChinese_Taiwan.IBM937@Binary TraditionalChinese_Taiwan.MS950@Binary Turkish_Turkey.ISO-8859-3@Turkish Turkish_Turkey.ISO-8859-9@Turkish Turkish_Turkey.MS1254@Turkish Ukrainian_Ukraine.ISO-8859-5@Ukrainian Ukrainian_Ukraine.MS1251@Ukrainian
Essbase Unicodeファイル・ユーティリティを使用すると、非Unicodeでエンコードされたテキスト・ファイルをUTF-8エンコード方式に変換したり、エンコード方式のインディケータを追加または削除したりできます。このプログラムは、次の操作をサポートしています:
Essbase Unicodeファイル・ユーティリティは、ESSBASEPATH/binディレクトリに保管され、essutf8.exe (Windows)またはESSUTF8 (UNIX)という名前が付いています。このユーティリティ・プログラムは、次のファイルとともに使用できます:
このユーティリティおよびコマンド構文の詳細は、『Oracle Essbaseテクニカル・リファレンス』を参照してください。