アプリケーション取り込みとレプリケーション ソース- 準備と使用方法アプリケーション取り込みとレプリケーション がサポートするソースは、アプリケーション取り込みとレプリケーション タスクが、バッチ初期ロード操作でデータのポイントインタイムスナップショットを転送するか、特定の開始ポイントから増分変更データをロードするかによって異なります。
次の表に、アプリケーション取り込みとレプリケーション がサポートしているソースタイプと、各ソースタイプでサポートされているロード操作のタイプを示します。
ソースタイプ
サポートされているロード操作
Adobe Analytics
初期ロード、増分ロード、および初期ロードと増分ロードの組み合わせ
Google Analytics*
初期ロード、増分ロード、および初期ロードと増分ロードの組み合わせ
Marketo
初期ロード、増分ロード、および初期ロードと増分ロードの組み合わせ
Microsoft Dynamics 365
初期ロード、増分ロード、および初期ロードと増分ロードの組み合わせ
NetSuite
初期ロード、増分ロード、および初期ロードと増分ロードの組み合わせ
Oracle Fusion Cloud Applications
REST: 初期ロード、増分ロード、および初期ロードと増分ロードの組み合わせ
BICC: 初期ロード、増分ロード、および初期ロードと増分ロードの組み合わせ
Salesforce
初期ロード、増分ロード、および初期ロードと増分ロードの組み合わせ
Salesforce Marketing Cloud
初期ロード
SAP ERP Central Component(SAP ECC)
初期ロード、増分ロード、および初期ロードと増分ロードの組み合わせ(接続タイプによって異なります。)
SAP ODP
SAP ECC: 初期ロード、増分ロード、および初期ロードと増分ロードの組み合わせ
SAP S4/HANA: 初期ロード、増分ロード、および初期ロードと増分ロードの組み合わせ
SAP OData V2
SAP S4/HANA: 初期ロード、増分ロード、および初期ロードと増分ロードの組み合わせ
SAP Mass Ingestion
SAP ECC: Oracleデータベースの初期ロード、増分ロード、および初期ロードと増分ロードの組み合わせ。SnowflakeおよびPostgreSQLターゲットで認定済みです。
SAP S4/HANA: HANAデータベースの初期ロードと増分ロード。SnowflakeおよびPostgreSQLターゲットで認定済みです。
ServiceNow
初期ロード、増分ロード、および初期ロードと増分ロードの組み合わせ
Workday
初期ロード、増分ロード、および初期ロードと増分ロードの組み合わせ
Zendesk
初期ロード、増分ロード、および初期ロードと増分ロードの組み合わせ
*Google Analytics Mass Ingestionコネクタのサポートは終了しました。Informaticaは、このコネクタに対するバグ修正、機能強化、およびサポートの提供を終了しました。
ソースタイプに使用するコネクタを判断するには、「コネクタと接続」 > 「アプリケーション取り込みおよびレプリケーションコネクタ」を参照してください。
Google Analyticsソースのガイドライン 注: このコネクタのサポートは終了しました。Informaticaは、このコネクタに対するバグ修正、機能強化、およびサポートの提供を終了しました。
Google Analyticsソースを使用する場合は、次のガイドラインを考慮してください。
• Google Analyticsソースの変更データをキャプチャするために増分ロードジョブを初めて実行するとき、ジョブは、関連付けられた取り込みタスクで指定されている日時以降に作成された変更レコードのみを取得してロードします。日付と時刻は、アプリケーション取り込みとレプリケーション タスクウィザードでソースを設定するときに指定できます。ただし、停止または強制終了されたジョブを再開すると、ジョブは最後に中断したところから変更データのプロパゲートを開始します。• アプリケーション取り込みとレプリケーション の取り込み初期ロードジョブでは、Google Analyticsレポートの説明が入力データになります。各レポートには、ターゲットにレプリケートされるディメンションとメトリックのリストが含まれています。ディメンションとメトリックを含め、535列あります。ただし、Google Analyticsで取得できるのは、1レポートにつき最大10個のメトリックと9個のディメンションです。複数のレポートを設定して、すべてのディメンションとメトリックを表示できます。• アプリケーション取り込みとレプリケーション タスクを設定する前に、レポートの説明ドキュメントを作成し、Secure Agentがアクセスできる場所に保存する必要があります。ファイルの読み取り権限が必要です。• Google Analyticsは、タイムスタンプで表される特定の間隔ではなく、日単位のデータのみを取得します。• アプリケーション取り込みとレプリケーション に関するレポートの説明ドキュメントを更新する際は、次のガイドラインを考慮してください。- レポート内で名前を変更する際は、フィールドの順序を変更しないでください。新しいフィールド名は上書きする必要があります。- レポートに新しいフィールドを追加する際は、レポートのフィールドのリストの最後にフィールドを追加します。- フィールドを削除するには、レポートのフィールドのリストから対応するフィールド名を削除します。Marketoソースのガイドライン Marketoソースを使用する場合は、次のガイドラインを考慮してください。
Microsoft Dynamics 365ソースのガイドライン Microsoft Dynamics 365ソースを使用する場合は、次のガイドラインを考慮してください。
• Microsoft Dynamics 365ソースのアプリケーション取り込みとレプリケーション タスクは、営業テーブルのみをサポートします。 • Microsoft Dynamics 365ソースの変更データをキャプチャするために増分ロードジョブを初めて実行するとき、ジョブは、関連付けられた取り込みタスクで指定されている日時以降に作成された変更レコードのみを取得してロードします。日付と時刻は、アプリケーション取り込みとレプリケーション タスクウィザードでソースを設定するときに指定できます。ただし、停止または強制終了されたジョブを再開すると、ジョブは最後に中断したところから変更データのプロパゲートを開始します。• Microsoft Dynamics 365ソースの増分ロードジョブは、modifiedon フィールドのないオブジェクトの変更データをキャプチャしません。• Microsoft Dynamics 365ソースの増分ロードジョブ、および初期ロードと増分ロードの組み合わせジョブは、ソーススキーマに加えられた変更を検出およびレプリケートしません。• Microsoft Dynamics 365ソースの増分ロードジョブと、初期ロードと増分ロードの組み合わせジョブは、CDCサイクルのDELETEデータ操作をキャプチャしません。 • ソースオブジェクトにロケールIDとタイムゾーンコードの値が含まれている場合、アプリケーション取り込みとレプリケーション は、それらの値を実際の値に変換せずにターゲットにプロパゲートします。• アプリケーション取り込みとレプリケーション は、次のデータ型のフィールドをプロパゲートしません。- CUSTOMERTYPE- OWNERTYPE- PARTYLISTTYPE- VIRTUALTYPE- CALENDARRULESTYPE- UNKNOWNNetSuiteソースのガイドライン NetSuiteソースを使用する場合は、次のガイドラインを考慮してください。
Oracle Fusion Cloudソースのガイドライン アプリケーション取り込みとレプリケーション は、Business Intelligence Cloud Connector(BICC)またはRESTアプローチを使用して、ソースからターゲットにデータを転送します。
アプリケーション取り込みとレプリケーション は、次のOracle Fusion Cloud Applications Suiteのモジュールおよびアプリケーションのデータをレプリケートできます。
モジュール
アプリケーション
Enterprise Resource Planning(ERP)
Cloud Financials
Procurement
Project Management
Risk Management and Compliance
Human Capital Management(HCM)
Human Resources
Industry
Higher Education
Public Sector
Digital Experience for Communications
CX for Consumer Goods
CX for Financial Services
Sales
Loyalty
Partner Relationship Management
Customer Data Management
Sales Automation
Subscription Management
Service
B2B Service
Supply Chain & Manufacturing(SCM)
AI Apps
Cloud Service Logistics
Fusion Cloud Inventory Management
Maintenance
Manufacturing
Order Management
Product Lifecycle Management
Supply Chain Collaboration
Supply Chain Planning
ソースの準備: Oracle Fusion Cloudの使用に関する考慮事項 Oracle Fusion Cloudソースを使用する場合は、次のガイドラインを考慮してください。
• Oracle Fusion Cloudソース用に設定された増分ロードジョブおよび初期ロードと増分ロードの組み合わせジョブは、ソーススキーマへの変更をキャプチャおよびレプリケートしません。• 増分ロードジョブ、および初期ロードと増分ロードの組み合わせジョブを設定する場合は、BICCレプリケーションアプローチとRESTレプリケーションアプローチのどちらを使用するのかに応じて、データの抽出に関する以下のガイドラインを考慮してください。BICCアプローチ
RESTアプローチ
- デフォルトでは、増分ロードジョブは、LASTUPDATEDATEフィールドとCREATIONDATEフィールドの両方を含むオブジェクトの変更データを自動的にキャプチャし、どちらのフィールドも含まれていないオブジェクトを無視します。- 挿入のみが必要で、いずれのオブジェクトにもCREATIONDATEフィールドのみが含まれている場合は、アプリケーションタスクウィザードの[ソース] タブでoraclefusion.cdc.allow.creationdate.objects カスタムプロパティをtrue に設定すると、それらのオブジェクトに対する挿入のみをキャプチャできます。次のガイドラインを考慮します。- CREATIONDATEフィールドのみを持つオブジェクトでは、挿入のみを記録できます。LASTUPDATEDATEフィールドがない場合、更新と削除は無視されます。- デプロイしたタスクのoraclefusion.cdc.allow.creationdate.objects プロパティを設定しないでください。既存のタスクの場合は、デプロイを解除して、プロパティを設定した後に、タスクを再度デプロイしてこの変更を適用します。Salesforceソースのガイドライン Salesforceソースを使用する場合は、次のガイドラインを考慮してください。
• Salesforceソースの変更データをキャプチャするために増分ロードジョブを初めて実行するとき、ジョブは、関連付けられた取り込みタスクで指定されている日時以降に作成された変更レコードのみを取得してロードします。日付と時刻は、アプリケーション取り込みとレプリケーション タスクウィザードでソースを設定するときに指定できます。ただし、停止または強制終了されたジョブを再開すると、ジョブは最後に中断したところから変更データのプロパゲートを開始します。• デフォルトでは、増分ロードジョブは、lastmodifieddate またはsystemModstamp フィールドを含んだオブジェクトの変更データのみをキャプチャします。ただし、Salesforceの一部のオブジェクトには、lastmodifieddate フィールドとsystemModstamp フィールドはなく、CreatedDate フィールドしかありません。CreatedDate フィールドのみを含むそのようなオブジェクトの変更データをキャプチャするには、アプリケーション取り込みとレプリケーション タスクウィザードの[ソース] タブで、salesforce.cdc.allow.createddate.objectsカスタムプロパティをtrueに設定します。デプロイされたタスクのカスタムプロパティをtrueに設定した場合は、変更を反映するため、ジョブをデプロイ解除してからタスクを再度デプロイしてください。• Data.comオブジェクトをレプリケートする場合は、Salesforceアカウントに適切なData.comライセンスを割り当てる必要があります。• アプリケーション取り込みとレプリケーション は、Salesforceオブジェクト間で定義されているリレーションをレプリケートしません。ターゲットには、ソースオブジェクト間のリレーションは含まれません。• オブジェクトに複合フィールドが含まれている場合、アプリケーション取り込みとレプリケーション は、複合フィールドをプロパゲートするのではなく、複合フィールドを構成するコンポーネントフィールドをプロパゲートします。例えば、複合フィールドgeolocation がフィールドgeolocation_longitude とgeolocation_lattitude の組み合わせである場合、アプリケーション取り込みとレプリケーション は、複合フィールドgeolocation をプロパゲートするのではなく、geolocation_longitude フィールドとgeolocation_lattitude フィールドに保存されているデータをターゲットに個別にロードします。• ソースフィールドのマスキング設定は、ターゲットで保持されます。• すべての増分ロードアクティビティは、標準のREST APIのみを使用します。• ルックアップフィールドは、ターゲット上で一意の英数字の識別子によって表されます。• Functionデータ型のデフォルト値を持つ新しいフィールドが既存のソースオブジェクトに追加されると、アプリケーション取り込みとレプリケーション は、デフォルト値をターゲットの既存の行にプロパゲートしません。ただし、新しい行がオブジェクトに追加されると、増分ジョブは新しく追加された行に対してフィールドに保存されている値をプロパゲートします。• アプリケーション取り込みとレプリケーション ジョブは、Salesforceプラットフォームでインデックス処理されていないBig Objectに保存されているデータをレプリケートしません。Salesforceソースのアプリケーション取り込みとレプリケーション タスクをデプロイする前に、タスクのオブジェクト選択ルールで選択されたすべてのBig Objectをインデックス処理してください。• Decimalデータ型のソースフィールドに、そのフィールドに定義された上限を超えるスケールの値が含まれている場合、アプリケーション取り込みとレプリケーション ジョブは、そのようなフィールドのプロパゲートに失敗する場合があります。ただし、フィールドのプロパゲート中に、スケールの値を定義された制限値にトリミングすることは可能です。スケールの値のトリミングは、カスタムプロパティsalesforce.decimal.trim.scaleをtrueに設定することで行えます。Salesforce Marketing Cloudソースのガイドライン Salesforce Marketing Cloudソースを使用する場合は、次のガイドラインを考慮してください。
• アプリケーション取り込みとレプリケーション は、Salesforce Marketing Cloudのデータエクステンションオブジェクトに保存されているデータを取り込むことができます。• Salesforce Marketing Cloudソースに対しては初期ロードジョブのみを設定できます。• アプリケーション取り込みとレプリケーション ジョブは、データエクステンションオブジェクトをターゲットにレプリケートするときにオブジェクト名の先頭にDATA_EXTENSION__ を追加します。例えば、アプリケーション取り込みとレプリケーション ジョブがデータエクステンションオブジェクトAddress をレプリケートした場合、ターゲットでのオブジェクト名はDATA_EXTENSION__Address になります。• Salesforce Marketing CloudソースとMicrosoft Azure Synapse Analyticsターゲットを使用したアプリケーション取り込みとレプリケーション 初期ロードジョブで、一部のオブジェクトのデプロイに失敗する場合があります。SAP ECCおよびSAP S4/HANAソースのガイドラインSAP ODP Extractorコネクタの使用 SAP ODP ExtractorコネクタでSAP ECCまたはSAP S4/HANAソースを使用する場合は、次のガイドラインを考慮してください。
• SAP ソースを初めて使用する場合は、ソースに対してアプリケーション取り込みとレプリケーション タスクを設定する前に、次の手順を実行します。1 適切なSAP NotesがSAPサーバーで使用可能であることを確認します。詳細については、『SAPコネクタガイド 』を参照してください。2 SAP Java Connector(SAP JCo)ライブラリをSAP Webサイトからダウンロードします。3 ダウンロードしたSAP JCoライブラリからネイティブファイルとJARファイルを次のディレクトリにコピーします。<Secure_Agent>\ext\connectors\thirdparty\infa.odp\
4 sap-adapter-common.jarファイルを<Secure_Agent>\downloads\package-ICSAgent_<バージョン>\package\ICS\main\bin\rdtm\javalib\sap から次のディレクトリにコピーします。<Secure_Agent>\ext\connectors\thirdparty\infa.odp\
5 Secure Agentを再起動します。• SAP ソースに対してアプリケーション取り込みとレプリケーション タスクを設定する前に、データの転送元のデータソースを必ず解放してください。次の関数を使用して、必要なデータソースを解放することができます。- BS_ANLY_DS_RELEASE_ODP- RODPS_OS_EXPOSE• SAPソースの変更データを取得する増分ロードジョブを初めて実行するとき、ジョブは、ソースデータを含むデータストリーム内の最新の位置から変更レコードを取得してロードします。ただし、停止または強制終了されたジョブを再開すると、ジョブは最後に中断したところから変更データのプロパゲートを開始します。• SAP ソースの増分ロードジョブは、プライマリキーを持たないデータソースの変更データをキャプチャしません。また、増分ロードジョブは、次のSAPデータソースの変更データをキャプチャしません。- SAPが差分をサポートしていないデータソース。- 変更データを付加イメージの形式で提供するように設定されたデータソース。• アプリケーション取り込みとレプリケーション タスクでSAPテーブルソースカラムにNULL値が検出された場合、空白データを使用してNULLがターゲットテーブルにレプリケートされることはありません。 • アプリケーション取り込みとレプリケーション は、SAP ソースのスキーマ変更を検出およびプロパゲートしません。• アプリケーション取り込みとレプリケーション は、次の廃止されたSAPデータ型のフィールドをプロパゲートしません。さらに、アプリケーション取り込みとレプリケーション ジョブは、RSTRデータ型のフィールドをプロパゲートしません。
SAPユーザー権限の設定 SAPテーブルデータを処理するSAPユーザーアカウントを設定します。
次の表に、SAPテーブルから読み取るために必要な承認を示します。
読み取りオブジェクト名
必要な承認
S_BTCH_JOB
DELE、LIST、PLAN、SHOW
Job OperationをRELEに設定します。
S_PROGRAM
BTCSUBMIT、SUBMIT
S_RFC
SYST、SDTX、SDIFRUNTIME、/INFADI/TBLRDR、RFC1
S_TABU_DIS/ S_TABU_NUM
データを読み取るSAPテーブル名を指定します。
SAP ODPコネクタのトランスポートファイルのインストール アクセスするSAPマシンにSAP ODP Extractorのトランスポートファイルをインストールします。本番システムにトランスポートをインストールする前に、開発システムにトランスポートをインストールしてテストしてください。
SAP ODPオブジェクトからデータを抽出するための最新のトランスポートファイルをインストールしていることを確認します。
次のデータファイルとcofileをインストールして、SAP ODPオブジェクトからデータを読み取ります。
データおよびCoファイル名
トランスポート要求
機能
- K900861.N75- R900861.N75N75K900861
階層をサポートするSAP ODPオブジェクトから読み取る場合にのみ、トランスポートをインストールします。
階層をサポートしないオブジェクトについては、SAP ODP ExtractorトランスポートファイルをインストールせずにSAP ODP Extractorコネクタを使用できます。
トランスポートファイルのインストール Unicode SAPシステムから読み取るために、Secure Agentディレクトリの最新のトランスポートファイルをインストールします。トランスポートファイルは、SAPバージョンERP 6.0 EHP7システム以降に対応しています。
1 Secure Agentマシンの次のディレクトリに、トランスポートファイルがあります:
<Informatica Secure Agent installation directory>\downloads\package-SAPODP.<Latest version>\package\sapodp\sap-transport
2 アクセスする各SAPマシンのSAPトランスポート管理ディレクトリにある Cofile ディレクトリに、cofileトランスポートファイルをコピーします。
cofileトランスポートファイルでは、次の命名規則を使用します: <number>.<sap system>
3 アクセスする各SAPマシンのSAPトランスポート管理ディレクトリにある Data ディレクトリにデータトランスポートファイルをコピーします。
データトランスポートファイルでは、次の命名規則を使用します: <number>.<sap-system>
4 STMSでトランスポートをSAPにインポートするには、 [補足] > [その他の依頼] > [追加] をクリックし、トランスポート要求をシステムキューに追加します。
5 [インポートキューに移送依頼追加] ダイアログボックスに、cofileトランスポートの要求番号を入力します。
要求番号は、名前を変更したcofileを次のような順序に置き替えたものです: <sap-system><number>
6 インポートキューの要求領域で、追加したトランスポート要求番号を選択して、 [インポート] をクリックします。
7 Informatica Transportsの以前のバージョンからアップグレードする場合、 [オリジナルを上書き] オプションを選択します。
SAP ECCおよびSAP S4/HANAソースのガイドラインSAP Mass Ingestionコネクタの使用 SAP Mass Ingestionコネクタは、次のSAPソースをサポートしています。
• SAP ECC(Oracleデータベース上) 。データベースビュー(初期ロード)、透過テーブル、プールテーブル、クラスタテーブルをサポートしています。• トリガーベースのアプローチを使用したSAP S/4 HANA 。データベースビュー(初期ロード)と透過テーブルをサポートしています。SAP ECCソース アプリケーション取り込みとレプリケーション タスクでOracleデータベースを基盤としたSAP ECCソースを使用するには、最初にソースデータベースを準備し、使用に関する考慮事項を確認してください。
ソースの準備: • SAP Mass Ingestionコネクタを使用したSAP ECCソースを初めて使用する場合は、ソースに対してアプリケーション取り込みとレプリケーション タスクを設定する前に、次の手順を実行します。1 アクセスするSAPマシンに、最新バージョンのSAPトランスポートファイルをインストールする必要があります。SAPトランスポートファイルへのアクセスの詳細については、Informaticaグローバルカスタマサポートにお問い合わせください。
次の表は、SAP開発システムでのトランスポートについて説明しています。
データおよびCoファイル名
データおよびCoファイル名
トランスポート要求
機能
R<number>.EP6
K<number>.EP6
必須
EP6K<number>
SAP透過テーブル、クラスタテーブル、プールテーブル、およびビューから読み取るには、トランスポートをインストールします。
トランスポートファイルのインストールに関する詳細については、
トランスポートファイルのインストール を参照してください。
2 適切なSAP NotesがSAPサーバーで使用可能であることを確認します。詳細については、『SAPコネクタガイド 』を参照してください。3 SAP Java Connector(SAP JCo)ライブラリをSAP Webサイトからダウンロードして、次のタスクを実行します。a ダウンロードしたSAP JCoライブラリからネイティブファイルとJARファイルを次のディレクトリにコピーします。<Secure_Agent>\ext\connectors\thirdparty\informatica.sapami\
b Secure Agentを再起動します。• アプリケーション取り込みとレプリケーション タスクでOracleデータベースを基盤としたSAP ECCソースを使用するには、Secure Agentが実行されるLinuxまたはWindowsシステムで次のシステム環境変数を定義します。- ORACLE_HOME環境変数。WindowsのbinディレクトリまたはLinuxのlibディレクトリの1つ上のレベルにある、Oracleクライアントインストールディレクトリを指します。この環境変数は必須ではありません。ただし、これを定義しない場合は、サブディレクトリへのパスを指定する他の環境変数またはSecure Agentプロパティを定義するときに、Oracleクライアントの完全なインストールパスを指定する必要があります。- TNS_ADMIN環境変数。SAP Mass Ingestion接続のOracleデータベースプロパティにある[データベース接続文字列] プロパティでTNS名を指定している場合、ファイルがデフォルトの$ORACLE_HOME/network/adminディレクトリにないときは、この環境変数を使用してtsnnames.oraファイルのディレクトリの場所を指すようにします。tnsnames.oraファイルは、Oracleソースデータベースと通信するために、Oracle Call Interface(OCI)とともに使用されます。注: Administratorで、データベース取り込みエージェントサービス(DBMIエージェント)のociPathプロパティを、oci.dllまたはlibcIntsh.soファイルを含むOCIライブラリを指すように設定できます。OCIライブラリは、アプリケーション取り込みとレプリケーションのCDCタスクによってOracleに接続するために使用されます。Oracleは、Linuxでは$ORACLE_HOME/lib、Windowsでは%ORACLE_HOME%\binのociPath値をデフォルトで使用します。
• アプリケーション取り込みとレプリケーション ユーザーに、アプリケーション取り込みとレプリケーション のロードタイプの実行に必要なOracle権限があることを確認してください。詳細については、Oracle特権 を参照してください。• Amazon RDS for Oracleを使用する場合は、アプリケーション取り込みとレプリケーション でユーザーに必要な特権があることを確認します。詳細については、「Amazon RDS for Oracleに対するOracle特権 」を参照してください。• Oracle 11.2.04を使用する場合は、Oracle COMPATIBLE初期化パラメータを11.2.04に設定して、そのリリースの最新のREDOログ修正がすべてOracleに適用されるようにします。• Secure AgentがOracleと通信できるように、Oracle Database ClientまたはInstant ClientがSecure Agentサーバーにインストールされ、設定されていることを確認します。Oracleクライアントをまだインストールしていない場合は、Oracle Webサイトからクライアントをダウンロードしてインストール情報にアクセスするか、Oracle DBAにOracleクライアントのダウンロードと設定を依頼してください。• ログベースのCDCを使用した増分ロードまたは初期ロードと増分ロードの組み合わせ操作の場合、Oracleで次の要件タスクを実行します。- OracleデータベースのARCHIVELOGモードを有効にします。データベースがAmazon RDS環境にない場合は、次のSQL文を発行します。SHUTDOWN IMMEDIATE; STARTUP MOUNT; ALTER DATABASE ARCHIVELOG; ALTER DATABASE OPEN; SHUTDOWN IMMEDIATE; STARTUP;
- ソースデータベースでOracleの最小限のグローバルサプリメンタルロギングを有効にします。- ソースを使用する増分ロード操作の場合、アプリケーション取り込みとレプリケーション は、ソースから変更データをキャプチャし、そのデータをターゲットに適用するための代替キャプチャメソッドを提供します。アプリケーション取り込みとレプリケーション は、Oracle REDOログからデータ変更を読み取ります。この方法では、ユーザーの権限を拡張する必要があります。- アプリケーション取り込みとレプリケーション では、ソーステーブルの各行が一意であることを想定しているため、各ソーステーブルにプライマリキーを持たせることをお勧めします。アプリケーション取り込みとレプリケーション は、プライマリキーの代わりに一意のインデックスを許可しません。プライマリキーが指定されていない場合、アプリケーション取り込みとレプリケーション はすべてのカラムをプライマリキーの一部であるかのように扱います。• ジョブは、Oracle Onlineのトランザクションデータにアクセスでき、REDOログをアーカイブできる必要があります。詳細については、「Oracleアーカイブログの保持に関する考慮事項 」を参照してください。• ログベースのCDCを使用したアプリケーション取り込みとレプリケーション ジョブには、増分変更データを読み取るためにOracleのオンラインREDOログとアーカイブREDOログへの読み取りアクセスが必要です。REDOログが、Secure Agentが実行されているオンプレミスシステムからリモートにある場合は、ログへの読み取りアクセスが提供されていることを確認してください。例えば、Oracle Automatic Storage Management(ASM)を使用して、ログをネットワークファイルシステム(NFS)にマウントすることによって、それを実現します。• OracleディレクトリオブジェクトとBFILEを使用してREDOログにアクセスするには、OracleファイルシステムのOracle REDOログへのBFILEアクセスの設定 を参照してください。使用に関する考慮事項: SAP S/4HANAソース アプリケーション取り込みおよびレプリケーションタスクでSAP S/4 HANA(トリガベース)を使用するには、最初にソースデータベースを準備し、使用に関する考慮事項を確認してください。
ソースの準備 • SAP Mass Ingestionコネクタを使用したSAP S/4 HANAソースを初めて使用する場合は、ソースに対してアプリケーション取り込みとレプリケーション タスクを設定する前に、次の手順を実行します。1 アクセスするSAPマシンに、最新バージョンのSAPトランスポートファイルをインストールする必要があります。SAPトランスポートファイルへのアクセスの詳細については、Informaticaグローバルカスタマサポートにお問い合わせください。
次の表は、SAP開発システムでのトランスポートについて説明しています。
データおよびCoファイル名
データおよびCoファイル名
トランスポート要求
機能
R<number>.EP6
K<number>.EP6
必須
EP6K<number>
SAP透過テーブル、クラスタテーブル、プールテーブル、およびビューから読み取るには、トランスポートをインストールします。
トランスポートファイルのインストールに関する詳細については、
トランスポートファイルのインストール を参照してください。
2 適切なSAP NotesがSAPサーバーで使用可能であることを確認します。詳細については、『SAPコネクタガイド 』を参照してください。3 SAP Java Connector(SAP JCo)ライブラリをSAP Webサイトからダウンロードし、そのダウンロードしたSAP JCoライブラリからネイティブファイルとJARファイルを次のディレクトリにコピーします。<Secure_Agent>\ext\connectors\thirdparty\informatica.sapami\
4 SAP Mass Ingestionコネクタは、JDBCを使用してSAP S/4 HANAに接続し、データとメタデータを読み取って、接続プロパティをテストします。SAP HANA JDBCドライバファイルngdbc.jarをダウンロードし、Secure Agentが実行されているマシンのSecure Agentインストールディレクトリの特定のサブディレクトリにコピーする必要があります。a SAP HANA JDBCドライバのjarファイルngdbc.jarを、Secure Agentが実行されているLinuxまたはWindowsマシンにダウンロードします。ダウンロードするファイルが最新バージョンであることを確認します。ファイルのダウンロードで問題が発生した場合は、SAPカスタマサポートにお問い合わせください。
b 次のディレクトリにngdbc.jarファイルをコピーします。<Secure Agent installation directory>/ext/connectors/thirdparty/informatica.hanami
c Secure Agentを再起動します。5 一括取り込みデータベースユーザーを作成します。管理者特権を持つユーザーとしてソースデータベースに接続し、次の文を実行します。CREATE USER dbmi_user password "<password>" NO FORCE_FIRST_PASSWORD_CHANGE;
この文は、デフォルトの権限を使用してデータベースにユーザーを作成します。これにより、基本的なデータディクショナリビューを読み取ることができ、必要なCDCオブジェクトをユーザー自身のスキーマに作成することができます。
6 SAP S/4 HANAソースを含むデータベース取り込みタスクをデプロイして実行するには、ソース接続で、次のシステムビューからメタデータやその他の情報を読み取る特権を持つ一括取り込みデータベースユーザー(dbmi_user)を指定する必要があります。▪ SYS.M_DATABASE - データベースのバージョンを取得するために使用されます。▪ SYS.M_CS_PARTITIONS - テーブルがパーティション化されているかどうかを識別するために使用されます。(SAP HANA Cloudには適用されません)▪ SYS.SCHEMAS - データベースのスキーマのリストを取得するために使用されます。▪ SYS.TABLES - スキーマのテーブル名のリストを取得するために使用されます。▪ SYS.TABLE_COLUMNS - テーブルのカラムメタデータを取得するために使用されます。▪ SYS.INDEXES - テーブルのインデックス情報を取得するために使用されます。▪ SYS.INDEX_COLUMNS - テーブルのインデックス情報を取得するために使用されます。7 増分ロードジョブの場合、次の権限を付与します。▪ dbmi_userのPKLOGおよびシャドー_CDCテーブルに行を書き込むトリガの場合は、dbmi_userのスキーマに対するINSERTアクセス権を、ソーステーブルのスキーマを所有するユーザー(schema_user)に付与します。GRANT INSERT ON SCHEMA dbmi_user TO schema_user;
▪ トリガを使用してschema_userのスキーマ内のソーステーブルから変更データをキャプチャするには、次のいずれかの文を実行します。GRANT TRIGGER ON SCHEMA schema_user TO dbmi_user;
この文は、スキーマ内のすべてのテーブルに対するトリガアクセス権を付与します。
- or -
GRANT TRIGGER ON database.table_name TO dbmi_user;
この文は、特定のソーステーブルに対するトリガアクセス権を付与します。選択した少数のテーブルからデータをキャプチャする場合は、この文を使用します。CDC対象のソーステーブルごとに、付与を繰り返します。
8 初期ロードジョブの場合、ソーステーブルからデータを読み取るために、次のGRANT文のいずれかを実行します。GRANT SELECT ON SCHEMA schema_user TO dbmi_user;
この文は、スキーマ内のすべてのテーブルに対するSELECTアクセス権を付与します。
- or -
GRANT SELECT ON database.table_name TO dbmi_user;
この文は、特定のソーステーブルに対するSELECTアクセス権を付与します。データを読み取るソーステーブルごとに、この付与を繰り返します。
使用に関する考慮事項: SAP Mass Ingestionコネクタを使用したSAP S/4 HANAソースを使用する場合は、次のガイドラインを考慮してください。
• SAP S/4 HANAソースの場合、暗号化するために、接続にはSAP HANA JDBCカスタム接続プロパティ設定が必要です。SAP Mass Ingestion接続プロパティの[詳細接続プロパティ] フィールドに次のプロパティを入力します。encrypt=true&validateCertificate=false
• SAP Mass Ingestion接続でHTTPSを有効にすると、タスクは初期ロードと、組み合わせロードの初期フェーズのみを処理します。HTTPSを有効にした状態でCDCを実行することはできません。• アプリケーション取り込みとレプリケーション は、次の廃止されたSAPデータ型のフィールドをプロパゲートしません。- D16S- D34S- PREC- VARC- DATN- TIMN- DECFLOAT_16- DECFLOAT_34- UTCLONG- STRGデータ型(増分ロードの場合)さらに、アプリケーション取り込みとレプリケーション ジョブは、RSTRデータ型のフィールドをプロパゲートしません。
• SAP Mass Ingestionコネクタを使用したSAP ECCソースは、スキーマドリフトをサポートしません。SAPユーザー権限の設定の詳細については、
SAPユーザー権限の設定 を参照してください。
トランスポートファイルのインストール Unicode SAPシステムから読み取るために、Secure Agentディレクトリの最新のトランスポートファイルをインストールします。トランスポートファイルは、SAPバージョンECC 5.0以降に対応します。
1 Secure Agentマシンの次のディレクトリに、トランスポートファイルがあります:
<Secure Agent installation directory>\downloads\package-SAPConnector.<latest version>\package\rdtm\sap-transport\SAPTableReader
2 アクセスする各SAPマシンのSAPトランスポート管理ディレクトリにある Cofile ディレクトリに、cofileトランスポートファイルをコピーします。
cofileトランスポートファイルでは、次の命名規則を使用します: K<number>.EP6 。
3 アクセスする各SAPマシンのSAPトランスポート管理ディレクトリにある Data ディレクトリにデータトランスポートファイルをコピーします。
データトランスポートファイルでは、次の命名規則を使用します: R<number>.EP6 。
4 STMSでトランスポートをSAPにインポートするには、 [補足] > [その他の依頼] > [追加] をクリックし、トランスポート要求をシステムキューに追加します。
5 [インポートキューに移送依頼追加] ダイアログボックスに、cofileトランスポートの要求番号を入力します。
要求番号は、名前を変更したcofileを次のような順序に置き替えたものです: EP6K<number>
例えば、K900215.EP6 と名前変更されたcofileトランスポートファイルの場合、要求番号として「EP6K900215」と入力します。
6 インポートキューの要求領域で、追加したトランスポート要求番号を選択して、 [インポート] をクリックします。
7 Informatica Transportsの以前のバージョンからアップグレードする場合、 [オリジナルを上書き] オプションを選択します。
Oracle特権 Oracleデータベースを基盤としたSAP ECCソースを持つアプリケーション取り込みとレプリケーション タスクをデプロイして実行するには、ソース接続で、取り込みロードタイプに必要な特権を持つアプリケーション取り込みとレプリケーション ユーザーを指定する必要があります。
ログベースのCDCを使用した増分ロード処理の権限
注: OracleログがASMによって管理されている場合、ユーザーはSYSASMまたはSYSDBA権限を持っている必要があります。
ログベースのCDCメソッドを使用した増分ロードまたは、初期ロードと増分ロードの組み合わせを実行するアプリケーション取り込みとレプリケーション タスクの場合、アプリケーション取り込みとレプリケーション のユーザー(cmid_user )に次の権限が付与されていることを確認してください。
GRANT CREATE SESSION TO <cmid_user>; GRANT SELECT ON table TO <cmid_user>; -- For each source table created by user GRANT EXECUTE ON DBMS_FLASHBACK TO <cmid_user>; -- The following grant is required for combined initial and incremental loads only. Do not -- use ANY TABLE unless your security policy allows it. GRANT FLASHBACK ON table|ANY TABLE TO <cmid_user>; -- Include the following grant only if you want to Execute the CDC script for enabling -- supplemental logging from the user interface. If you manually enable supplemental -- logging, this grant is not needed. GRANT ALTER table|ANY TABLE TO <cmid_user>; GRANT SELECT ON DBA_CONSTRAINTS TO <cmid_user>; GRANT SELECT ON DBA_CONS_COLUMNS TO <cmid_user>; GRANT SELECT ON DBA_INDEXES TO <cmid_user>; GRANT SELECT ON DBA_LOG_GROUPS TO <cmid_user>; GRANT SELECT ON DBA_LOG_GROUP_COLUMNS TO <cmid_user>; GRANT SELECT ON DBA_OBJECTS TO <cmid_user>; GRANT SELECT ON DBA_OBJECT_TABLES TO <cmid_user>; GRANT SELECT ON DBA_TABLES TO <cmid_user>; GRANT SELECT ON DBA_TABLESPACES TO <cmid_user>; GRANT SELECT ON DBA_USERS TO <cmid_user>; GRANT SELECT ON "PUBLIC".V$ARCHIVED_LOG TO <cmid_user>; GRANT SELECT ON "PUBLIC".V$CONTAINERS TO <cmid_user>; -- For Oracle multitenant environments GRANT SELECT ON "PUBLIC".V$DATABASE TO <cmid_user>; GRANT SELECT ON "PUBLIC".V$DATABASE_INCARNATION TO <cmid_user>; GRANT SELECT ON "PUBLIC".V$ENCRYPTION_WALLET TO <cmid_user>; -- For Oracle TDE access GRANT SELECT ON "PUBLIC".V$LOG TO <cmid_user>; GRANT SELECT ON "PUBLIC".V$LOGFILE TO <cmid_user>; GRANT SELECT ON "PUBLIC".V$PARAMETER TO <cmid_user>; GRANT SELECT ON "PUBLIC".V$PDBS TO <cmid_user>; -- For Oracle multitenant environments GRANT SELECT ON "PUBLIC".V$SPPARAMETER TO <cmid_user>; GRANT SELECT ON "PUBLIC".V$STANDBY_LOG TO <cmid_user>; GRANT SELECT ON "PUBLIC".V$THREAD TO <cmid_user>; GRANT SELECT ON "PUBLIC".V$TRANSACTION TO <cmid_user>; GRANT SELECT ON "PUBLIC".V$TRANSPORTABLE_PLATFORM TO <cmid_user>; GRANT SELECT ON "PUBLIC".V$VERSION TO <cmid_user>; GRANT SELECT ON SYS.ATTRCOL$ TO <cmid_user>; GRANT SELECT ON SYS.CCOL$ TO <cmid_user>; GRANT SELECT ON SYS.CDEF$ TO <cmid_user>; GRANT SELECT ON SYS.COL$ TO <cmid_user>; GRANT SELECT ON SYS.COLTYPE$ TO <cmid_user>; GRANT SELECT ON SYS.IDNSEQ$ TO <cmid_user>; GRANT SELECT ON SYS.IND$ TO <cmid_user>; GRANT SELECT ON SYS.INDPART$ TO <cmid_user>; GRANT SELECT ON SYS.OBJ$ TO <cmid_user>; GRANT SELECT ON SYS.PARTOBJ$ TO <cmid_user>; GRANT SELECT ON SYS.RECYCLEBIN$ TO <cmid_user>; GRANT SELECT ON SYS.TAB$ TO <cmid_user>; GRANT SELECT ON SYS.TABCOMPART$ TO <cmid_user>; GRANT SELECT ON SYS.TABPART$ TO <cmid_user>; GRANT SELECT ON SYS.TABSUBPART$ TO <cmid_user>; -- Also ensure that you have access to the following ALL_* views: ALL_CONSTRAINTS ALL_CONS_COLUMNS ALL_ENCRYPTED_COLUMNS ALL_INDEXES ALL_IND_COLUMNS ALL_OBJECTS ALL_TABLES ALL_TAB_COLS ALL_TAB_PARTITIONS ALL_USERS
クエリベースのCDCを使用した増分ロード処理の権限
クエリベースのCDCメソッドを使用した増分ロード、または初期ロードと増分ロードの組み合わせを実行するアプリケーション取り込みとレプリケーション タスクの場合、ユーザーが少なくとも次の特権を持っていることを確認してください。
GRANT CREATE SESSION TO <cmid_user>; GRANT SELECT ON DBA_INDEXES TO <cmid_user>; GRANT SELECT ON DBA_OBJECT_TABLES TO <cmid_user>; GRANT SELECT ON DBA_OBJECTS TO cmid_user; GRANT SELECT ON DBA_TABLES TO <cmid_user>; GRANT SELECT ON DBA_USERS TO <cmid_user>; GRANT SELECT ON DBA_VIEWS TO <cmid_user>; -- Only if you unload data from views GRANT SELECT ANY TABLE TO <cmid_user>; -or- GRANT SELECT ON table TO <cmid_user>; -- For each source table created by user GRANT SELECT ON ALL_CONSTRAINTS TO <cmid_user>; GRANT SELECT ON ALL_CONS_COLUMNS TO <cmid_user>; GRANT SELECT ON ALL_ENCRYPTED_COLUMNS TO <cmid_user>; GRANT SELECT ON ALL_IND_COLUMNS TO <cmid_user>; GRANT SELECT ON ALL_INDEXES TO <cmid_user>; GRANT SELECT ON ALL_OBJECTS TO <cmid_user>; GRANT SELECT ON ALL_TAB_COLS TO <cmid_user>; GRANT SELECT ON ALL_USERS TO <cmid_user>; GRANT SELECT ON "PUBLIC"."V$DATABASE" TO cmid_user; GRANT SELECT ON "PUBLIC"."V$CONTAINERS" TO cmid_user; GRANT SELECT ON SYS.ATTRCOL$ TO <cmid_user>; GRANT SELECT ON SYS.CCOL$ TO <cmid_user>; GRANT SELECT ON SYS.CDEF$ TO <cmid_user>; GRANT SELECT ON SYS.COL$ TO <cmid_user>; GRANT SELECT ON SYS.COLTYPE$ TO <cmid_user>; GRANT SELECT ON SYS.IND$ TO <cmid_user>; GRANT SELECT ON SYS.IDNSEQ$ TO cmid_user; GRANT SELECT ON SYS.OBJ$ TO <cmid_user>; GRANT SELECT ON SYS.RECYCLEBIN$ TO <cmid_user>; GRANT SELECT ON SYS.TAB$ TO <cmid_user>;
初期ロード処理の特権
初期ロードを実行するアプリケーション取り込みとレプリケーション タスクの場合、ユーザーが少なくとも次の権限を持っていることを確認してください。
GRANT CREATE SESSION TO <cmid_user>; GRANT SELECT ON DBA_INDEXES TO <cmid_user>; GRANT SELECT ON DBA_OBJECT_TABLES TO <cmid_user>; GRANT SELECT ON DBA_OBJECTS TO cmid_user; GRANT SELECT ON DBA_TABLES TO <cmid_user>; GRANT SELECT ON DBA_USERS TO <cmid_user>; GRANT SELECT ON DBA_VIEWS TO <cmid_user>; -- Only if you unload data from views GRANT SELECT ANY TABLE TO <cmid_user>; -or- GRANT SELECT ON table TO <cmid_user>; -- For each source table created by user GRANT SELECT ON ALL_CONSTRAINTS TO <cmid_user>; GRANT SELECT ON ALL_CONS_COLUMNS TO <cmid_user>; GRANT SELECT ON ALL_ENCRYPTED_COLUMNS TO <cmid_user>; GRANT SELECT ON ALL_IND_COLUMNS TO <cmid_user>; GRANT SELECT ON ALL_INDEXES TO <cmid_user>; GRANT SELECT ON ALL_OBJECTS TO <cmid_user>; GRANT SELECT ON ALL_TAB_COLS TO <cmid_user>; GRANT SELECT ON ALL_USERS TO <cmid_user>; GRANT SELECT ON "PUBLIC"."V$DATABASE" TO cmid_user; GRANT SELECT ON "PUBLIC"."V$CONTAINERS" TO cmid_user; GRANT SELECT ON SYS.ATTRCOL$ TO <cmid_user>; GRANT SELECT ON SYS.CCOL$ TO <cmid_user>; GRANT SELECT ON SYS.CDEF$ TO <cmid_user>; GRANT SELECT ON SYS.COL$ TO <cmid_user>; GRANT SELECT ON SYS.COLTYPE$ TO <cmid_user>; GRANT SELECT ON SYS.IND$ TO <cmid_user>; GRANT SELECT ON SYS.IDNSEQ$ TO cmid_user; GRANT SELECT ON SYS.OBJ$ TO <cmid_user>; GRANT SELECT ON SYS.RECYCLEBIN$ TO <cmid_user>; GRANT SELECT ON SYS.TAB$ TO <cmid_user>;n
Amazon RDS for Oracleに対するOracle特権 Amazon RDS for OracleをデータベースとしているSAP ECCソースを持つアプリケーション取り込みとレプリケーション タスクを使用している場合、アプリケーション取り込みとレプリケーション ユーザーに特定の特権を付与する必要があります。
重要: GRANT文とプロシージャを実行するには、マスターユーザー名でAmazon RDSにログインする必要があります。
少なくとも、CDC処理に必要なオブジェクトおよびシステムテーブルに対するSELECT特権を、アプリケーション取り込みとレプリケーション ユーザー(cmid_user )に付与します。特定の状況では、追加の権限の付与が必要になります。
次のGRANT文を使用します。
GRANT SELECT ON "PUBLIC"."V$ARCHIVED_LOG" TO "cmid_user"; GRANT SELECT ON "PUBLIC"."V$DATABASE" TO "cmid_user"; GRANT SELECT ON "PUBLIC"."V$LOG" TO "cmid_user"; GRANT SELECT ON "PUBLIC"."V$LOGFILE" TO "cmid_user"; GRANT SELECT ON "PUBLIC"."V$TRANSPORTABLE_PLATFORM" TO "cmid_user"; GRANT SELECT ON "PUBLIC"."V$THREAD" TO "cmid_user"; GRANT SELECT ON "PUBLIC"."V$DATABASE_INCARNATION" TO "cmid_user"; GRANT SELECT ON "PUBLIC"."V$TRANSACTION" TO "cmid_user"; GRANT SELECT ON "SYS"."DBA_CONS_COLUMNS" TO "cmid_user"; GRANT SELECT ON "SYS"."DBA_CONSTRAINTS" TO "cmid_user"; GRANT SELECT ON DBA_INDEXES TO "cmid_user"; GRANT SELECT ON "SYS"."DBA_LOG_GROUP_COLUMNS" TO "cmid_user"; GRANT SELECT ON "SYS"."DBA_TABLESPACES" TO "cmid_user"; GRANT SELECT ON "SYS"."OBJ$" TO "cmid_user"; GRANT SELECT ON "SYS"."TAB$" TO "cmid_user"; GRANT SELECT ON "SYS"."IND$" TO "cmid_user"; GRANT SELECT ON "SYS"."COL$" TO "cmid_user"; GRANT SELECT ON "SYS"."PARTOBJ$" TO "cmid_user"; GRANT SELECT ON "SYS"."TABPART$" TO "cmid_user"; GRANT SELECT ON "SYS"."TABCOMPART$" TO "cmid_user"; GRANT SELECT ON "SYS"."TABSUBPART$" TO "cmid_user"; COMMIT; /* For combined load jobs:*/ GRANT EXECUTE ON DBMS_FLASHBACK TO "cmid_user"; /*To provide read access to the Amazon RDS online and archived redo logs:*/ GRANT READ ON DIRECTORY ONLINELOG_DIR TO "cmid_user"; GRANT READ ON DIRECTORY ARCHIVELOG_DIR TO "cmid_user";
さらに、マスターユーザーとしてログインし、次のAmazon RDSプロシージャを実行して、さらにいくつかのオブジェクトに対するSELECT特権を付与します。
begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'DBA_TABLES', p_grantee => 'cmid_user', p_privilege => 'SELECT'); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'DBA_OBJECTS', p_grantee => 'cmid_user', p_privilege => 'SELECT'); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'DBA_OBJECT_TABLES', p_grantee => 'cmid_user', p_privilege => 'SELECT'); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'DBA_VIEWS', p_grantee => 'cmid_user', p_privilege => 'SELECT'); end; / /begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'DBA_USERS', p_grantee => 'cmid_user', p_privilege => 'SELECT', p_grant_option => false); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'V_$CONTAINERS', p_grantee => 'cmid_user', p_privilege => 'SELECT'); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'V_$PARAMETER', p_grantee => 'cmid_user', p_privilege => 'SELECT'); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'V_$SPPARAMETER', p_grantee => 'cmid_user', p_privilege => 'SELECT'); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'V_$STANDBY_LOG', p_grantee => 'cmid_user', p_privilege => 'SELECT'); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'V_$VERSION', p_grantee => 'cmid_user', p_privilege => 'SELECT'); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'ALL_CONS_COLUMNS', p_grantee => 'cmid_user', p_privilege => 'SELECT'); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'ALL_CONSTRAINTS', p_grantee => 'cmid_user', p_privilege => 'SELECT'); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'ALL_OBJECTS', p_grantee => 'cmid_user', p_privilege => 'SELECT'); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'ALL_TABLES', p_grantee => 'cmid_user', p_privilege => 'SELECT', p_grant_option => false); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'ALL_TAB_PARTITIONS', p_grantee => 'cmid_user', p_privilege => 'SELECT', p_grant_option => false); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'ALL_USERS', p_grantee => 'cmid_user', p_privilege => 'SELECT'); end; / begin rdsadmin.rd 'ALL_TABLES', p_grantee => 'sadmin_util.grant_sys_object( p_obj_name => 'cmid_user', p_privilege => 'SELECT', p_grant_option => false); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'ALL_TAB_PARTITIONS', p_grantee => 'cmid_user', p_privilege => 'SELECT', p_grant_option => false); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'ATTRCOL$', p_grantee => 'cmid_user', p_privilege => 'SELECT'); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'CCOL$', p_grantee => 'cmid_user', p_privilege => 'SELECT'); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'COLTYPE$', p_grantee => 'cmid_user', p_privilege => 'SELECT'); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'INDPART$', p_grantee => 'cmid_user', p_privilege => 'SELECT'); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'IDNSEQ$', p_grantee => 'cmid_user', p_privilege => 'SELECT'); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'CDEF$', p_grantee => 'cmid_user', p_privilege => 'SELECT'); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'RECYCLEBIN$', p_grantee => 'cmid_user', p_privilege => 'SELECT'); end; / /* Only required for RDS21 which supports PDB*/ begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'V_$PDBS', p_grantee => 'cmid_user', p_privilege => 'SELECT'); end; /
OracleファイルシステムのOracle REDOログへのBFILEアクセスの設定 REDOログをローカルのOracleサーバーファイルシステムに保存し、BFILEでOracleディレクトリオブジェクトを使用してログにアクセスする場合は、次の設定タスクを実行します。
BFILEアクセスに固有ではない、次の通常のOracleソース準備タスクを完了します。
• アプリケーション取り込みとレプリケーション でOracle Call Interface(OCI)を使用してOracleソースデータベースと通信するためにSecure Agentが実行されるLinuxまたはWindowsシステムで、ORACLE_HOME環境変数を定義します。• アプリケーション取り込みとレプリケーション ユーザーに、アプリケーション取り込みとレプリケーション の増分ロード処理に必要なOracle権限があることを確認してください。詳細については、Oracle特権 を参照してください。• OracleデータベースのARCHIVELOGモードを有効にします。• アーカイブログの格納先を定義します。注: BFILEアクセスの場合は、特定のアーカイブログの格納先ディレクトリを使用します。Oracle USE_DB_RECOVERY_FILE_DESTキーワードを使用して、アーカイブログを日付別に高速リカバリ領域(FRA)に保存しないでください。
• ソースデータベースでOracleの最小限のグローバルサプリメンタルロギングを有効にします。• Oracleソーステーブルにプライマリキーがある場合は、すべてのプライマリキーカラムに対してサプリメンタルロギングが有効になっていることを確認してください。プライマリキーのないソーステーブルの場合、変更データがキャプチャされるすべてのカラムでサプリメンタルロギングが有効になっていることを確認してください。注: アプリケーション取り込みとレプリケーションタスクを作成するときに、選択したソーステーブルのすべてのカラムまたはプライマリキーカラムのみのサプリメンタルロギングを実装するスクリプトを生成するオプションがあります。
• Oracle MAX_STRING_SIZE初期化パラメータがEXTENDEDに設定されていない ことを確認してください。EXTENDEDに設定されている場合、アプリケーション取り込みとレプリケーション は、大きな(拡張サイズ)VARCHAR2、NVARCHAR2、またはRAWカラムで定義されたカラムを含むテーブルの挿入と更新をレプリケートできません。さらに、BFILEアクセスの場合は、次の手順を実行します。
1 Oracleデータベースに、Oracleサーバーファイルシステム内のオンラインREDOログとアーカイブREDOログの場所をクエリします。次のサンプルクエリを使用できます。オンラインREDOログの場所を取得するには、次の手順を実行します。
select * from v$logfile;
ログのアーカイブ先を取得するには、次の手順を実行します。
select dest_id, dest_name, destination, status from V$ARCHIVE_DEST;
2 手順1で取得したログファイルの場所を指すONLINELOG_DIRおよびARCHIVELOG_DIRディレクトリオブジェクトを作成します。Oracleディレクトリオブジェクトは、アクセスするログファイルが配置されているOracleサーバーファイルシステム上の物理ディレクトリの論理エイリアス名を指定します。以下に例を示します。CREATE DIRECTORY ONLINELOG_DIR AS '/u01/oracle/data'; CREATE DIRECTORY ARCHIVELOG_DIR AS '/u01/oracle/archivedata';
注: Oracle Database Ingestion接続でリーダーモードを[ARCHIVEONLY]に設定して、アーカイブログからのみ変更を読み取る場合は、ONLINELOG_DIRディレクトリまたはディレクトリオブジェクトを作成する必要はありません。
Oracleデータベースは、指定したディレクトリが存在することを確認しません。Oracleファイルシステムに存在する有効なディレクトリを指定していることを確認してください。
3 ディレクトリオブジェクトがREDOログの正しいファイルシステムパスで作成されたことを確認するには、次のようなselect文を発行します。select * from all_directories; OWNER DIRECTORY_NAME DIRECTORY_PATH -------- ------------------- ---------------------------------- SYS ARCHIVELOG_DIR /u01/oracle/data/JO112DTL SYS ONLINELOG_DIR /u01/oracle/data/JO112DTL
4 Oracleデータベース取り込み接続プロパティで指定されたアプリケーション取り込みとレプリケーション ユーザーに、ONLINELOG_DIRおよびARCHIVELOG_DIRディレクトリオブジェクトへの読み取りおよび書き込みアクセスを付与します。以下に例を示します。grant read on directory "ARCHIVELOG_DIR" to "cmid_user"; grant read on directory "ONLINELOG_DIR" to "cmid_user";
5 Oracle Database Ingestion接続プロパティで、[BFILEアクセス] チェックボックスを選択します。Oracleアーカイブログの保持に関する考慮事項 アプリケーション取り込みとレプリケーション の増分ロードジョブ、および初期ロードジョブと増分ロードジョブの組み合わせは、OracleオンラインREDOログおよびアーカイブREDOログのトランザクションデータにアクセスできる必要があります。ログを利用できない場合、アプリケーション取り込みとレプリケーション ジョブはエラーで終了します。
通常、Oracle DBAは、組織の特定のビジネスニーズとOracle環境に基づいて、アーカイブログの保持期間を設定します。ログを再起動処理に使用できるように、変更キャプチャが停止または潜在的な状態になると予想される最長期間プラス約1時間にわたって、ソースアーカイブログが保持されていることを確認してください。
環境内の現在のログ保持ポリシーが、アプリケーション取り込みとレプリケーション の変更キャプチャ処理に対応するのに十分かどうかを判断するには、次の要素を考慮してください。
ログのキャプチャ処理を再開する必要があるときにアーカイブログを使用できない場合は、DBAに、アーカイブログを復元して必要に応じて保存期間を変更するよう依頼してください。それ以外の場合は、別の初期ロードを実行してターゲットを再マテリアライズしてから、増分変更データ処理を再度開始してください。ただし、この場合、一部の変更が失われる可能性があります。
スキーマ変更処理 一部のデータオブジェクトタイプに対して行われたスキーマ変更をSAP Mass Ingestionコネクタで処理する方法を選択できます。
SAP S4 HANAソースのスキーマ変更処理 デフォルトでは、スキーマに変更を加えると、SAP Mass Ingestionコネクタによってスキーマの変更が検出され、警告メッセージが生成されます。 注: スキーマ検出は、カスタムプロパティを使用して無効にできます。詳細については、Informaticaグローバルカスタマサポートにお問い合わせください。
スキーマの変更には、データオブジェクトに対する次の1つ以上の変更が含まれます。
- フィールドの追加- フィールドの削除- フィールドの名前の変更- フィールドのデータ型、精度、またはスケールの更新スキーマの変更は、次の条件に基づいて処理できます。
- 増分ロードジョブが[稼働中] ステータスのときにデータオブジェクトにスキーマ変更を行うと、SAP Mass Ingestionコネクタは警告メッセージを生成します。警告が表示されると、データオブジェクトの処理が停止し、変更されたデータオブジェクトを使用して新しい初期ジョブを作成する必要があります。初期ジョブが正常に完了した後、新しい増分ジョブを実行します。- 増分ロードジョブが[停止] ステータスのときにデータオブジェクトにスキーマ変更を行った場合は、変更が行われたデータオブジェクトのトリガとシャドウテーブルを削除する必要があります。SAPのユーザーインタフェースを使用してデータオブジェクトをアクティブ化し、更新されたデータオブジェクトを使用して新しい初期ジョブを作成します。初期ジョブが正常に完了したら、新しい増分ジョブを実行します。注: データの損失を防ぐために、初期ジョブが正常に完了した直後に増分ジョブを実行します。
SAP ECCソースのスキーマ変更処理 データオブジェクトにスキーマ変更を行うと、データオブジェクトの処理が停止し、SAP Mass Ingestionコネクタによって警告メッセージが生成されます。データオブジェクトに対するそれ以降の変更はキャプチャされません。 スキーマの変更には、データオブジェクトに対する次の1つ以上の変更が含まれます。
- フィールドの追加- フィールドの削除- フィールドの名前の変更- フィールドのデータ型、精度、またはスケールの更新スキーマの変更は、次の条件に基づいて処理できます。
- 組み合わせロードジョブのデータオブジェクトにスキーマ変更を行うと、SAP Mass Ingestionコネクタによって警告メッセージが生成されます。その後、データオブジェクトを再同期できます。- 増分ロードジョブのデータオブジェクトにスキーマ変更を行った場合は、変更されたデータオブジェクトを使用して初期ジョブを作成し、実行する必要があります。初期ジョブが正常に完了したら、変更されたデータオブジェクトを使用して新しい増分ジョブを実行します。注: データの損失を防ぐために、初期ジョブが正常に完了した直後に増分ジョブを実行します。
SAP OData V2ソースのガイドライン 増分ロードタスクと組み合わせロードタスクの場合、タスクのソーステーブル選択には、ODataサービス内で差分抽出が有効になっているSAP ODataエンティティのみが表示されます。それらに関連付けられた差分リンクテーブルは表示されません。SAP管理者は、ODataサービスがSAP Gateway Builder(SEGW)で正しく設定されていて、これらのテーブルに対して差分抽出が有効になっていることを確認する必要があります。
初期ロードタスクにはそのような制限はなく、関連するすべてのSAP ODataテーブルが選択対象に表示されます。
ODPを使用したODataサービスの作成と設定の詳細については、SAPドキュメントの「
ODP-based data extraction through OData 」を参照してください。
ServiceNowソースのガイドライン ServiceNowソースを使用する場合は、次のガイドラインを考慮してください。
Workdayソースのガイドライン Workdayソースを使用する場合は、次のガイドラインを考慮してください。
アプリケーション取り込みとレプリケーション には、次のWebサービスを介してWorkdayデータを抽出するオプションがあります。
• Workday Web Services : SOAP APIを介してWorkdayデータへのアクセスを実現します。• Workday Report-as-a-Service(RaaS) : カスタムレポートを介して、カスタムオブジェクトおよびカスタムフィールドのデータへのアクセスを実現します。必要なWebサービスを選択するためのオプションが、アプリケーション取り込みとレプリケーション タスクウィザードの[ソース] タブに表示されます。
Workday Web Servicesのガイドライン • Workday Web Servicesを使用して、Workday Human Capital Management(HCM)のデータを取り込むことができます。アプリケーション取り込みとレプリケーション タスクウィザードの[ソース] タブで、ターゲットにレプリケートするHCMサービスを選択できます。• アプリケーション取り込みとレプリケーション は、名前がGet_ で始まるソース操作のデータのみをレプリケートします。• アプリケーション取り込みとレプリケーション ジョブは、XML構造でソースデータを取得し、そのデータをJSONまたはXML形式の単一オブジェクトとしてターゲットに書き込みます。アプリケーション取り込みとレプリケーション ジョブを設定するときに、タスクウィザードの[ソース] タブで、ターゲットデータの形式を指定できます。ターゲットでは、各レコードに次のフィールドが含まれます。- WID : レコードの一意の識別子またはプライマリキーを格納します。- Data : レコードの内容をJSONまたはXML形式で格納します。• アプリケーション取り込みとレプリケーション は、ソースフィールドの階層構造をターゲットで保持します。• アプリケーション取り込みとレプリケーション は、カスタムオブジェクトに格納されているデータをプロパゲートしません。• アプリケーション取り込みとレプリケーション ジョブが操作をターゲットに取り込むと、操作の名前が次の形式に変更されます: <Service_Name>__<Operation_Name> • Get_Budgest_Pools操作のデータは、Workdayで初期ロードジョブでのレプリケートが許可されない場合があります。• WorkdayソースとMicrosoft Azure Data Lake Storage Gen2ターゲット用に設定された初期ロードジョブは、レコードが含まれていない次の操作に対してスキーマファイルを生成しません。- Benefits_Administration__Get_ACA_1095-C_Forms_Data- Compensation_Review__Get_Budget_Pools- Compensation_Review__Get_Employee_Awards- Recruiting__Get_Assess_Candidate- Recruiting__Get_Interview_Feedbacks• Workdayソースの変更データをキャプチャするために増分ロードジョブを初めて実行するとき、ジョブは、アプリケーション取り込みとレプリケーション タスクで指定されている日時以降に作成された変更レコードのみを取得してロードします。日付と時刻は、アプリケーション取り込みとレプリケーション タスクウィザードでソースを設定するときに指定できます。ただし、停止または強制終了されたジョブを再開すると、ジョブは最後に中断したところから変更データのプロパゲートを開始します。• 増分ロードジョブは、ソースで実行された挿入と更新操作を自動的にキャプチャできます。ターゲットで更新/挿入操作を実行して、ソース データで実行された挿入と更新操作をレプリケートします。更新/挿入操作はソーススキーマに加えられたすべての変更を自動的にレプリケートするため、アプリケーション取り込みとレプリケーション タスクウィザードは、Workdayソースのスキーマドリフトオプションを提供していません。• アプリケーション取り込みとレプリケーション は、Workdayの次のサービスおよび操作の変更データをキャプチャできます。サービス
操作
Human_Resources
Get_Job_Profiles
Get_Organizations
Get_Workers
Recruiting
Get_Evergreen_Requisitions
Get_Job_Requisitions
Get_Organizations
Get_Positions
Staffing
Get_Organizations
Get_Positions
Get_Workers
Workday RaaSのガイドライン • Workday RaaSは、初期ロードタスクでのみ使用できます。• アプリケーション取り込みとレプリケーション タスクウィザードの[ソース] タブで、1つ以上のカスタムレポートからデータを読み取ることを選択できます。複数のレポートを抽出する場合は、Secure AgentホストでCSVファイルを作成し、ファイルの最初のカラムにレポートの名前をリストします。• Workday RaaSを使用するように設定されたアプリケーション取り込みとレプリケーション ジョブは、ソーススキーマに加えられた変更を検出できません。Zendeskソースのガイドライン Zendeskソースを使用する場合は、次のガイドラインを考慮してください。
• Zendeskソースの変更データをキャプチャするために増分ロードジョブを初めて実行するとき、ジョブは、関連付けられた取り込みタスクで指定されている日時以降に作成された変更レコードのみを取得してロードします。日付と時刻は、アプリケーション取り込みとレプリケーション タスクウィザードでソースを設定するときに指定できます。ただし、停止または強制終了されたジョブを再開すると、ジョブは最後に中断したところから変更データのプロパゲートを開始します。• Zendeskソース用に構成された増分ロードジョブ、および初期ロードジョブと増分ロードジョブの組み合わせは、ソーススキーマに加えられた変更を検出およびレプリケートしません。• ソースレコードに複数のカスタムフィールドが含まれている場合、アプリケーション取り込みとレプリケーション ジョブは、すべてのカスタムフィールドのデータをJSONオブジェクトとしてターゲットテーブルの単一のカラムに格納します。• アプリケーション取り込みとレプリケーション ジョブは、次のZendeskオブジェクトに存在するカスタムフィールドからデータを取得できます。- Organizations- Requests- Tickets- Users• 初期ロードジョブは、次のZendeskフィールドに保存されているデータのNULL値をプロパゲートします。- Support Addressesオブジェクトのdns resultsフィールド。- Target Failuresオブジェクトのraw requestフィールドとraw responseフィールド。- Satisfactory Ratingsオブジェクトのreason codeフィールド。- Sharing AgreementsオブジェクトのURLフィールド。• 初期ロードジョブは、次のZendeskオブジェクトに保存されているデータをプロパゲートしません。- Attachments- Channel Framework- Dynamic Content Item Variants- End users- Incremental Skill-based Routing- NPS® Invitations- NPS® Recipients- NPS® Responses- OAuth Tokens for Grant Types- Push Notification Devices- Search- Side Conversations- Side Conversation Attachment- Side Conversation Events- Skill-based Routing- Ticket Comments- Ticket Import- User Identities- User Passwords• アプリケーション取り込みとレプリケーション は、次のZendesk標準オブジェクトの変更データを取得できます。- NPS Recipients- Organizations- Side Conversation Events- Tickets- Tickets Metric Events- Users• 増分ロードジョブは、次のオブジェクトに保存されているレコードの削除を取得できます。- Organizations- Tickets- Users• アプリケーション取り込みとレプリケーション は、タイプObjectのソースフィールドの階層構造をレプリケートしません。ターゲットテーブルでは、すべてのフィールドが同じ階層レベルにあります。アプリケーション取り込みとレプリケーション ジョブが、複数レベルの階層を持つオブジェクトフィールドをレプリケートする場合、ジョブは対応する同じ階層レベルのカラムを作成します。