gemSpec_Perf_V2.32.0



Elektronische Gesundheitskarte und Telematikinfrastruktur





Übergreifende Spezifikation

Performance und Mengengerüst TI-Plattform


    
Version 2.32.0
Revision 1148133
Stand 19.09.2023
Status freigegeben
Klassifizierung öffentlich
Referenzierung gemSpec_Perf

Dokumentinformationen

Änderungen zur Vorversion

Anpassungen des vorliegenden Dokumentes im Vergleich zur Vorversion können Sie der nachfolgenden Tabelle entnehmen.

Dokumentenhistorie

Version Stand Kap./ Seite Grund der Änderung, besondere Hinweise Bearbeitung
2.2.0 02.08.17 Überarbeitung zum Online-Rollout (Stufe 2.1) gematik
Errata 1.6.4-1, 1.6.4-2 und P15.1
2.3.0 18.12.17 Einarbeitung der Änderungen zu OPB1 Release 1.6.4-0, der Errata 1.6.4-1 und 1.6.4-2 und Änderungen zur Version 2.2.0 gematik
2.4.0 14.05.18 Einarbeitung Änderungslisten P15.2 und P15.4 gematik
2.5.0 26.10.18 Einarbeitung Änderungslisten P15.8 und P15.9 gematik
2.6.0 18.12.18 ePA-Inhalte gematik
2.7.0 15.05.19 Einarbeitung P18.1 gematik
2.8.0 28.06.19 Einarbeitung von P19.1 gematik
2.9.0 2.10.19 Einarbeitung von P20.1/2, 16.1/2 gematik
2.9.1 15.11.19 4.5 Afo A_15208 wieder ergänzt gematik
2.10.0 02.03.20 Einarbeitung von P21.1 gematik
2.11.0 30.06.20 Anpassungen gemäß Änderungsliste P22.1 und Scope-Themen aus Systemdesign R4.0.0 gematik
2.12.0 12.11.20 Anpassungen gemäß Änderungsliste P22.2 und Scope-Themen aus Systemdesign R4.0.1 gematik
2.12.1 19.02.21 4.5 red. Anpassung zur R4.0.2 gematik
2.12.2 06.04.21 Einarbeitung KIM_Maintenance_21.1 gematik
2.13.0 14.06.21 Einarbeitung E-Rezept_Maintenance_21.1 und _21.2 sowie
Einarbeitung IdP_Maintenance_21.1
gematik
2.13.1 02.09.21 ab Release "Konnektor PTV 5.0.2: Maintenance 21.5" (Sept. 2021) führt die gematik eine stufenweise Umbenennung folgender Begriffe durch:
aus "aAdG-NetG" wird "WANDA Basic",
aus "aAdG" und "aAdG-NetG-TI" wird "WANDA Smart"
gematik
2.14.0 07.10.21 Einarbeitung gemF_APOVZD  gematik
2.15.0 17.12.21 Einarbeitung IDP 2.3.0 (inkl. entsprechender Anteile aus gemF_sektorale_IDP); Start der strukturellen Anpassungen der produkttypspezifischen Vorgaben (betrifft Kapitel 3, 4 und 5)  gematik
2.16.0 31.01.22 Einarbeitung Konn_Maintenance_21.6 gematik
2.17.0 14.02.22 Einarbeitung Konn_Maintenance_21.6 gematik
2.18.0 31.03.22 Einarbeitung E-Rezept_Maintenance_21.3 (C_10752) und _21.4 gematik
2.19.0 03.05.22 Anteile aus gemF_eRp_WF_LE übernommen gematik
2.20.0 06.05.22 2.5.1
3.1.2.2
Einarbeitung Änderungsliste Rohdaten_Performance_22.1
redaktionelle Änderung in der Bezeichnung des Operationsnamen in Tabelle 6: ALT: "external authentication" NEU: "third-party-based"
gematik
2.21.0 18.05.22
2.5.1, 3.2
Einarbeitung Änderungsliste IDP_Maintenance_22.1;
redaktionelle Änderung: Anpassung der Verweise auf Anforderung A_19733-xx unter Verwendung einer Wildcard: -* 
gematik
2.22.0 29.07.22 3.3, Anhang C TI-Messenger 1.1.0: Festlegungen zu Performance und Reporting gematik
2.23.0 09.08.22 4.2.5, 5.6, Anhang C Einarbeitung Änderungsliste E-Rezept_Maintenance_22.2 und E-Rezept_Maintenance_22.3 und gemF_eRp_PKV gematik
2.24.0 26.08.22 Einarbeitung CI_Maintenance_22.4: Verpflichtung der TSP X.509 auf die Rohdatenlieferung v.02 und damit verbunden die Herauslösung aus der Rohdatenlieferung v.01, erstellen eines TSP X-509-spezifischen Unterkapitels (Kapitel 3.4) gematik
2.25.0 16.12.22 Einarbeitung CI_Maintenance_22.6: Verpflichtung der VPN-Zugangsdienste auf die Rohdatenlieferung nach Version 0.2 für die Betriebsdatenerfassung gematik
2.26.0 06.02.23 Einarbeitung gemäß Änderungslisten E-Rezept_Maintenance_ 22.5, Betr_Maintenance_22.3 und IDP_Maintenance_22.2 gematik
2.26.1 07.02.23 Afo A_22357-03 wird ergänzt und Afo A_18018 angepasst gematik
2.26.2 10.02.23 A_22012-02, A_22825, A_22826, A_22944 hinzugefügt, A_22012-01 und A_22230 abgelöst gematik
2.27.0 27.03.23 Einarbeitung NCPeH_Maintenance_22.2 gematik
2.28.0 23.05.23 2.3ff Einarbeitung Betr_Maintenance_23.2  gematik
2.29.0 09.06.23 Einarbeitung CI_Maintenance_23.1  gematik
2.30.0 31.07.23 Einarbeitung KIM Maintenance 23.2 (KIM 1.5.3), Betr_Maintenance_23.3, E-Rezept_Maintenance_23.2 und TI-Messenger_Maintenance_23.1, Ergänzung der Anteile aus gemF_TI-Gateway
gematik
2.30.1 04.08.23 Anpassung zu Betr_Maintenance_23.3 (Spalte in Tab_gemSpec_Perf_Berichtsformat_TI-Gateway-Zugangsmodul ergänzt)

