

# LEIST 3. Wie speichern und verwalten Sie die Daten in Ihrem Workload und wie greifen Sie darauf zu?
<a name="perf-03"></a>

 Die optimale Datenverwaltungslösung für ein bestimmtes System hängt vom Datentyp (Block, Datei oder Objekt), den Zugriffsmustern (zufällig oder sequenziell), dem erforderlichen Durchsatz, der Zugriffshäufigkeit (online, offline, Archiv), der Aktualisierungshäufigkeit (WORM, dynamisch) sowie den Verfügbarkeits- und Lebensdaueranforderungen ab. Well-Architected-Workloads verwenden zweckgebundene Daten-Stores, die verschiedene Funktionen zur Verbesserung der Leistung ermöglichen. 

**Topics**
+ [PERF03-BP01 Verwenden eines speziell entwickelten Datenspeichers, der die Datenzugriffs- und Speicheranforderungen am besten unterstützt](perf_data_use_purpose_built_data_store.md)
+ [PERF03-BP02 Bewerten verfügbarer Konfigurationsoptionen für den Datenspeicher](perf_data_evaluate_configuration_options_data_store.md)
+ [PERF03-BP03 Erfassen und Aufzeichnen von Metriken zur Datenspeicherleistung](perf_data_collect_record_data_store_performance_metrics.md)
+ [PERF03-BP04 Implementieren von Strategien zur Verbesserung der Abfrageleistung im Datenspeicher](perf_data_implement_strategies_to_improve_query_performance.md)
+ [PERF03-BP05 Implementieren von Datenzugriffsmustern, die Caching nutzen](perf_data_access_patterns_caching.md)

# PERF03-BP01 Verwenden eines speziell entwickelten Datenspeichers, der die Datenzugriffs- und Speicheranforderungen am besten unterstützt
<a name="perf_data_use_purpose_built_data_store"></a>

 Machen Sie sich mit Datenmerkmalen (wie Freigabe, Größe, Cache-Größe, Zugriffsmuster, Latenz, Durchsatz und Persistenz von Daten) vertraut, um die richtigen, speziell entwickelten Datenspeicher (Speicher oder Datenbank) für den Workload auszuwählen. 

 **Typische Anti-Muster:** 
+  Sie halten an einem Datenspeicher fest, da es interne Erfahrungen und Wissen über eine bestimmte Datenbanklösung gibt. 
+  Sie gehen davon aus, dass für alle Workloads ähnliche Datenspeicher- und Zugriffsanforderungen gelten. 
+  Sie haben keinen Datenkatalog zur Inventarisierung Ihrer Datenbestände eingeführt. 

 **Vorteile der Nutzung dieser bewährten Methode:** Wenn Sie die Datenmerkmale und -anforderungen verstehen, können Sie die effizienteste und leistungsfähigste Speichertechnologie ermitteln, die für Ihre Workload-Anforderungen geeignet ist. 

 **Risikostufe bei fehlender Befolgung dieser Best Practice:** Hoch 

## Implementierungsleitfaden
<a name="implementation-guidance"></a>

 Stellen Sie bei der Auswahl und Implementierung von Datenspeicher sicher, dass die Abfrage-, Skalierungs- und Speichermerkmale die Workload-Datenanforderungen unterstützen. AWS bietet zahlreiche Datenspeicher- und Datenbanktechnologien, darunter Blockspeicher, Objektspeicher, Streaming-Speicher, Dateisystem-, relationale, Schlüsselwert-, Dokument-, In-Memory-, Graph-, Zeitreihen- und Ledger-Datenbanken. Jede Datenverwaltungslösung hat verfügbare Optionen und Konfigurationen, um Ihre Anwendungsfälle und Datenmodelle zu unterstützen. Wenn Sie die Merkmale und Anforderungen der Daten verstehen, können Sie sich von monolithischer Speichertechnologie und restriktiven Einheitsansätzen lösen und sich auf eine angemessene Datenverwaltung konzentrieren. 

### Implementierungsschritte
<a name="implementation-steps"></a>
+  Führen Sie eine Bestandsaufnahme der verschiedenen Datentypen durch, die in Ihrem Workload vorhanden sind. 
+  Verstehen und dokumentieren Sie Datenmerkmale und -anforderungen, einschließlich: 
  +  Datentyp (strukturiert, semistrukturiert, relational) 
  +  Datenvolumen und -wachstum 
  +  Lebensdauer von Daten: anhaltend, flüchtig, vorübergehend 
  +  Anforderungen an AKID (Atomarität, Konsistenz, Isolation, Dauerhaftigkeit) 
  +  Datenzugriffsmuster (leseintensiv oder schreibintensiv) 
  +  Latenz 
  +  Durchsatz 
  +  IOPS (Eingabe-/Ausgabevorgänge pro Sekunde) 
  +  Aufbewahrungsfrist der Daten 
