リモートテーブル
Now Platformをサードパーティソースまたは別のインスタンスに接続して、外部データを取得して必要に応じてメモリにキャッシュできるようにします。
リストまたはフォームで外部データを表示して、標準の Glide スクリプトで処理することができます。また、標準の内部テーブルの場合と同様に、データをグループ化、ソート、集計、フィルタリングできます。リモートテーブルの編集が有効になっている場合は、インスタンス上のリモートテーブルから外部ソースにデータを挿入、更新、削除できます。
リモートテーブルコンポーネント
- リモートテーブル
- リモートテーブルを作成して、外部ソースから取得するデータのスキーマを記述します。
テーブル定義は Now Platform にありますが、その行または外部レコードはメモリ内にあります。リモートテーブルは、標準の内部テーブルを作成する方法と同じ方法で作成します。内部テーブルの場合と同じように、列とコントロールを定義してアプリケーションアクセスを指定します。内部テーブルとは異なり、リモートテーブルはNow Platformデータベースからレコードを取得しない。外部データソースに対して関連する クエリ スクリプトを実行してレコードを取得します。
リモートテーブル作成の詳細については、「リモートテーブルの作成」を参照してください。
- スクリプト定義
- スクリプト定義を作成しリモートテーブルに関連付けます。query スクリプトを使用して取得した外部データはメモリにキャッシュできます。また、このデータのキャッシュ方法と、メモリにデータをキャッシュする期間を指定できます。リモートテーブルの外部データを含むリストを更新するたびに、関連付けられたクエリ スクリプトが再実行されます編集可能なリモートテーブルでは、クエリスクリプト定義に加えて、挿入、更新、および削除スクリプト定義を作成できます。
スクリプト定義についてとスクリプト定義をリモートテーブルに関連付ける方法の詳細については、「リモートテーブルのスクリプト定義の作成」を参照してください。
リモートテーブルの仕組み
リモートテーブルを使用すると、外部ソースから、または REST サービスあるいは SOAP サービスを使用して別のインスタンスからデータを取得できます。外部データは読み取り専用モードでメモリ内に存在するため、Now Platform 内でデータは一時的なものになります。その後、外部データをインポートまたは保存することなく、外部データを表示および 更新 できます。
内部に保存されたデータを表示する場合と同じ方法で、リストまたはフォームに外部データを表示します。このデータを操作するには、Now Platform で標準の Glide レコード、ビジネスルール、リモート API、スクリプト、テーブル参照フィールド、サービス、開発ツールを使用します。 リモートテーブルの編集が有効になっている場合は、インスタンス上のリモートテーブルから外部ソースにデータを挿入、更新、削除できます。
Now Platform 内の外部データライフサイクル
- リモートテーブルに関連付けられているスクリプトを実行すると、リストまたはフォームが表示されている限り、取得されたデータはメモリ内に保持されます。リストまたはフォームを閉じると、その外部データはメモリから消去されます。次回このリモートテーブルで外部データを使用または表示するときに、外部システムからメモリが再取得されます。
- ただし、スクリプトのキャッシュパラメーターを定義している場合、外部データは指定されたキャッシュ期間の間、メモリにキャッシュされたままになります。
たとえば、外部データを 300 秒間キャッシュするように指定した場合、外部データは 5 分間メモリにキャッシュされたままになります。その時間が経過すると、キャッシュされたデータはメモリから消去されます。次回このリモートテーブルで外部データを使用または表示するときに、外部システムからキャッシュがリフレッシュされます。
リモートテーブルの実用的なアプリケーション
次の場合に、エンタープライズでリモートテーブルを設定して使用します。
- 外部データを Now Platformに保存せずに一時的に使用するためにフェッチする必要がある。たとえば、ユーザーがログインしたときに ホームページ に表示される天気関連のデータをフェッチするリモートテーブルを作成できます。次に、ユーザーの場所に基づいてサードパーティの気象ソースからこのデータを取得する、関連する クエリ スクリプト定義を作成します。
- 外部のカスタマーリレーションシップマネジメント (CRM) アプリケーションに保存されている顧客の詳細を取得して、エージェントワークスペース などの カスタマーサービス管理 (CSM) 機能で表示する必要がある。 注:カスタマーサービス管理 (CSM) のデータ検索の詳細については、「CSM のサードパーティ統合」を参照してください。
- HR サービスデリバリ (HRSD) 機能で使用するために、Workday や SAP SuccessFactors などの人材管理 (HCM) アプリケーションから人事データを取得して表示する必要がある。
事後フィルタリングとソート
リモートテーブルスクリプトを実行すると、テーブルに行が追加された後、クエリ条件の事後フィルタリングとソートが適用されます。これらの適用条件は、スクリプトが処理する 処理しない その他の必要なクエリをサポートします。事後フィルタリングとソートを適用すると、リモートテーブルクエリは標準の内部テーブルクエリと同様に機能します。
リモートテーブルスクリプトを作成するときは、通常、スクリプト内で最も頻度が高く拡張性の高いクエリを処理します。クエリの事後フィルタリングとソートには時間がかかることがあります。可能性があります インスタンスのパフォーマンスに悪影響を及ぼします。事後フィルタリングやソートに時間がかからないように、小さなデータセットを使用してください。
ユースケースに基づいて、外部呼び出しでより絞り込んだクエリを試行するか、より広範なクエリを試行するかを決定します。内部フィルタリングとソートは大きな結果セットで実行するとコストがかかるため、データに追加のフィルタリングが必要ない場合は、より絞り込んだクエリを使用します。より一般的なクエリが小さな結果セットを返し、追加のフィルタリングとソートが必要になる場合は、より拡張的なクエリを使用します。
リモートテーブルと 統合ハブ との違い
- 外部データを一時的にキャッシュする場合はリモートテーブルを使用します。
- ワークフロースタジオ を含むより高度なインポートおよび変換オプションが必要な場合、またはカスタムの統合を開発する場合は、統合ハブ を使用します。