gematik
2.31.0 01.09.23 Einarbeitung IdP_Maintenance 23.4  gematik
2.32.0 19.09.2023 Einarbeitung Änderungsliste NCPeH_23.1 gematik

Inhaltsverzeichnis

1 Einordnung des Dokuments

1.1 Zielsetzung

Die Performance-Spezifikation hat zum Ziel, die Performance-Kenngrößen für alle Produkttypen der TI zu definieren und die Anforderungen an die Performance der Produkttypen zu stellen. Ausgangspunkt für die Berücksichtigung des Bedarfs sind die Leistungsanforderungen für die Fachanwendungen, das sichere Übermittlungsverfahren KOM-LE, die Basisdienste QES, die tokenbasierten Authentisierung sowie für den Zugang zu Fremdnetzen (Internet, Bestandsnetz).

Die Performance-Kenngrößen decken drei Dimensionen ab:

  • Durchsatz, die Anzahl an Funktionsaufrufen oder die Datenmenge, die pro Zeiteinheit durch das System oder eine seiner Komponenten abgearbeitet werden,
  • die erlaubte Bearbeitungszeit je Funktionsaufruf und die
  • Verfügbarkeit über die gesamte Betriebszeit.

Die Ableitung der Produktanforderungen erfolgt über ein Performance-Modell, das hier soweit skizziert wird, wie für die Nachvollziehbarkeit erforderlich.

