Wie konvertiere ich mit boto3 manuell vom DynamoDB-Verbindungsprotokoll zum nativen Python-Objekt?

Ich habe ein Lambda, das von einem DynamoDB-Stream ausgelöst wird. Die Lambda führt eine Verarbeitung durch und erstellt dann eine Benachrichtigung zu einem Thema in SNS. Idealerweise möchte ich das gesamte neue Dokument in die Benachrichtigung einbeziehen, die an SNS gesendet wird, damit nachgeschaltete Clients nicht auf DynamoDB klicken müssen, um die Daten abzurufen.

Das Problem, auf das ich stoße, ist, dass die Daten aus dem DynamoDB-Stream im DynamoDB-Wire-Format vorliegen (die Zuordnungen enthalten den Datentyp als Schlüssel). Wenn ich die Benachrichtigung an nachgeschaltete Clients sende, möchte ich nicht, dass diese das DynamoDB-Wire-Format verstehen, um die Nachricht zu analysieren (wenn ich beispielsweise zu einem neuen zugrunde liegenden Datenspeicher wechsle, muss ich dieses Format neu erstellen).

Offensichtlich ist der boto3-Client in der Lage, dieses Format in ein Python-Objekt zu analysieren. Gibt es eine Möglichkeit, auf den Parser selbst zuzugreifen? Soweit ich weiß, wird es beim Abrufen von Daten aus DynamoDB aufgerufen, aber ich kann es nicht selbst aufrufen.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage