キー付きデータページ
データページは、データベースやウェブサービスなどのデータストアに問い合わせを行うのではなく、情報をメモリにキャッシュすることで、Pega Platform™アプリケーションのパフォーマンスを向上させます。 データページは通常、項目一覧または単一の項目に関する情報のいずれかを返します。
データページを多用するアプリケーションでは、データソースとのやり取りが頻繁に行われるため、パフォーマンスに問題が生じることがあります。 例えば、ある自動車販売店では、顧客が現在在庫のある車両を閲覧したり、在庫内の車両の詳細を確認したりできるアプリケーションを提供しています。 この販売店は、顧客が在庫内の自動車を閲覧することにより、在庫のシステムオブレコードに毎日何千件ものリクエストが送られていることに気づきます。 このような繰り返し行われるクエリーは、販売店のウェブサイト上の車両情報へのアクセスに影響を及ぼし、潜在顧客のユーザーエクスペリエンスに影響を与えます。
リスト構造データページの特定の項目に即時アクセスできるようにするには、キーアクセスを有効にします。 キーアクセスを使用することで、項目のリストを返すページと、1項目に関する情報を返すページという2種類の別々のデータページを維持する必要がなくなります。 アプリケーション用のデータを取得する際に、キーデータページを使用すると、システムオブレコードとのやり取りの回数が減り、処理が効率的になります。
前述の自動車販売店の例では、在庫内の車両を一覧にしたデータページへのキーアクセスを設定し、在庫システムへの問い合わせ回数を減らすことができます。 販売店は、その日の最初の顧客からのリクエストで、現在の在庫をデータページに読み込むようにキーデータページを設定します。 顧客が他の車両を選択すると、データは在庫システムではなく、事前にロードされたデータページから返されるため、システムオブレコードへの問い合わせ回数を減らし、ユーザーエクスペリエンスを向上させることができます。
下図の中央にある縦線をスライドさせると、キーデータページとキー設定無しのデータページで、データベースのクエリー数がどのように異なるかを比較することができます。
次の問題に答えて、理解度をチェックしましょう。
キーデータページの使用例
データページでキーデータアクセスを使用するかどうかを決定する際には、アプリケーションのパフォーマンスとデータ管理のニーズを考慮してください。 データページをキー設定にするしないかは、データページの情報が古くなったと判断されるまでに発生するリクエストの数によって決まります。 以下の2件の使用例について考えてみてください。
使用例1:キー設定なし
保険契約の見積もりと保険証券の発行を行うケースタイプでは、システムオブレコードから顧客情報を入力する必要があります。 このケースタイプは1件の顧客レコードにのみアクセスし、顧客レコードの情報はケースごとに1回だけアクセスされます。
この例では、顧客情報へのアクセス頻度は低く、ケースタイプでは顧客情報を取得するためにサーバーに一度だけアクセスする必要があります。 各ケースは1人の顧客を対象にしているため、他の顧客に関する情報はケースには関係ありません。 このような使用例では、キーデータページを使用しても、パフォーマンスの向上は見込めません。
使用例2:キー設定あり
あるケータリング業者は、顧客がイベント用のメニューや食事メニューをカスタマイズできるケースタイプを提供しています。 このケースタイプで、顧客は複数のステップを経てメニューを選択します。 各ステップでは、前菜、メイン料理、テーブルサイズ、椅子の種類など、メニューやダイニングオプションの特定の部分に焦点を当てています。 価格や在庫情報は、多いときには毎日変更されます。
この例では、ケースごとに頻繁にデータがリクエストされることが予想され、リクエスト間でソースデータが変更されない傾向があります。 この使用例では、キーデータページを使用することで、1つのケースに対するシステムオブレコードとのやり取りの回数を減らし、パフォーマンスを向上させることができます。
キーデータページの設定
キーアクセスは、ページの範囲、モード、および構造に関する特定の要件を満たすデータページに対してのみ設定できます。
次の操作で、「+」アイコンをクリックして、キーアクセスをサポートするデータページの設定方法を確認してください。