Skip to main content

Pegaのデータストレージ

Pega Platform™は、ケースが処理されると複数のデータベーステーブルにデータを保存します。 システムはPega Platformクラスを使用してデータを整理し、適切なテーブルに保存します。 レポートを作成する際、Pega PlatformのレポートツールがPega Platformのクラス編成を使用して、これらのテーブルから情報を見つけて取得します。 効率的なデータ編成とアクセスにより、重要な戦略的意思決定をサポートするレポートを作成することができます。

Database Class Mappings tab

例えば、マネージャーは、過去3四半期の間に、どのカスタマーサービスの担当者(CSR)が最も多くのケースを解決したかを知りたいと思う場合があるかもしれません。 このレポートでは、ケース情報と過去の処理情報を組み合わせる必要があります。 これらの情報は、別々のテーブルに格納されている場合があります。

次のビデオでは、Pega Platformの柔軟なデータモデルが、レポート要件に合わせて迅速に情報を生成するのに役立つことを紹介しています。

クラスマッピングとデータベーステーブル

ケースタイプなどの具体的なインスタンスを持つPega Platformのクラスは、データベースのテーブルにマッピングすることができます。 例えば、ユーザーがケースを作成すると、システムはケースにIDを割り当て、その値をデータベーステーブルに個別の行として保存します。 レポートを作成する際には、データベーステーブルの行からデータを取得します。 レポートは、1つまたは複数のデータベーステーブルからデータを見つけるために、class mappingsを使用します。 例えば、ユーザーがケースを作成すると、Pega Platformはクラスマッピングを使用して固有のケースIDを割り当て、そのインスタンスを正しいデータベーステーブルに行として保存します。 同様に、ケースを開いたりレポートを実行したりするなど、クラスのインスタンスにアクセスする場合、Pega Platformはクラスマッピングを使用して、関連するデータベーステーブルからデータを取得します。 

レポートを設計する場合、どのテーブルにデータがあるか、データがどのようにマッピングされているかを把握しておく必要があります。 例えば、Candidateケースに関する情報を含むレポートを作成する必要があるとします。 これらのレコードは、ケースのWork-クラスのインスタンスです。 同じレポートに、Candidateケースに関するワークキュー情報も含めることができます。 ワークキューのレコードは、ワークバスケットクラスのインスタンスです。 各タイプの情報のデータは、別々のテーブルに格納されています。 データをレポートにまとめる際には、クラス名を使用して情報が格納されているテーブルを特定します。

補足: 業界用語に合わせるために、Pega Platformでは割り当てルーティングでワークバスケットの代わりにワークキューという用語を使用しています。 クラス構造では、「Data-Admin-Workbasket」というように、ワークバスケッ ト名をそのまま使用しています。
Class Mapping

 

クラスのテーブルへのマッピングに使用されるレコード

Pega Platformでは、クラスがマッピングされているデータベーステーブルを特定するために、DatabaseおよびDatabase Tableの2つのルールタイプを使用します。

  • データベースレコードはPega Platformが特定のデータベースに接続する方法を特定し、Pega Platformがデータベースにアクセスするための接続情報を含みます。 このレコードは、Database Tableレコードのように他の場所で参照できるエイリアスです。 データベースレコードは、データベース接続にJNDIまたはJDBC URLを使用するように設定できます。 デフォルトでは、Pega Platformには常に以下のデータベースレコードが含まれています。
    • PegaRULES – すべてのPega Platformのルールとシステムデータが保存されているデータベースにマッピングします。

    • PegaDATA データやワークインスタンスが保存されているデータベースにマッピングします。

  • Database TableレコードはPega Platformの各クラスに存在し、対応するデータベースとテーブルを特定します。 Pega Platformはこのレコードを使用して、ユーザーがケースやデータインスタンスを作成または更新する際に、どのテーブルにケースデータを書き込むかを特定します。

単一テーブルへの複数クラスのマッピング

複数のクラスのインスタンスを同じテーブルに保存したい場合もあるでしょう。 例えば、Candidate(TGB-HR-Apps-Work-Candidateクラス)、Onboarding(TGB-HR-Apps-Work-Onboardingクラス)、Benefits Enrollment(TGB-HR-Apps-Work-BenefitsEnrollmentクラス)の3つのケースタイプを持つアプリケーションでは、アプリケーション内のすべてのケースのワークステータスをレポートする必要があります。

ケースタイプごとにデータベーステーブルを作成するのではなく、通常は親クラス(TGB-HR-Apps-Work)であるクラスを、class groupwork poolとも呼ばれる)として指定します。 クラスグループでは、システムが類似または関連するケースタイプのインスタンスを単一のデータベーステーブルにまとめて保存します。 「Candidate」などの特定のケースタイプで作成されたレポートは、そのケースタイプのレコードのみを返します。 クラスグループで作成されたレポートは、そのクラスグループに属するクラスのすべてのインスタンスを返します。

