

Nach reiflicher Überlegung haben wir uns entschieden, Amazon Kinesis Data Analytics für SQL-Anwendungen einzustellen:

1. Ab dem **1. September 2025** werden wir keine Bugfixes für Amazon Kinesis Data Analytics for SQL-Anwendungen bereitstellen, da wir aufgrund der bevorstehenden Einstellung nur eingeschränkten Support dafür haben werden.

2. Ab dem **15. Oktober 2025** können Sie keine neuen Kinesis Data Analytics for SQL-Anwendungen mehr erstellen.

3. Wir werden Ihre Anwendungen ab dem **27. Januar 2026** löschen. Sie können Ihre Amazon Kinesis Data Analytics for SQL-Anwendungen nicht starten oder betreiben. Ab diesem Zeitpunkt ist kein Support mehr für Amazon Kinesis Data Analytics for SQL verfügbar. Weitere Informationen finden Sie unter [Einstellung von Amazon Kinesis Data Analytics für SQL-Anwendungen](discontinuation.md).

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Verwenden einer Lambda-Funktion als Ausgabe
<a name="how-it-works-output-lambda"></a>

Wenn Sie es AWS Lambda als Ziel verwenden, können Sie Ihre SQL-Ergebnisse einfacher nachbearbeiten, bevor Sie sie an ein endgültiges Ziel senden. Zu gängigen Aufgaben der Nachverarbeitung gehören:
+ Aggregieren von mehreren Zeilen in einem einzigen Datensatz
+ Kombinieren aktueller Ergebnisse mit vorherigen Ergebnissen für die Einordnung spät eintreffender Daten
+ Bereitstellung auf verschiedene Ziele abhängig von der Art von Informationen
+ Aufzeichnung von Formatumsetzungen (z. B. die Umsetzung in Protobuf)
+ Bearbeitung oder Transformation von Zeichenfolgen
+ Datenanreicherung nach der analytischen Verarbeitung
+ Benutzerdefinierte Verarbeitung für koordinatenbasierte Anwendungsfälle
+ Datenverschlüsselung