+  Erfahren Sie mehr über die verschiedenen Datenspeicher, die für Ihren Workload in AWS verfügbar sind und Ihre Datenmerkmale erfüllen können (wie beschrieben unter [PERF01-BP01 Informieren über verfügbare Cloud-Services und -Funktionen](perf_architecture_understand_cloud_services_and_features.md)). Einige Beispiele für AWS-Speichertechnologien und ihre Schlüsselmerkmale sind:     
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/wellarchitected/2023-10-03/framework/perf_data_use_purpose_built_data_store.html)
+  Wenn Sie eine Datenplattform aufbauen, nutzen Sie [moderne Datenarchitektur](https://aws.amazon.com/big-data/datalakes-and-analytics/modern-data-architecture/) in AWS, um Ihren Data Lake, Ihr Data Warehouse und Ihre speziell entwickelten Datenspeicher zu integrieren. 
+  Die wichtigsten Fragen, die Sie bei der Auswahl eines Datenspeichers für Ihren Workload berücksichtigen müssen, lauten wie folgt:     
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/wellarchitected/2023-10-03/framework/perf_data_use_purpose_built_data_store.html)
+  Führen Sie Experimente und Benchmarking in einer Nicht-Produktionsumgebung durch, um herauszufinden, welcher Datenspeicher Ihre Workload-Anforderungen erfüllen kann. 

## Ressourcen
<a name="resources"></a>

 **Zugehörige Dokumente:** 