補足: Dev Studioでは、class mappingsは、Database Class MappingsのランディングページでConfigure > Data Model > Classes & Properties > Database Class Mappingsに表示されます。

次の例は、クラスグループのデータベーステーブル「pc_TGB_HRApps_Work」にマッピングされる作業クラスを示しています。

Database table example

次の問題に答えて、理解度をチェックしましょう。

一般的に使用されるレポートクラスおよびプロパティ

一般的には、ワーク、アサインメント、履歴の3種類のクラスのプロパティを含むレポートを作成します。 それぞれのレポートは、異なるデータベーステーブルにマッピングされたクラスのプロパティを使用します。

ワークレポート

ケースが作成されると、ワーククラスと継承クラス(パターン、有向)のプロパティを使用して、レポートが作成されます。 よく使用されるプロパティは以下の通りです。

  • pyID – ケースの識別子
  • pyWorkParty – 参加しているワーク班
  • pxUpdateOperator – ケースを最後に更新したユーザー
  • pxUpdateDateTime – 最後にアップデートを行った時間
  • pyStatusWork – ケースのワークステータス

ワークレポートは、適切なワーククラス(TGB-HRApp-Workなど)で作成され、class mappingでは、必要なデータのソースとしてどのデータベーステーブルを使用するかを特定します。 パフォーマンスを最適化するために、レポートで参照されるプロパティは、データベーステーブルの列として公開されなければなりません。 列が公開されているかどうかを確認するには、Database Class Mappingsランディングページを使用し、クラスのColumns値をクリックしてテーブル内のすべての列を表示します。

補足: プロパティの最適化の詳細については、コミュニティトピック「Optimizing properties from the user interface」を参照してください。

アサインメントレポート

アサインメントは、ケースライフサイクルの中で作成され、通常、何らかの形でユーザーとのやり取りが必要となります。 作成されるアサインメントオブジェクトの主な2つのタイプは、ワークリスト(Assign-Worklistクラス)とワークバスケット( Assign-WorkBasketクラス)で、関連するクラスマッピングを使用して、それぞれデータベーステーブル「pc_assign_worklist」および「pc_assign_workbasket」にマッピングされます。 アサインメントが完了すると、アサインメントオブジェクトは削除され、ケースタイプのステップやステージでの処理に従って、別のオブジェクトが作成されます。

アサインメントレポートは、ユーザーのポータルに表示され、ユーザーのワークリストやアクセス権のあるワークキューにあるアサインメントがリスト化されます。 標準的なアサインメントレポート(pyAssignmentWorklistなど)は数多くありますが、これらのレポートは、特定のビジネス要件を満たすために特化されることがよくあります(例:ケースタイプのクラスに結合して関連するケースデータを返すなど)。 ケースタイプのクラスに結合する場合、アサインメントクラス「pxRefObjectKey」は、ケースタイプの「pzInsKey」と一致するように使用されます 

履歴レポート

履歴クラスのプロパティを使用して、パフォーマンスレポートを作成することができます。 例えば、「pxTaskElapsedTime」というプロパティは、アサインメントに費やした合計時間を保存します。 アサインメントが複数のユーザーにルーティングされている場合、プロパティ「pyPerformTaskTime」は、その課題にすべてのユーザーが費やした合計時間を記録します。 「pyPerformTaskTime」が「pxTaskElapsedTime」よりも大幅に低い場合、その値はアサインメントが長時間アイドル状態になっていることを示しています。

補足: パフォーマンスレポートでの統計情報の使用方法については、コミュニティ記事「Performance statistics」を参照してください。

ケースなどのインスタンスを持ち持続可能なPega Platformクラスは、concreteであり、関連するデータベーステーブルに保存しなければなりません。 関連するデータベーステーブルに保存するには、クラスマッピング(Data-Admin-DB-Tableルール)により、具体的なクラスとデータベーステーブルを関連付けます。 

次の画像で「+」アイコンをクリックして、3つの一般的なクラスマッピングの種類を確認してください。

次の問題に答えて、理解度をチェックしましょう。

トレーニングを受講中に何か問題がありましたら、こちらをご覧ください: Pega Academy サポートのよくある質問 (FAQ).

このコンテンツは役に立ちましたか?

このコンテンツは 100% のユーザーにとって役に立ちました。

改善できるところはありますか?

We'd prefer it if you saw us at our best.

Pega Academy has detected you are using a browser which may prevent you from experiencing the site as intended. To improve your experience, please update your browser.

Close Deprecation Notice