Lambda-Funktionen können analytische Informationen für eine Vielzahl von AWS Diensten und anderen Zielen bereitstellen, darunter die folgenden:
+ [Amazon Simple Storage Service (Amazon-S3)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/)
+ Benutzerdefiniert APIs
+ [Amazon-DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/)
+ [Amazon Aurora](http://aurora.apache.org/)
+ [Amazon-Redshift](https://docs.aws.amazon.com/redshift/latest/dg/)
+ [Amazon-Simple-Notification-Service (Amazon-SNS)](https://docs.aws.amazon.com/sns/latest/dg/)
+ [Amazon-Simple-Queue-Service (Amazon SQS)](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/)
+ [Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/)

Weitere Informationen zum Erstellen von Lambda-Anwendungen finden Sie unter [Erste Schritte mit AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/getting-started.html).

**Topics**
+ [Berechtigungen für Lambda als Ausgabe](#how-it-works-output-lambda-perms)
+ [Lambda als Ausgabemetriken](#how-it-works-output-lambda-metrics)
+ [Ereignis-Eingabedatenmodell und Datensatz-Antwortmodell von Lambda als Ausgabe](#how-it-works-output-lambda-model)
+ [Häufigkeit der Lambda-Ausgabeaufrufe](#how-it-works-output-lambda-frequency)
+ [Hinzufügen einer Lambda-Funktion zur Verwendung als Ausgabe](#how-it-works-output-lambda-procedure)
+ [Häufige Lambda-Ausgabefehler](#how-it-works-output-lambda-troubleshooting)
+ [Erstellen von Lambda-Funktionen für Anwendungsziele](how-it-works-output-lambda-functions.md)

## Berechtigungen für Lambda als Ausgabe
<a name="how-it-works-output-lambda-perms"></a>

Um Lambda als Ausgabe verwenden zu können, benötigt die IAM-Rolle für die Lambda-Ausgabe der Anwendung die folgende Berechtigungsrichtlinie:

```
{
   "Sid": "UseLambdaFunction",
   "Effect": "Allow",
   "Action": [
       "lambda:InvokeFunction",
       "lambda:GetFunctionConfiguration"
   ],
   "Resource": "{{FunctionARN}}"
}
```

## Lambda als Ausgabemetriken
<a name="how-it-works-output-lambda-metrics"></a>

Sie verwenden Amazon CloudWatch , um die Anzahl der gesendeten Byte, Erfolge und Misserfolge usw. zu überwachen. Informationen zu CloudWatch Metriken, die von Kinesis Data Analytics mithilfe von Lambda als Ausgabe ausgegeben werden, finden Sie unter [Amazon Kinesis](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/aka-metricscollected.html) Analytics Analytics-Metriken.

## Ereignis-Eingabedatenmodell und Datensatz-Antwortmodell von Lambda als Ausgabe
<a name="how-it-works-output-lambda-model"></a>

Um Kinesis Data Analytics-Ausgabedatensätze senden zu können, muss Ihre Lambda-Funktion mit den erforderlichen Ereignis-Eingabedaten- und Datensatz-Antwortmodellen konform sein. 

### Ereignis-Eingabedatenmodell
<a name="how-it-works-output-lambda-model-request"></a>

Kinesis Data Analytics sendet die Ausgabedatensätze mit dem folgenden Anforderungsmodell fortlaufend von der Anwendung als Ausgabefunktion an die Lambda-Funktion. Innerhalb Ihrer Funktion durchlaufen Sie die Liste und wenden Ihre Geschäftslogik an, um Ihre Ausgabeanforderungen (z. B. Datentransformation vor dem senden an ein endgültiges Ziel) zu erfüllen.


<table>
<thead>
  <tr><th>Feld</th><th>Description</th></tr>
</thead>
<tbody>
  <tr><td>invocationId</td><td>Die Lambda -Aufrufs-ID (zufällige GUID).</td></tr>
  <tr><td>applicationArn</td><td>Der Amazon-Ressourcenname (ARN) der Kinesis Data Analytics-Anwendung.</td></tr>
  <tr><td colspan="2">Datensätze [See the AWS documentation website for more details](http://docs.aws.amazon.com/de_de/kinesisanalytics/latest/dev/how-it-works-output-lambda.html) </td></tr>
</tbody>
</table>


**Anmerkung**  
`retryHint` ist ein Wert, der sich bei jedem Zustellungsfehler erhöht. Dieser Wert wird nicht dauerhaft gespeichert und wird zurückgesetzt werden, wenn die Anwendung unterbrochen wird.

### Datensatz-Antwortmodell
<a name="how-it-works-output-lambda-model-response"></a>

Jeder Datensatz, der als Ausgabefunktion (mit Datensatz IDs) an Ihr Lambda gesendet wird`DeliveryFailed`, muss entweder mit `Ok` oder bestätigt werden und er muss die folgenden Parameter enthalten. Andernfalls wird er von Kinesis Data Analytics als unzustellbar behandelt.


| Feld | Description | 
| --- | --- | 
| Datensätze [See the AWS documentation website for more details](http://docs.aws.amazon.com/de_de/kinesisanalytics/latest/dev/how-it-works-output-lambda.html)  | 
| recordId | Die Datensatz-ID wird während des Aufrufs von Kinesis Data Analytics an Lambda übertragen. Jede fehlende Übereinstimmung zwischen der ID des ursprünglichen Datensatzes und der ID des bestätigten Datensatzes wird als Zustellungsfehler behandelt. | 
| result | Der Status der Datensatzzustellung. Folgende Werte sind möglich: [See the AWS documentation website for more details](http://docs.aws.amazon.com/de_de/kinesisanalytics/latest/dev/how-it-works-output-lambda.html)  | 

## Häufigkeit der Lambda-Ausgabeaufrufe
<a name="how-it-works-output-lambda-frequency"></a>

Eine Kinesis Data Analytics-Anwendung puffert die Ausgabedatensätze und ruft häufig die AWS Lambda -Zielfunktion auf.
+ Wenn Datensätze als Taumelfenster an den anwendungsinternen Zielstream innerhalb der Datenanalyseanwendung ausgegeben werden, wird die AWS Lambda Zielfunktion pro Taumelfenster-Trigger aufgerufen. Wenn z. B. ein rollierendes Fenster von 60 Sekunden verwendet wird, um die Datensätze an den In-Application-Stream des Ziels auszugeben, wird die Lambda-Funktion einmal alle 60 Sekunden aufgerufen.
+ Wenn Datensätze innerhalb der Anwendung als fortlaufende Abfrage oder gleitendes Fenster zum In-Application-Stream des Ziels gesendet werden, wird die Lambda-Zielfunktion ca. einmal pro Sekunde aufgerufen.

**Anmerkung**  
[Pro Aufruf der Lambda-Funktion gelten Nutzlastgrenzwerte](https://docs.aws.amazon.com/lambda/latest/dg/limits.html). Beim Überschreiten dieser Limits erhalten Sie Ausgabedatensätze, die über mehrere Lambda-Funktionsaufrufe aufgeteilt und gesendet werden.

## Hinzufügen einer Lambda-Funktion zur Verwendung als Ausgabe
<a name="how-it-works-output-lambda-procedure"></a>

Das folgende Verfahren veranschaulicht, wie Sie die Lambda-Funktion als Ausgabe für eine Kinesis Data Analytics-Anwendung hinzufügen.

1. [Melden Sie sich bei der Managed Service for Apache Flink-Konsole unter /kinesisanalytics an AWS-Managementkonsole und öffnen Sie sie. https://console.aws.amazon.com](https://console.aws.amazon.com/kinesisanalytics)

1. Wählen Sie die Anwendung in der Liste aus und klicken Sie dann auf **Application details**.

1. Klicken Sie im Bereich **Destination** auf **Connect new destination**.

1. Wählen Sie für das Element **Destination (Ziel)** die Option **AWS Lambda function (-Funktion)**.

1. Wählen Sie im Bereich **Datensätze an AWS Lambda liefern** entweder eine vorhandene Lambda-Funktion aus oder klicken Sie auf **Neu erstellen**.

1. Wenn Sie eine neue Lambda-Funktion erstellen, verfahren Sie wie folgt:

   1. Wählen Sie eine der bereitgestellten Vorlagen. Weitere Informationen finden Sie unter [Erstellen von Lambda-Funktionen für Anwendungsziele](how-it-works-output-lambda-functions.md).

   1. Die Seite **Create Function** (Funktion erstellen) wird in einer neuen Webbrowser-Registerkarte geöffnet. Geben Sie im Feld **Name** der Funktion einen sinnvollen Namen (z. B. **myLambdaFunction**).

   1. Aktualisieren Sie die Vorlage mit Nachverarbeitungsfunktionalität für Ihre Anwendung. Weitere Informationen zum Erstellen einer Lambda-Funktion finden Sie unter [Erste Schritte](https://docs.aws.amazon.com/lambda/latest/dg/getting-started.html) im *AWS Lambda -Entwicklerhandbuch*.

   1. Wählen Sie in der Kinesis Data Analytics-Konsole aus der Liste **Lambda-Funktionen** die gerade erstellte Lambda-Funktion aus. Wählen Sie **$LATEST** für die Lambda-Funktionsversion.

1. Wählen Sie im Bereich **In-application stream** die Option **Choose an existing in-application stream** aus. Wählen Sie für **In-application stream name** den Ausgabe-Stream Ihrer Anwendung aus. Die Ergebnisse aus dem ausgewählten Ausgabe-Stream werden zur Lambda-Ausgabefunktion gesendet.

1. Belassen Sie im Formular die übrigen Standardwerte und wählen Sie **Save and continue**.

Ihre Anwendung sendet nun Datensätze aus dem In-Application-Stream zu Ihrer Lambda-Funktion. Sie können die Ergebnisse der Standardvorlage in der CloudWatch Amazon-Konsole sehen. Überwachen Sie die Metrik `AWS/KinesisAnalytics/LambdaDelivery.OkRecords`, um die Anzahl der Datensätze zu sehen, die an die Lambda-Funktion übermittelt werden.

## Häufige Lambda-Ausgabefehler
<a name="how-it-works-output-lambda-troubleshooting"></a>

Nachfolgend werden die häufigsten Gründe aufgeführt, aus denen die Übermittlung an die Lambda-Funktion fehlschlagen kann.
+ Nicht alle Datensätze (mit Datensatz IDs) in einem Batch, die an die Lambda-Funktion gesendet werden, werden an den Kinesis Data Analytics Analytics-Dienst zurückgegeben. 
+ In der Antwort fehlt entweder die Datensatz-ID oder das Statusfeld. 
+ Die Zeitüberschreitungen der Lambda-Funktion sind für den Abschluss der Geschäftslogik innerhalb der Lambda-Funktion nicht ausreichend.
+ Die Geschäftslogik innerhalb der Lambda-Funktion erfasst nicht alle Fehler. Dies führt aufgrund unbehandelter Ausnahmen zu einer Zeitüberschreitung und einer zu hohen Auslastung. Diese werden oft als Poison-Pill-Nachrichten bezeichnet.

Bei Datenübermittlungsfehlern führt Kinesis Data Analytics Lambda-Aufrufe für dieselbe Gruppe von Datensätzen erneut durch, bis der Aufruf erfolgreich ist. Um Einblick in Fehler zu erhalten, können Sie die folgenden CloudWatch Metriken überwachen: 
+ Kinesis Data Analytics Analytics-Anwendung Lambda as CloudWatch Output-Metriken: Gibt unter anderem die Anzahl der Erfolge und Misserfolge an. Weitere Informationen finden Sie unter [Amazon-Kinesis-Analytics-Metriken](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/aka-metricscollected.html).
+ AWS Lambda CloudWatch Funktionsmetriken und Protokolle.