Die Anforderungen an die Produkttypen sind so formuliert, dass sie dem Stand der Technik entsprechende Optimierungen implizit voraussetzen, aber nicht zwingendermaßen Vorgaben für konkrete Optimierungen machen. So wird das gewünschte Leistungsniveau erreicht, ohne dabei den Lösungsraum für die Anbieter unnötig einzuschränken. Spezifische Anforderungen zur Optimierung können allerdings in den produkttypspezifischen Spezifikationen gestellt werden.

1.2 Zielgruppe

Das Dokument richtet sich an Hersteller und Anbieter von Produkten der TI.

1.3 Geltungsbereich

Dieses Dokument enthält normative Festlegungen zur Telematikinfrastruktur des deutschen Gesundheitswesens.

Der Gültigkeitszeitraum der vorliegenden Version und deren Anwendung in Zulassungsverfahren wird durch die gematik GmbH in gesonderten Dokumenten (z. B. Produkttypsteckbrief, Leistungsbeschreibung) festgelegt und bekannt gegeben.

Schutzrechts-/Patentrechtshinweis

Die nachfolgende Spezifikation ist von der gematik allein unter technischen Gesichtspunkten erstellt worden. Im Einzelfall kann nicht ausgeschlossen werden, dass die Implementierung der Spezifikation in technische Schutzrechte Dritter eingreift. Es ist allein Sache des Anbieters oder Herstellers, durch geeignete Maßnahmen dafür Sorge zu tragen, dass von ihm aufgrund der Spezifikation angebotene Produkte und/oder Leistungen nicht gegen Schutzrechte Dritter verstoßen und sich ggf. die erforderlichen Erlaubnisse/Lizenzen von den betroffenen Schutzrechtsinhabern einzuholen. Die gematik GmbH übernimmt insofern keinerlei Gewährleistungen.

1.4 Abgrenzung des Dokuments

Das vorliegende Dokument stellt Performance-Anforderungen an die technischen, aber nicht an organisatorische Schnittstellen der TI-Plattform.

1.5 Methodik

1.5.1 Anforderungen

Anforderungen als Ausdruck normativer Festlegungen werden durch eine eindeutige ID sowie die dem RFC 2119 [RFC2119] entsprechenden, in Großbuchstaben geschriebenen deutschen Schlüsselworte MUSS, DARF NICHT, SOLL, SOLL NICHT, KANN gekennzeichnet.

Sie werden im Dokument wie folgt dargestellt:

<AFO-ID> - <Titel der Afo>
Text / Beschreibung
[<=]

Dabei umfasst die Anforderung sämtliche innerhalb der Afo-ID und der Textmarke angeführten Inhalte.

2 Performance-Kenngrößen und ihr Einsatz

Das vorliegende Kapitel definiert die Performance-Kenngrößen für die drei Performance-Dimensionen Bearbeitungszeit, Last und Verfügbarkeit. Außerdem legt es fest, welche Kenngrößen 'reported' werden. 

2.1 Bearbeitungszeit

Bearbeitungszeit bezeichnet die Zeit, welche für die Ausführung einer Funktion, sei es auf Anwendungsfallebene oder auf Ebene einer Operation an den technischen Schnittstellen eines Produkttypen anfällt.

