注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。
SAP Landscape Transformation Replication Server(SLT)は、データベーストリガーを使用して変更データキャプチャ(CDC)を実行するデータレプリケーションツールです。これにより、ソース SAP システムからターゲットシステムへ効率的にデータをレプリケーションできます。
SLT と Palantir Foundry Connector 2.0 for SAP Applications(「コネクター」)を連携するように設定すると、SAP から Foundry への CDC レプリケーションが可能になります。
このセットアップでは、専用のコンテキスト(キューエイリアス)を持つ SLT 設定を作成します。
SAP テーブルを Foundry にレプリケーションするには、オブジェクトごとに Foundry データセット同期を設定します。データセット同期を設定すると、SLT が対象の SAP オブジェクトにトリガーを設定し、SAP 内のオブジェクトへの変更がキャプチャされ、ODP(Operational Data Provisioning)シナリオ用に SLT サーバーのキューに保存されます。Foundry は事前に設定したスケジュールでこのキューをポーリングし、これらの変更を Foundry データセットに同期します。バージョン 2.34(SP34)以降では、コネクターは OData 経由の ODP ベースのデータ抽出 ↗を使用して ODP とやり取りします。
SAP オブジェクトに対して Foundry データセット同期を初めて設定すると、SLT はフルロードを実行します。以降のトリガーでは、オブジェクトの変更のみを取得します。SLT キューのパージは SLT が管理します。
また、CDC モード(インクリメンタル(差分連携))で動作させる代わりに、特定の SAP オブジェクトのフルロード(スナップショット)を SLT が実行するように Foundry データセット同期を設定することもできます。
このガイドでは、コネクターがインスタンスにすでにインストールされていることを前提としています。コネクターのインストール手順を確認できます。
次の SAP ノートが SLT システムに適用されていることを確認してください。
1660374 – フェッチの待機時間が不十分なためタイムアウトが発生する2215583 – ODQ からの抽出中にデータ内容が移動したことによるエラー次の SAP ノートを読み、該当する場合は関連する手順を実施したことを確認してください。
2697016 – CNV_IUUC_DB_CONN131 でテーブルをレプリケーションできない - ほかの設定でトリガー設定が異なる - SAP Landscape Transformation Replication Server。2787584 - ユーザーに SAP_ALL が付与されているにもかかわらず LTRC で認可の問題が発生する - SLT3032108 - 1:N レプリケーションはサポートされていますか? - SLTSAP SLT シナリオでは、古い DMIS バージョンの場合、テーブルに対して 1:4 の登録(最大4コンシューマー)が可能です。DMIS 2018 SP4 以降では、SAP の新しい CDC 機能が有効になり、許可されるコンシューマー数の制限がなくなりました。
コネクターのバージョン 2.34 では PALODATA コンポーネントが導入され、SAP が推奨する ↗ OData API を使用して同期を設定できます。
OData が比較的新しい技術であるため、このコンポーネントでは SAP_BASIS バージョンの前提条件が 7.50 SP09 以降に引き上げられています。 また、次の SAP ノートを読み、該当する場合は適用したことを確認してください。
2854759 - OData V2 経由の抽出時の日付フィールドの処理2878969 - ODP 抽出の ODATA 関数インポート名が切り詰められる3062232 - ODP ODATA V2 - ポインターの最後の skiptoken が deltatoken を返さない3023446 - oData version2 を使用した ODP: デルタリクエストで odata.maxpagesize が無視される2888122 - ソースシステムの最新のデルタリクエストが削除されると ODATA ODP デルタを実行できないコネクターを SLT と組み合わせて使用すると、SAP システムのリソースを大量に消費する場合があります。そのため、レプリケーションを開始する前に、SLT に関する SAP 公式のサイジングドキュメントを確認してください。SAP 環境からのデータ抽出を開始する前に、SLT サーバーに空きバックグラウンドプロセスおよび空きダイアログプロセスがあることを確認してください(SLT とコネクターが異なるサーバーにある場合は、コネクターがインストールされている SAP アプリケーションサーバーでも確認してください)。
SM50 に移動し、空きバックグラウンドプロセスおよび空きダイアログプロセスがあるかを確認します。空きプロセスがない場合、Foundry へのデータ転送に失敗します。ステップ2a と2b は、いずれか一方のみが必要です。ステップ2a に従い、Post-Installation Wizard を使用することを推奨します。ステップ3と4は、リモート SLT シナリオの場合にのみ必要です。
SLT が SAP ソースシステムからデータをレプリケーションするために使用する Remote Function Call (RFC) 接続を作成するには、RFC 接続を作成するを参照してください。
コネクターの Post-Installation Wizard を使用して SLT 設定を作成するには、トランザクションコード /n/PALANTIR/POST_INST を使用し、ステップ7の SLT 設定を作成のみを有効にします。SLT 設定のパラメーターは次のとおりです。
| パラメーター | 説明 |
|---|---|
| コンテキスト名 | 一意の設定名 |
| コンテキストの説明 | SAP トランザクション LTRC および Foundry でユーザーに表示されるコンテキストの説明 |
| データ転送ジョブ | データ転送ジョブの数 |
| 初期読み込みジョブ | 初期読み込み用のジョブの数 |
| 計算ジョブ | 初期読み込み範囲の計算用の計算ジョブの数 |
| 権限グループ | デフォルトでは権限グループなし |
| ソース RFC 宛先 | 論理宛先 - ソースシステムの RFC 宛先名 |
| 単一クライアントから読み取り | 単一クライアントからデータを読み取る場合は、このオプションを選択します |
| 複数使用を許可 | 複数使用を許可する場合は、このオプションを選択します |
ステップ2a と2b は、いずれか一方のみが必要です。
LTRC を使用します。この設定を有効にすると、複数のフォロワーがソースシステムからレプリケーションされたデータを取得できるようになります。この設定は、設定の作成後には変更できません。フォロワーが1つの場合、複数使用を許可は影響しないため、最初の設定時に有効にすることを推奨します。後から複数使用を有効にするには、設定を削除して新しい設定を作成する必要があります。
2372636 - Cannot replicate data when different trigger options exist - SLT を確認してください。NONE に設定します。LTRC の SLT メイン画面に戻り、ODP シナリオ用の BAdI 実装が SLT システムでアクティブになっていることを確認してください。設定を確認するには、設定名を選択して設定を開き、エキスパート機能タブをクリックします。BAdI 実装がアクティブになっていることを確認してください。アクティブになっていない場合、ODP は正常に機能しません。SA38 トランザクションに移動します。SAP OSS Note 1660374 - Fetch does not wait long enough; timeout に記載されているとおり、プログラム SAP_RSADMIN_MAINTAIN を実行してパラメーター RODPS_FETCH_TIMEOUT を設定します。値は秒単位で指定します。コネクターは、要件を満たす別の SAP インスタンスにデプロイできます。この場合、コネクターは RFC 接続を介して SLT サーバーと通信します。そのため、通信チャネルを有効にするには RFC 接続が必要です。
セットアップ手順については、RFC 接続ガイドを参照してください。
SLT とコネクターが別々のインスタンスにある場合は、次の追加設定手順に従ってください。
/n/PALANTIR/PARAM を開きます。SLTRFC_CONFIGURATIONRFC configuration name created in the beginning of this section (eg, SLT_SERVER_RFC)設定テーブルにこれらのパラメーターが設定されていない場合、デフォルトは次の値です。
コネクターは、SAP の ODP フレームワークを使用してデータを Foundry にレプリケーションします。ODP は、ソースシステムから ODP キュー(テーブル名 ODQDATA_F)にデータをレプリケーションします。データは ODQ にステージングされ、ODP キューにデータが転送されると、コネクターは要求されたデータをページ単位で /PALANTIR/PAG_01 テーブルと /PALANTIR/PAG_02 テーブルに格納し始めます。すべてのページが Foundry に正常に転送されると、Foundry はテーブルを整理するためにクローズリクエストを送信します。このクローズリクエストにより、/PALANTIR/PAG* テーブルのエントリーが削除されます。
初期同期(履歴同期や一括同期など)を実行する場合は、データベースのサイジングを見直し、必要な容量を慎重に検討してください。容量が不足すると、SLT レプリケーションジョブや Foundry への転送に失敗する可能性があるため、まずレプリケーションするテーブルに基づいてデータベースのサイジングを準備してください。
SAP の既知の問題への対処に使用するパラメーターが、ほかに2個あります。
問題:SAP SLT サーバーは、日付/時刻フィールドの正確なフィールド長を提供しません。この問題は SAP Note で修正されています。ただし、データ型の長さに関する問題が発生した場合は、SAP Note を適用するまで、次のパラメーターを設定できます。
SLTSLT_DATA_XXX(XXX はフィールドの技術名を指します)Length of the data typeSAP_BASIS の以前のサポートパッケージ (SP 14) では、SAP によって DATS フィールドが16文字に設定されていました。しかし、DATS フィールドは8文字(YYYYMMDD)である必要があります。TIMS フィールドも SAP によって16文字に設定されていましたが、TIMS データは6文字(HHMMSS)です。
この問題に対処するには、次のパラメーターを設定します。
| パラメーターID | パラメーター名 | パラメーター値 |
|---|---|---|
| SLT | SLT_DATA_DATS | 8 |
| SLT | SLT_DATA_TIMS | 6 |
問題:SAP には、数量と金額に使用する特定のデータ型があります。数量データ型 QUAN は、デフォルトで小数点以下3桁です。コネクターが QUAN データ型を含むデータを取得しようとすると、これらの QUAN データ型に対して小数点以下3桁が自動的に作成されます。ただし、QUAN データ型を含む SAP テーブルの一部では、小数点以下の桁数が異なっていても、小数点以下3桁として Foundry に送信されます。
この問題に対処するには、次のパラメーターを使用します。
SLTSLT_DTYPE_XXX(XXX はフィールドのデータ型を指します)Data Type Name which will be taken Into accountQUAN データ型を Decimal データ型に変更するには、次のようにパラメーターを設定します。
| パラメーターID | パラメーター名 | パラメーター値 |
|---|---|---|
| SLT | SLT_DTYPE_QUAN | DEC |