+  [Amazon EBS Volume-Typen](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) 
+  [Amazon EC2 Speicher](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Storage.html) 
+  [Amazon EFS: Leistung von Amazon EFS](https://docs.aws.amazon.com/efs/latest/ug/performance.html) 
+  [Leistung von Amazon FSx for Lustre](https://docs.aws.amazon.com/fsx/latest/LustreGuide/performance.html) 
+  [Leistung von Amazon FSx for Windows File Server](https://docs.aws.amazon.com/fsx/latest/WindowsGuide/performance.html) 
+  [Amazon Glacier: Amazon Glacier-Dokumentation](https://docs.aws.amazon.com/amazonglacier/latest/dev/introduction.html) 
+  [Amazon S3: Überlegungen zu Anfragerate und Leistung](https://docs.aws.amazon.com/AmazonS3/latest/dev/request-rate-perf-considerations.html) 
+  [Cloud-Speicher mit AWS](https://aws.amazon.com/products/storage/) 
+  [Amazon EBS -E/A-Merkmale](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ebs-io-characteristics.html) 
+  [Cloud-Datenbanken mit AWS ](https://aws.amazon.com/products/databases/?ref=wellarchitected) 
+  [AWS-Datenbank-Caching ](https://aws.amazon.com/caching/database-caching/?ref=wellarchitected) 
+  [DynamoDB Accelerator](https://aws.amazon.com/dynamodb/dax/?ref=wellarchitected) 
+  [Bewährte Methoden für Amazon Aurora ](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.BestPractices.html?ref=wellarchitected) 
+  [Amazon Redshift-Leistung ](https://docs.aws.amazon.com/redshift/latest/dg/c_challenges_achieving_high_performance_queries.html?ref=wellarchitected) 
+  [Die besten 10 Leistungstipps für Amazon Athena ](https://aws.amazon.com/blogs/big-data/top-10-performance-tuning-tips-for-amazon-athena/?ref=wellarchitected) 
+  [Bewährte Methoden für Amazon Redshift Spectrum ](https://aws.amazon.com/blogs/big-data/10-best-practices-for-amazon-redshift-spectrum/?ref=wellarchitected) 
+  [Bewährte Methoden für Amazon DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/BestPractices.html?ref=wellarchitected) 
+  [Zwischen Amazon EC2 und Amazon RDS auswählen](https://docs.aws.amazon.com/prescriptive-guidance/latest/migration-sql-server/comparison.html) 
+ [ Bewährte Methoden für die Implementierung von Amazon ElastiCache ](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/BestPractices.html)

 **Zugehörige Videos:** 
+  [Umfassende Informationen zu Amazon EBS](https://www.youtube.com/watch?v=wsMWANWNoqQ) 
+  [Ihre Speicherleistung mit Amazon S3 optimieren](https://www.youtube.com/watch?v=54AhwfME6wI) 
+ [Apps mit speziell entwickelten Datenbanken modernisieren](https://www.youtube.com/watch?v=V-DiplATdi0)
+ [ Verständliche Beschreibung des Amazon Aurora-Speichers: Funktionsweise ](https://www.youtube.com/watch?v=uaQEGLKtw54)
+ [ Ausführliche Beschreibung von Amazon DynamoDB: Erweiterte Entwurfsmuster ](https://www.youtube.com/watch?v=6yqfmXiZTlM)

 **Zugehörige Beispiele:** 
+  [Amazon EFS-CSI-Treiber](https://github.com/kubernetes-sigs/aws-efs-csi-driver) 
+  [Amazon EBS-CSI-Treiber](https://github.com/kubernetes-sigs/aws-ebs-csi-driver) 
+  [Amazon EFS-Dienstprogramme](https://github.com/aws/efs-utils) 
+  [Amazon EBS – automatische Skalierung](https://github.com/awslabs/amazon-ebs-autoscale) 
+  [Amazon S3-Beispiele](https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/s3-examples.html) 
+  [Optimieren von Datenmustern mithilfe von Amazon Redshift Data Sharing](https://wellarchitectedlabs.com/sustainability/300_labs/300_optimize_data_pattern_using_redshift_data_sharing/) 
+  [Datenbankmigrationen](https://github.com/aws-samples/aws-database-migration-samples) 
+  [MS SQL Server – AWS Database Migration Service (AWS DMS)-Replikationsdemo](https://github.com/aws-samples/aws-dms-sql-server) 
+  [Praktischer Workshop für die Datenbankmodernisierung](https://github.com/aws-samples/amazon-rds-purpose-built-workshop) 
+  [Amazon Neptune Samples](https://github.com/aws-samples/amazon-neptune-samples) 

# PERF03-BP02 Bewerten verfügbarer Konfigurationsoptionen für den Datenspeicher
<a name="perf_data_evaluate_configuration_options_data_store"></a>

 Machen Sie sich mit den verschiedenen Funktionen und Konfigurationsoptionen vertraut, die für Ihre Datenspeicher verfügbar sind, und bewerten Sie sie, um Speicherplatz und Leistung für Ihren Workload zu optimieren. 

 **Typische Anti-Muster:** 
+  Sie verwenden nur einen Speichertyp, z. B. Amazon EBS, für alle Workloads. 
+  Sie verwenden bereitgestellte IOPS für alle Workloads, ohne reale Tests auf allen Speicherebenen durchzuführen. 
+  Ihnen fehlt das Bewusstsein für die Wahl der Konfigurationsoptionen der Datenverwaltungslösung. 
+  Sie verlassen sich ausschließlich auf das Vergrößern der Instance-Größe, ohne andere verfügbare Konfigurationsoptionen in Betracht zu ziehen. 
+  Sie testen die Skalierungsoptionen Ihres Datenspeichers nicht. 

 **Vorteile der Nutzung dieser bewährten Methode:** Indem Sie Datenspeicherkonfigurationen erkunden und mit ihnen experimentieren, können Sie möglicherweise Infrastrukturkosten senken, die Leistung verbessern und den Aufwand zur Verwaltung Ihrer Workloads verringern. 

 **Risikostufe bei fehlender Befolgung dieser Best Practice:** Mittel 

## Implementierungsleitfaden
<a name="implementation-guidance"></a>

 Für einen Workload können je nach Datenspeicher- und Zugriffsanforderungen ein oder mehrere Datenspeicher verwendet werden. Zur Optimierung der Leistungseffizienz und Kosten müssen Sie Datenzugriffsmuster auswerten, um die entsprechenden Datenspeicherkonfigurationen zu bestimmen. Während Sie die Datenspeicheroptionen erkunden, sollten Sie unterschiedliche Aspekte in Betracht ziehen. Dazu zählen Speicheroptionen, Arbeitsspeicher, Rechenvorgänge, Read Replica, Konsistenzanforderungen, Verbindungs-Pooling und Caching-Optionen. Experimentieren Sie mit diesen unterschiedlichen Konfigurationsoptionen, um Metriken zur Leistungseffizienz zu verbessern. 

### Implementierungsschritte
<a name="implementation-steps"></a>
+  Verstehen Sie die aktuellen Konfigurationen (wie Instance-Typ, Speichergröße oder Version der Datenbank-Engine) des Datenspeichers. 
+  Lesen Sie die AWS-Dokumentation und die bewährten Methoden, um mehr über empfohlene Konfigurationsoptionen zu erfahren, mit denen Sie die Leistung für den Datenspeicher verbessern können. Die wichtigsten Datenspeicheroptionen, die Sie in Betracht ziehen sollten, sind die folgenden:     
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/wellarchitected/2023-10-03/framework/perf_data_evaluate_configuration_options_data_store.html)
+  Führen Sie Experimente und Benchmarking in einer Nicht-Produktionsumgebung durch, um herauszufinden, welche Konfigurationsoption Ihre Workload-Anforderungen erfüllen kann. 
+  Nachdem Sie experimentiert haben, planen Sie die Migration und überprüfen Sie die Leistungsmetriken. 
+  Verwenden Sie Tools zur AWS-Überwachung (wie [Amazon CloudWatch](https://aws.amazon.com/cloudwatch/)) und Optimierung (wie [Amazon S3 Storage Lens](https://aws.amazon.com/s3/storage-lens/)) zur kontinuierlichen Optimierung Ihres Datenspeichers anhand realer Nutzungsmuster. 

## Ressourcen
<a name="resources"></a>

 **Zugehörige Dokumente:** 
+  [Cloud-Speicher mit AWS](https://aws.amazon.com/products/storage/?ref=wellarchitected) 
+  [Amazon EBS Volume-Typen](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) 
+  [Amazon EC2 Speicher](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Storage.html) 
+  [Amazon EFS: Leistung von Amazon EFS](https://docs.aws.amazon.com/efs/latest/ug/performance.html) 
+  [Leistung von Amazon FSx for Lustre](https://docs.aws.amazon.com/fsx/latest/LustreGuide/performance.html) 
+  [Leistung von Amazon FSx for Windows File Server](https://docs.aws.amazon.com/fsx/latest/WindowsGuide/performance.html) 
+  [Amazon Glacier: Amazon Glacier-Dokumentation](https://docs.aws.amazon.com/amazonglacier/latest/dev/introduction.html) 
+  [Amazon S3: Überlegungen zu Anfragerate und Leistung](https://docs.aws.amazon.com/AmazonS3/latest/dev/request-rate-perf-considerations.html) 
+  [Cloud-Speicher mit AWS](https://aws.amazon.com/products/storage/) 
+  [Cloud-Speicher mit AWS](https://aws.amazon.com/products/storage/?ref=wellarchitected) 
+  [Amazon EBS -E/A-Merkmale](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ebs-io-characteristics.html) 
+  [Cloud-Datenbanken mit AWS ](https://aws.amazon.com/products/databases/?ref=wellarchitected) 
+  [AWS-Datenbank-Caching ](https://aws.amazon.com/caching/database-caching/?ref=wellarchitected) 
+  [DynamoDB Accelerator](https://aws.amazon.com/dynamodb/dax/?ref=wellarchitected) 
+  [Bewährte Methoden für Amazon Aurora ](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.BestPractices.html?ref=wellarchitected) 
+  [Amazon Redshift-Leistung ](https://docs.aws.amazon.com/redshift/latest/dg/c_challenges_achieving_high_performance_queries.html?ref=wellarchitected) 
+  [Die besten 10 Leistungstipps für Amazon Athena ](https://aws.amazon.com/blogs/big-data/top-10-performance-tuning-tips-for-amazon-athena/?ref=wellarchitected) 
+  [Bewährte Methoden für Amazon Redshift Spectrum ](https://aws.amazon.com/blogs/big-data/10-best-practices-for-amazon-redshift-spectrum/?ref=wellarchitected) 
+  [Bewährte Methoden für Amazon DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/BestPractices.html?ref=wellarchitected) 

 **Zugehörige Videos:** 
+  [Umfassende Informationen zu Amazon EBS](https://www.youtube.com/watch?v=wsMWANWNoqQ) 
+  [Ihre Speicherleistung mit Amazon S3 optimieren](https://www.youtube.com/watch?v=54AhwfME6wI) 
+ [Apps mit speziell entwickelten Datenbanken modernisieren](https://www.youtube.com/watch?v=V-DiplATdi0)
+ [ Verständliche Beschreibung des Amazon Aurora-Speichers: Funktionsweise ](https://www.youtube.com/watch?v=uaQEGLKtw54)
+ [ Ausführliche Beschreibung von Amazon DynamoDB: Erweiterte Entwurfsmuster ](https://www.youtube.com/watch?v=6yqfmXiZTlM)

 **Zugehörige Beispiele:** 
+  [Amazon EFS-CSI-Treiber](https://github.com/kubernetes-sigs/aws-efs-csi-driver) 
+  [Amazon EBS-CSI-Treiber](https://github.com/kubernetes-sigs/aws-ebs-csi-driver) 
+  [Amazon EFS-Dienstprogramme](https://github.com/aws/efs-utils) 
+  [Amazon EBS – automatische Skalierung](https://github.com/awslabs/amazon-ebs-autoscale) 
+  [Amazon S3-Beispiele](https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/s3-examples.html) 
+  [Amazon DynamoDB-Beispiele](https://github.com/aws-samples/aws-dynamodb-examples) 
+  [Beispiele von AWS-Datenbankmigration](https://github.com/aws-samples/aws-database-migration-samples) 
+  [Workshop für die Datenbankmodernisierung](https://github.com/aws-samples/amazon-rds-purpose-built-workshop) 
+  [Arbeiten mit Parametern auf Ihrem Amazon RDS für Postgress DB](https://github.com/awsdocs/amazon-rds-user-guide/blob/main/doc_source/Appendix.PostgreSQL.CommonDBATasks.Parameters.md) 

# PERF03-BP03 Erfassen und Aufzeichnen von Metriken zur Datenspeicherleistung
<a name="perf_data_collect_record_data_store_performance_metrics"></a>

 Verfolgen und zeichnen Sie relevante Leistungsmetriken für Ihren Datenspeicher auf, um zu verstehen, wie Ihre Datenverwaltungslösungen funktionieren. Mithilfe dieser Metriken können Sie Ihren Datenspeicher optimieren, überprüfen, ob Ihre Workload-Anforderungen erfüllt werden, und sich einen klaren Überblick über die Workload-Leistung verschaffen. 

 **Typische Anti-Muster:** 
+  Sie suchen ausschließlich manuell mithilfe von Protokolldateien nach Metriken. 
+  Sie veröffentlichen Metriken nur in internen Tools, die von Ihrem Team verwendet werden, und Sie haben kein umfassendes Bild Ihres Workloads. 
+  Sie verwenden nur die Standardmetriken, die von der Überwachungssoftware Ihrer Wahl aufgezeichnet wurden. 
+  Sie überprüfen Metriken nur dann, wenn ein Problem vorliegt. 
+  Sie überwachen Metriken nur auf Systemebene und erfassen keine Datenzugriffs- und Nutzungsmetriken. 

 **Vorteile der Nutzung dieser bewährten Methode:** Das Einrichten einer Leistungsbasislinie hilft Ihnen dabei, das normale Verhalten und die Anforderungen von Workloads zu verstehen. Abnorme Muster können schneller identifiziert und behoben werden, was die Leistung und Zuverlässigkeit des Datenspeichers erhöht. 

 **Risikostufe bei fehlender Befolgung dieser Best Practice:** Hoch 

## Implementierungsleitfaden
<a name="implementation-guidance"></a>

 Um die Leistung der Datenspeicher zu überwachen, müssen Sie mehrere Leistungsmetriken über einen bestimmten Zeitraum aufzeichnen. Auf diese Weise können Sie Anomalien erkennen und die Leistung anhand von Geschäftsmetriken messen, um sicherzustellen, dass Sie die Anforderungen Ihres Workloads erfüllen. 

 Metriken sollten das zugrunde liegende System, das den Datenspeicher unterstützt, sowie die Datenbankmetriken enthalten. Die Metriken des zugrunde liegenden Systems können die CPU-Auslastung, den Arbeitsspeicher, den verfügbaren Festplattenspeicher, Festplatten-E/A, das Cache-Trefferverhältnis und Metriken zum eingehenden und ausgehenden Netzwerkdatenverkehr umfassen, während die Datenspeichermetriken die Transaktionen pro Sekunde, die häufigsten Abfragen, die durchschnittlichen Abfrageraten, Antwortzeiten, die Indexauslastung, Tabellenschlösser, Abfragezeitüberschreitungen und die Anzahl offener Verbindungen enthält. Diese Daten sind von entscheidender Bedeutung, um festzustellen, wie leistungsfähig der Workload ist und wie die Datenverwaltungslösung genutzt wird. Nutzen Sie diese Metriken im Rahmen eines datengestützten Ansatzes, der Ihnen die Feinabstimmung und Optimierung der vom Workload genutzten Ressourcen ermöglicht.  

 Nutzen Sie Tools, Bibliotheken und Systeme zum Aufzeichnen von Messungen zur Datenbankleistung. 

## Implementierungsschritte
<a name="implementation-steps"></a>

1.  Identifizieren Sie die wichtigsten Leistungsmetriken, die der Datenspeicher verfolgen soll. 

   1.  [Metriken und Dimensionen von Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/metrics-dimensions.html) 

   1.  [Überwachungsmetriken für innerhalb einer Amazon RDS-Instance](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Monitoring.html) 

   1.  [Überwachen der DB-Last mit Performance Insights auf Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PerfInsights.html) 

   1.  [Überblick über Erweiterte Überwachung](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.OS.overview.html) 

   1.  [Metriken und Dimensionen von DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/metrics-dimensions.html) 

   1.  [Überwachen von DynamoDB Accelerator](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DAX.Monitoring.html) 

   1.  [Überwachen von Amazon MemoryDB mit Amazon CloudWatch](https://docs.aws.amazon.com/memorydb/latest/devguide/monitoring-cloudwatch.html) 

   1.  [Welche Metriken sollte ich überwachen?](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheMetrics.WhichShouldIMonitor.html) 

   1.  [Überwachen der Amazon Redshift-Cluster-Leistung](https://docs.aws.amazon.com/redshift/latest/mgmt/metrics.html) 

   1.  [Metriken und Dimensionen von Timestream](https://docs.aws.amazon.com/timestream/latest/developerguide/metrics-dimensions.html) 

   1.  [Amazon CloudWatch-Metriken für Amazon Aurora](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.AuroraMonitoring.Metrics.html) 

   1.  [Protokollieren und Überwachen von Amazon Keyspaces (for Apache Cassandra)](https://docs.aws.amazon.com/keyspaces/latest/devguide/monitoring.html) 

   1.  [Überwachen von Amazon Neptune-Ressourcen](https://docs.aws.amazon.com/neptune/latest/userguide/monitoring.html) 

1.  Verwenden Sie eine zugelassene Protokollierungs- und Überwachungslösung, um diese Metriken zu erfassen. [Amazon CloudWatch](https://aws.amazon.com/cloudwatch/) lassen sich Kennzahlen aus sämtlichen Ressourcen Ihrer Architektur erfassen. Sie können auch benutzerdefinierte Kennzahlen erfassen und in Oberflächen-, Geschäfts- oder abgeleiteten Kennzahlen veröffentlichen. Richten Sie mit CloudWatch oder mit Lösungen von Drittanbietern Alarme ein, die auf das Überschreiten von Schwellenwerten hinweisen. 

1.  Prüfen Sie, ob die Datenspeicherüberwachung von einer Machine-Learning-Lösung profitieren kann, die Leistungsanomalien erkennt. 

   1.  [Amazon DevOps Guru für Amazon RDS](https://docs.aws.amazon.com/devops-guru/latest/userguide/working-with-rds.overview.how-it-works.html) ermöglicht einen Einblick in Leistungsprobleme und bietet Empfehlungen für Korrekturmaßnahmen. 

1.  Konfigurieren Sie die Datenaufbewahrung in Ihrer Überwachungs- und Protokollierungslösung so, dass sie Ihren Sicherheits- und Betriebszielen entspricht. 

   1.  [Standard-Datenaufbewahrung für CloudWatch-Metriken](https://aws.amazon.com/cloudwatch/faqs/#AWS_resource_.26_custom_metrics_monitoring) 

   1.  [Standard-Datenaufbewahrung für CloudWatch Logs](https://aws.amazon.com/cloudwatch/faqs/#Log_management) 

## Ressourcen
<a name="resources"></a>

 **Zugehörige Dokumente:** 
+  [AWS-Datenbank-Caching](https://aws.amazon.com/caching/database-caching/) 
+  [Die besten 10 Leistungstipps für Amazon Athena](https://aws.amazon.com/blogs/big-data/top-10-performance-tuning-tips-for-amazon-athena/) 
+  [Bewährte Methoden für Amazon Aurora](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.BestPractices.html) 
+  [DynamoDB Accelerator](https://aws.amazon.com/dynamodb/dax/) 
+  [Bewährte Methoden für Amazon DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/BestPractices.html) 
+  [Bewährte Methoden für Amazon Redshift Spectrum](https://aws.amazon.com/blogs/big-data/10-best-practices-for-amazon-redshift-spectrum/) 
+  [Amazon Redshift-Leistung](https://docs.aws.amazon.com/redshift/latest/dg/c_challenges_achieving_high_performance_queries.html) 
+  [Cloud-Datenbanken mit AWS](https://aws.amazon.com/products/databases/) 
+  [Amazon RDS Performance Insights](https://aws.amazon.com/rds/performance-insights/) 

 **Zugehörige Videos:** 
+  [Speziell entwickelte Datenbanken von AWS](https://www.youtube.com/watch?v=q81TVuV5u28) 
+  [Verständliche Beschreibung des Amazon Aurora-Speichers: Funktionsweise](https://www.youtube.com/watch?v=uaQEGLKtw54) 
+  [Ausführliche Beschreibung von Amazon DynamoDB: Erweiterte Entwurfsmuster](https://www.youtube.com/watch?v=6yqfmXiZTlM) 
+  [Bewährte Methoden für die Überwachung von Redis-Workloads auf Amazon ElastiCache](https://www.youtube.com/watch?v=c-hTMLN35BY&ab_channel=AWSOnlineTechTalks) 

 **Zugehörige Beispiele:** 
+  [Stufe 100: Überwachung mit CloudWatch-Dashboards](https://wellarchitectedlabs.com/performance-efficiency/100_labs/100_monitoring_with_cloudwatch_dashboards/) 
+  [Framework zur AWS-Datensatzerfassung und Sammlung von Metriken](https://github.com/awslabs/aws-dataset-ingestion-metrics-collection-framework) 
+  [Workshop zur Überwachung von Amazon RDS](https://www.workshops.aws/?tag=Enhanced%20Monitoring) 

# PERF03-BP04 Implementieren von Strategien zur Verbesserung der Abfrageleistung im Datenspeicher
<a name="perf_data_implement_strategies_to_improve_query_performance"></a>

 Implementieren Sie Strategien zur Datenoptimierung und Verbesserung der Datenabfrage, um mehr Skalierbarkeit und eine effizientere Leistung für Ihre Workloads zu erzielen. 

 **Typische Anti-Muster:** 
+  Sie partitionieren keine Daten in Ihrem Datenspeicher. 
+  Sie speichern Daten in nur einem Dateiformat in Ihrem Datenspeicher. 
+  Sie verwenden keine Indizes in Ihrem Datenspeicher. 

 **Vorteile der Nutzung dieser bewährten Methode:** Die Optimierung der Daten- und Abfrageleistung führt zu mehr Effizienz, niedrigeren Kosten und einer verbesserten Benutzererfahrung. 

 **Risikostufe bei fehlender Befolgung dieser Best Practice:** Mittel 

## Implementierungsleitfaden
<a name="implementation-guidance"></a>

Daten- und Abfrageoptimierung sind wichtige Aspekte der Leistungseffizienz in einem Datenspeicher, da sie sich auf die Leistung und Reaktionsfähigkeit des gesamten Cloud-Workloads auswirken. Nicht optimierte Abfragen können zu einem höheren Ressourcenverbrauch und Engpässen führen, wodurch die Gesamteffizienz eines Datenspeichers beeinträchtigt wird. 

Die Datenoptimierung umfasst mehrere Techniken, um eine effiziente Datenspeicherung und einen effizienten Datenzugriff zu gewährleisten. Dies trägt auch dazu bei, die Abfrageleistung in einem Datenspeicher zu verbessern. Zu den wichtigsten Strategien gehören Datenpartitionierung, Datenkomprimierung und Datendenormalisierung, mit denen Daten sowohl für die Speicherung als auch für den Zugriff optimiert werden können.

### Implementierungsschritte
<a name="implementation-steps"></a>
+  Verstehen und analysieren Sie die kritischen Datenabfragen, die in Ihrem Datenspeicher durchgeführt werden. 
+  Identifizieren Sie die langsamen Abfragen in Ihrem Datenspeicher und verwenden Sie Abfragepläne, um den aktuellen Status zu verstehen. 
  +  [Analysieren des Abfrageplans in Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/dg/c-analyzing-the-query-plan.html) 
  +  [Verwenden von EXPLAIN und EXPLAIN ANALYZE in Athena](https://docs.aws.amazon.com/athena/latest/ug/athena-explain-statement.html) 
+  Implementieren Sie Strategien zur Verbesserung der Abfrageleistung. Einige der wichtigsten Strategien sind: 
  +  Verwenden eines [spaltenförmigen Dateiformats](https://docs.aws.amazon.com/athena/latest/ug/columnar-storage.html) (wie Parquet oder ORC). 
  + Komprimieren von Daten im Datenspeicher, um Speicherplatz und E/A-Betrieb zu reduzieren.
  +  Datenpartitionierung zur Aufteilung von Daten in kleinere Teile und zur Reduzierung der Zeit für das Scannen von Daten. 
    + [ Partitionierung von Daten in Athena ](https://docs.aws.amazon.com/athena/latest/ug/partitions.html)
    + [ Partitionen und Datenverteilung ](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.Partitions.html)
  +  Datenindizierung für die gemeinsamen Spalten in der Abfrage. 
  +  Wählen Sie den richtigen Verknüpfungsvorgang für die Abfrage aus. Wenn Sie zwei Tabellen verknüpfen, geben Sie die größere Tabelle auf der linken Seite der Verknüpfung und die kleinere Tabelle auf der rechten Seite der Verknüpfung an. 
  +  Verteilte Caching-Lösung zur Verbesserung der Latenz und zur Reduzierung der Anzahl von Datenbank-E/A-Vorgängen. 
  +  Regelmäßige Wartung wie das Ausführen von Statistiken. 
+  Experimentieren und testen Sie Strategien in einer Nicht-Produktionsumgebung. 

## Ressourcen
<a name="resources"></a>

 **Zugehörige Dokumente:** 
+  [Bewährte Methoden für Amazon Aurora ](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.BestPractices.html?ref=wellarchitected) 
+  [Amazon Redshift-Leistung ](https://docs.aws.amazon.com/redshift/latest/dg/c_challenges_achieving_high_performance_queries.html?ref=wellarchitected) 
+  [Die besten 10 Leistungstipps für Amazon Athena](https://aws.amazon.com/blogs/big-data/top-10-performance-tuning-tips-for-amazon-athena/?ref=wellarchitected) 
+  [AWS-Datenbank-Caching ](https://aws.amazon.com/caching/database-caching/?ref=wellarchitected) 
+  [Bewährte Methoden für die Implementierung von Amazon ElastiCache](https://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/BestPractices.html) 
+  [Partitionierung von Daten in Athena](https://docs.aws.amazon.com/athena/latest/ug/partitions.html) 

 **Zugehörige Videos:** 
+  [Optimieren von Datenmustern mithilfe von Amazon Redshift Data Sharing](https://wellarchitectedlabs.com/sustainability/300_labs/300_optimize_data_pattern_using_redshift_data_sharing/) 
+  [Optimieren von Amazon Athena-Abfragen mit neuen Tools zur Abfrageanalyse ](https://www.youtube.com/watch?v=7JUyTqglmNU&ab_channel=AmazonWebServices) 

 **Zugehörige Beispiele:** 
+  [Amazon EFS-CSI-Treiber](https://github.com/kubernetes-sigs/aws-efs-csi-driver) 

# PERF03-BP05 Implementieren von Datenzugriffsmustern, die Caching nutzen
<a name="perf_data_access_patterns_caching"></a>

 Implementieren Sie Zugriffsmuster, die vom Daten-Cashing profitieren, damit häufig aufgerufene Daten schnell abgerufen werden können. 

 **Typische Anti-Muster:** 
+  Sie speichern Daten, die sich häufig ändern. 
+  Sie verlassen sich auf zwischengespeicherte Daten, als ob sie dauerhaft gespeichert und immer verfügbar wären. 
+  Sie berücksichtigen nicht die Konsistenz Ihrer zwischengespeicherten Daten. 
+  Sie überwachen die Effizienz Ihrer Caching-Implementierung nicht. 

 **Vorteile der Nutzung dieser bewährten Methode:** Das Speichern von Daten in einem Cache kann die Leselatenz, den Lesedurchsatz, die Benutzererfahrung und die Gesamteffizienz verbessern sowie die Kosten senken. 

 **Risikostufe bei fehlender Befolgung dieser Best Practice**: Mittel 

## Implementierungsleitfaden
<a name="implementation-guidance"></a>

 Ein Cache ist eine Software- oder Hardwarekomponente zum Speichern von Daten, damit zukünftige Abfragen derselben Daten schneller oder effizienter verarbeitet werden können. Die in einem Cache gespeicherten Daten können bei Verlust rekonstruiert werden, indem eine frühere Berechnung wiederholt wird oder die Daten aus einem anderen Datenspeicher abgerufen werden. 

 Das Cashing von Daten kann eine der effektivsten Strategien sein, um die allgemeine Anwendungsleistung zu verbessern und die Belastung Ihrer zugrunde liegenden primären Datenquellen zu verringern. Daten können auf mehreren Ebenen in der Anwendung zwischengespeichert werden, z. B. innerhalb der Anwendung, die Remoteanrufe tätigt (als *clientseitiges Caching* bezeichnet) oder indem Sie einen schnellen sekundären Service zum Speichern der Daten verwenden ( *Remote-Caching)*. 

 **Clientseitiges Caching** 

 Beim clientseitigen Caching kann jeder Client (eine Anwendung oder ein Service, die bzw. der den Backend-Datenspeicher abfragt) die Ergebnisse seiner eindeutigen Abfragen lokal für einen bestimmten Zeitraum speichern. So kann die Anzahl der Anfragen an einen Datenspeicher im Netzwerk reduziert werden, da zuerst der lokale Client-Cache überprüft wird. Wenn die Ergebnisse nicht vorhanden sind, kann die Anwendung den Datenspeicher abfragen und diese Ergebnisse lokal speichern. Dieses Muster ermöglicht es jedem Client, Daten am nächstgelegenen Ort (dem Client selbst) zu speichern, was zur geringstmöglichen Latenz führt. Clients können auch weiterhin einige Abfragen bearbeiten, wenn der Backend-Datenspeicher nicht verfügbar ist, wodurch die Verfügbarkeit des Gesamtsystems erhöht wird. 

 Ein Nachteil dieses Ansatzes besteht darin, dass bei Beteiligung mehrerer Clients diese möglicherweise dieselben zwischengespeicherten Daten lokal speichern. Dies führt sowohl zu doppelten Speichervorgängen als auch zu Dateninkonsistenzen zwischen diesen Clients. So kann z. B. ein Client die Ergebnisse einer Abfrage zwischenspeichern und eine Minute später führt ein anderer Client dieselbe Abfrage aus und erhält ein anderes Ergebnis. 

 **Remote-Caching** 

 Zum Lösen des Problems doppelter Daten zwischen Clients kann ein schneller externer Service oder *Remote-Cache* verwendet werden, um die abgefragten Daten zu speichern. Anstatt einen lokalen Datenspeicher zu überprüfen, prüft jeder Client den Remote-Cache, bevor er den Backend-Datenspeicher abfragt. Diese Strategie ermöglicht konsistentere Antworten zwischen den Clients, eine bessere Effizienz der gespeicherten Daten und ein höheres Volumen an zwischengespeicherten Daten, da der Speicherplatz unabhängig von den Clients skaliert wird. 

 Der Nachteil eines Remote-Caches besteht darin, dass das Gesamtsystem möglicherweise eine höhere Latenz aufweist, da ein zusätzlicher Netzwerk-Hop erforderlich ist, um den Remote-Cache zu überprüfen. Das clientseitige Caching kann in Kombination mit dem Remote-Caching verwendet werden, um ein mehrstufiges Caching zu implementieren und die Latenz zu verbessern. 

### Implementierungsschritte
<a name="implementation-steps"></a>

1.  Identifizieren Sie Datenbanken, APIs und Netzwerkservices, die vom Caching profitieren könnten. Services, die hohe Lese-Workloads oder ein hohes Lese-Schreib-Verhältnis aufweisen oder deren Skalierung teuer ist, kommen für das Caching in Frage. 
   +  [Datenbank-Caching](https://aws.amazon.com/caching/database-caching/) 
   +  [Aktivieren des API-Cachings zur Verbesserung der Reaktionsfähigkeit](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html) 

1.  Identifizieren Sie die geeignete Caching-Strategie, die am besten zu Ihrem Zugriffsmuster passt. 
   +  [Strategien für Zwischenspeicher](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Strategies.html) 
   +  [AWS-Caching-Lösungen](https://aws.amazon.com/caching/aws-caching/) 

1.  Folgen Sie den [bewährten Methoden für das Caching](https://aws.amazon.com/caching/best-practices/) für Ihren Datenspeicher. 

1.  Konfigurieren Sie eine Cache-Invalidierungsstrategie, z. B. eine Time-to-Live (TTL), für alle Daten, die ein Gleichgewicht zwischen der Aktualität der Daten und der Verringerung der Auslastung des Backend-Datenspeichers herstellt. 

1.  Aktivieren Sie Funktionen wie automatische Verbindungswiederholungen, exponentielles Backoff, clientseitige Timeouts und Verbindungspooling beim Client, sofern verfügbar, um die Leistung und Zuverlässigkeit zu verbessern. 
   +  [Bewährte Methoden: Redis-Clients und Amazon ElastiCache (Redis OSS)](https://aws.amazon.com/blogs/database/best-practices-redis-clients-and-amazon-elasticache-for-redis/) 

1.  Überwachen Sie die Cache-Trefferrate mit einem Ziel von mindestens 80 %. Niedrigere Werte können auf eine unzureichende Cache-Größe oder ein Zugriffsmuster hinweisen, das nicht vom Caching profitiert. 
   +  [Welche Metriken sollte ich überwachen?](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheMetrics.WhichShouldIMonitor.html) 
   +  [Bewährte Methoden für die Überwachung von Redis-Workloads auf Amazon ElastiCache](https://www.youtube.com/watch?v=c-hTMLN35BY) 
   +  [Bewährte Methoden für die Überwachung mit Amazon ElastiCache (Redis OSS) unter Verwendung von Amazon CloudWatch](https://aws.amazon.com/blogs/database/monitoring-best-practices-with-amazon-elasticache-for-redis-using-amazon-cloudwatch/) 

1.  Implementieren Sie [die Datenreplikation,](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Replication.Redis.Groups.html) um Lesevorgänge auf mehrere Instances auszulagern und die Leseleistung und Verfügbarkeit von Daten zu verbessern. 

## Ressourcen
<a name="resources"></a>

 **Zugehörige Dokumente:** 
+  [Verwenden von Amazon ElastiCache Well-Architected Lense](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/WellArchitechtedLens.html) 
+  [Bewährte Methoden für die Überwachung mit Amazon ElastiCache (Redis OSS) unter Verwendung von Amazon CloudWatch](https://aws.amazon.com/blogs/database/monitoring-best-practices-with-amazon-elasticache-for-redis-using-amazon-cloudwatch/) 
+  [Welche Metriken sollte ich überwachen?](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheMetrics.WhichShouldIMonitor.html) 
+  [Whitepaper „Skalierbare Leistung mit Amazon ElastiCache“](https://docs.aws.amazon.com/whitepapers/latest/scale-performance-elasticache/scale-performance-elasticache.html) 
+  [Caching-Herausforderungen und -Strategien](https://aws.amazon.com/builders-library/caching-challenges-and-strategies/) 

 **Zugehörige Videos:** 
+  [Lernpfad zu Amazon ElastiCache](https://pages.awscloud.com/GLB-WBNR-AWS-OTT-2021_LP_0003-DAT_AmazonElastiCache.html) 
+  [Design for success with Amazon ElastiCache best practices (Erfolgreiches Design mit bewährten Methoden für Amazon ElastiCache)](https://youtu.be/_4SkEy6r-C4) 

 **Zugehörige Beispiele:** 
+  [Boosting MySQL database performance with Amazon ElastiCache (Redis OSS) (Steigern der MySQL-Datenbankleistung mit Amazon ElastiCache for Redis)](https://aws.amazon.com/getting-started/hands-on/boosting-mysql-database-performance-with-amazon-elasticache-for-redis/) 