Die auf Ebene der Anwendungsfälle gemessene Bearbeitungszeit, wird der funktionalen Zerlegung und Systemzerlegung des Gesamtsystems folgend, in Bearbeitungszeiten gemessen an den Außenschnittstellen der Produkttypen zerlegt. Dabei kommt es auf eine möglichst exakte und lückenlose Definition der einzelnen Zeitbeiträge an:

  • In diesem Dokument wird die Bearbeitungszeit innerhalb der Primärsysteme nicht berücksichtigt.
  • Die Bearbeitungszeit innerhalb einer Komponente kann sich aus verschiedenen Bearbeitungszeitbeiträgen zusammensetzen, beispielsweise für einen Request/Reply-Zyklus aus einem Beitrag zum Request und einem zum Reply.
  • Jeder Bearbeitungszeitbeitrag innerhalb einer Komponente beginnt, wenn das letzte Bit der Eingangsdaten an die Schnittstelle der Komponente übergeben wurde, und endet, wenn das erste Bit der Ausgangsdaten an der Schnittstelle der Komponente oder des Produktes an das Netzwerk übergeben wird.
  • Die einer Netzwerkstrecke zugerechnete Bearbeitungszeit (Übertragungszeit) beginnt, wenn das erste Bit der zu übertragenden Daten an das Netzwerk übergeben wird und endet mit der Übergabe des letzten Bit an die empfangende Komponente.

Die Abarbeitung eines Funktionsaufrufs kann durch die Parallelisierung von Teilschritten beschleunigt werden. Die Verarbeitungszeit entlang des Pfades durch die Teilschritte mit der längsten Bearbeitungszeit (kritischer Pfad) bestimmt die Gesamtbearbeitungszeit.

Die Performance-Dimension Bearbeitungszeit wird idealisiert durch folgende Größen für jeden einzelnen Anwendungsfallaufruf ermittelt:

  • Angabe der aufgerufenen Funktion (auf oberster Ebene: Anwendungsfall),
  • Zeitpunkt des Ausführungsstarts,
  • Bearbeitungszeit,
  • für die Bearbeitungszeit verantwortliches Produkt,
  • rekursive Zerlegung entlang des kritischen Pfades in weitere Funktionen.

Die Bearbeitungszeiten für einen Anwendungsfall sind nicht für jeden Aufruf gleich. Zum einen können die ausführenden Produkte von Fall zu Fall unterschiedlich sein (z. B. verschiedene Karten), zum anderen wird die Antwortzeit jedes einzelnen Produkts variieren, oft abhängig von zufälligen Situationsparametern.

So kommt es zu einer Verteilung von Bearbeitungszeiten. Im Modell der Bearbeitungszeiten wird diese Verteilung auf zwei statistische Größen reduziert:

  • Bearbeitungszeiterwartungswert
  • Bearbeitungszeitvarianz

Beide Größen addieren sich für unabhängige Teilschritte unabhängig von der Verteilungsfunktion der Antwortzeiten pro Teilschritt (siehe [UnabhZufall]). Unter der Näherung einer Gaußverteilung der Antwortzeiten lässt sich die Varianz in ein p-Quantil übersetzt, dass sich selbst nicht für einzelne Teilschritte addiert.

Die Zerlegung einer Funktion in Teilfunktionen und die Nutzung der Modellgrößen und illustriert Abbildung 1.

Abbildung 1: Beispiel für Zerlegung einer Funktion und die Modell-Bearbeitungszeitgrößen

Bei Messungen korrespondiert der Erwartungswert des Modells mit dem arithmetischen Mittelwert der Bearbeitungszeiten1 über eine Gesamtheit von N Einzelmessungen. Er berechnet sich als Summe der Bearbeitungszeiten geteilt durch die Anzahl N der Einzelmessungen.

1) Mittelwert steht hier ausschließlich für den arithmetischen Mittelwert.

Als Performancevorgaben hinsichtlich Bearbeitungszeit werden für eine definierte Umgebung zwei Schranken vorgegeben:

  • Mittelwertschranke für den Bearbeitungszeitmittelwert2
  • Quantilschranke für das 99%-Quantil der Bearbeitungszeit

2) Vereinfachend in der Bezeichnung werden Erwartungswert des Modells und arithmetischer Mittelwert der Messungen gleichermaßen mit bezeichnet.

Für eine Gesamtheit von 100 Einzelmessungen darf der Mittelwert der Bearbeitungszeiten nicht größer als die zugehörige Schranke sein und die 99 niedrigsten Bearbeitungszeiten dürfen nicht größer als die Quantilschranke sein.

Für die Produkttypen der zentralen Zone der TI-Plattform müssen Bearbeitungszeitvorgaben unter Last erfüllt werden. Da dabei nicht immer ein Stichprobenumfang von genau 100 Einzelmessungen pro Operation realisiert werden kann, ist es notwendig das gemessene 99%-Quantil für einen allgemeinen Stichprobenumfang der Anzahl n zu definieren.

Quantil-Definition

= Bearbeitungszeit der m-ten Bearbeitungszeit, wobei diese nach aufsteigendem Wert geordnet sind. Dabei ist m[n] = (n – n mod 100) * 0,99 + n mod 100.

Beispiele: m[100] = (100 – 0) * 0,99 + 0 = 99 und m[17] = (17 – 17) * 0,99 + 17 = 17

Inhaltliche Begründung: Ein Ausreißer wird immer nur für volle 100 Aufrufe zugelassen.

2.2 Last

Jede Funktion wird von ihren Nutzern im Betrieb mit einer gewissen Häufigkeit aufgerufen. Die dem Aufruf folgende Verarbeitung innerhalb einer Produktinstanz erzeugt für diese eine Arbeitslast.

Es stellt sich die Frage, wie viele Anfragen parallel von einer Produktinstanz bearbeitet werden müssen. Um dies zu klären, wird zunächst gezeigt, welche Bedeutung der Mittelungszeitraum hat. Auf dieser Grundlage wird dann die Modellierung der Aufrufrate skizziert.

Die Performance-Dimension Last wird idealisiert durch eine Liste der einzelnen Aufrufzeitpunkte repräsentiert .

Abbildung 2 skizziert die Aufrufzeitpunkte für eine Funktion beispielhaft.

Abbildung 2: Beispiel für gemessene Aufrufe, die zu Aufrufzeitpunkten erfolgen

Eine solche exakte Verteilungsfunktion der Aufrufe kann gemittelt werden, indem man zu jedem Zeitpunkt über einen gewissen Zeitraum in der Vergangenheit die Aufrufe zählt und die Anzahl durch den Mittelungszeitraum T teilt. Man erhält so eine Aufrufrate , die auch vom Zeitintervall T abhängt.

Die Abbildung 3 skizziert die Aufrufrate zu der Situation aus Abbildung 2 und identifiziert die höchste Aufrufrate – die „Spitze“ – im Mittelungszeitraum.

Abbildung 3: Beispiel einer über den Zeitraum T gemittelten Aufrufrate

Entspricht der Mittelungszeitraum T der mittleren Antwortzeit, dann gibt eine Spitze die parallel zu bearbeitenden Aufrufe an.

Ein kleinerer Mittelungszeitraum erhöht die Spitzenraten [1/sec] beliebig. Ein größerer Mittelungszeitraum nivelliert die für die Bearbeitung praktisch relevanten, tatsächlich parallel zu verarbeitenden Aufrufzahlen.

Auf Grund dieser Überlegungen wird im Folgenden der Zeitraum T immer gleich der Schranke für den Bearbeitungszeitmittelwert gesetzt. Die Einheit der Aufrufrate kann davon unabhängig für beliebige Zeiteinheiten als [1/Zeiteinheit] angegeben werden, etwa mit [1/sec], [1/h] oder [1/ ].

Modellierung der Aufrufrate

Ziel einer modellhaften Betrachtung der Aufrufrate ist eine möglichst gute Schätzung für die Spitzen in der Aufrufrate . Ausgangspunkt ist die Anzahl der auf einen großen Zeitraum entfallenden Aufrufe, etwa pro T = 1 Jahr = 1y. Anzahl geteilt durch Zeitraum T ergibt die Aufrufrate . Diese Aufrufrate wird bis zu einer Spitzenlast (oder mehreren fallabhängigen Spitzenlasten)