Referenz zum Amazon Ion-Datenformat in Amazon QLDB - Amazon Quantum Ledger-Datenbank (AmazonQLDB)

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.

Referenz zum Amazon Ion-Datenformat in Amazon QLDB

Wichtig

Hinweis zum Ende des Supports: Bestandskunden können Amazon QLDB bis zum Ende des Supports am 31.07.2025 nutzen. Weitere Informationen finden Sie unter Migrieren eines Amazon QLDB Ledgers zu Amazon Aurora SQL Postgre.

Amazon QLDB verwendet ein Datennotationsmodell, das Amazon Ion mit einer Teilmenge von PartiQL-Typen vereint. Dieser Abschnitt bietet eine Referenzübersicht über das Ion-Dokument-Datenformat, unabhängig von dessen Integration in PartiQL.

Abfragen von Ion mit PartiQL in Amazon QLDB

Informationen zur Syntax und Semantik der Abfrage von Ion-Daten mit PartiQL in finden Sie Abfragen von Ion mit PartiQL in QLDB der Amazon QLDB PartiQL-Referenz.

Codebeispiele, die Ion-Daten in einem QLDB Ledger abfragen und verarbeiten, finden Sie unter und. Beispiele für Amazon Ion-Code Arbeiten mit Amazon Ion

Was ist Amazon Ion?

Hierbei handelt es sich um ein Open-Source-, stark typisiertes, selbstbeschreibendes, hierarchisches Daten-Serialisierungsformat, das ursprünglich intern bei Amazon entwickelt wurde. Es basiert auf einem abstrakten Datenmodell, mit dem Sie sowohl strukturierte als auch unstrukturierte Daten speichern können. Es ist eine Obermenge vonJSON, was bedeutet, dass jedes gültige JSON Dokument auch ein gültiges Ion-Dokument ist. In diesem Handbuch werden Grundkenntnisse in der JSON Praxis vorausgesetzt. Falls Sie damit noch nicht vertraut sindJSON, finden Sie JSON weitere Informationen unter Einführung.

Sie können Ion-Dokumente austauschbar entweder in Form von lesbarem Text oder in binär-kodierter Form verwenden. Das Textformular ist zum Beispiel JSON leicht zu lesen und zu schreiben und unterstützt so die schnelle Prototypenerstellung. Die binäre Codierung ist kompakter und lässt sich effizient beibehalten, übertragen und analysieren. Ein Ion-Prozessor kann zwischen beiden Formaten transcodieren, um genau denselben Satz an Datenstrukturen ohne Datenverlust darzustellen. Mit dieser Funktion können Anwendungen die Art und Weise, wie sie Daten verarbeiten, für verschiedene Anwendungsfälle optimieren.

Anmerkung

Das Ion-Datenmodell basiert ausschließlich auf Werten und unterstützt keine Referenzen. Auf diese Weise kann das Datenmodell Hierarchien darstellen, die in beliebiger Tiefe verschachtelt werden können, jedoch keine gezielten Diagramme.

Ionenspezifikation

Eine vollständige Liste der Ion-Core-Datentypen mit vollständigen Beschreibungen und Angaben zur Wertformatierung finden Sie im Ion-Spezifikationsdokument auf der GitHub Amazon-Website.

Um die Anwendungsentwicklung zu optimieren, bietet Amazon Ion Client-Bibliotheken, die Ion-Daten für Sie verarbeiten. Codebeispiele für gängige Anwendungsfälle für die Verarbeitung von Ion-Daten finden Sie im Amazon Ion Cookbook unter. GitHub

JSONkompatibel

Ähnlich JSON wie erstellen Sie Amazon Ion-Dokumente mit einer Reihe von primitiven Datentypen und einer Reihe von rekursiv definierten Containertypen. Ion umfasst die folgenden traditionellen JSON Datentypen:

  • null: Ein generischer, nicht typisierter Null-Wert (leer). Außerdem unterstützt Ion einen eindeutigen Null-Typ für jeden primitiven Typ, wie im folgenden Abschnitt beschrieben.

  • bool: Boolesche Werte.

  • string: Unicode-Textliterale.

  • list: Zulässige heterogene Sammlungen von Werten.

  • struct: Nicht zulässige Sammlungen von Schlüssel-Wert-Paaren. Like JSON struct erlaubt mehrere Werte pro Name, aber davon wird generell abgeraten.

Erweiterungen von JSON

Arten von Zahlen

Anstelle des mehrdeutigen JSON number Typs definiert Amazon Ion Zahlen strikt als einen der folgenden Typen:

  • int: Signierte Ganzzahlen von beliebiger Größe.

  • decimal: Dezimal-kodierte echte Zahlen von beliebiger Präzision.

  • float: Binär kodierte Fließkommazahlen (64-Bit). IEEE

Beim Analysieren von Dokumenten weist ein Ion-Prozessor Zahlentypen wie folgt zu:

  • int: Zahlen ohne Exponent oder Dezimaltrennzeichen (z. B. 100200).

  • decimal: Zahlen mit einem Dezimaltrennzeichen und keinem Exponent (z. B. 0.00001, 200.0).

  • float: Zahlen mit einem Exponenten, wie z. B. einer wissenschaftlichen Notation oder E-Notation (z. B. 2e0, 3.1e-4).

Neue Datentypen

Amazon Ion fügt die folgenden Datentypen hinzu:

  • timestamp: Datums-/Uhrzeit-/Zeitzonen-Momente von beliebiger Präzision.

  • symbol: Symbolische Unicode-Atome (z. B. Kennungen).

  • blob: Binäre Daten der benutzerdefinierten Kodierung.

  • clob: Textdaten der benutzerdefinierten Kodierung.

  • sexp: Zulässige Sammlungen von Werten mit anwendungsdefinierter Semantik.

Nulltypen

Zusätzlich zu dem generischen Nulltyp, der von definiert istJSON, unterstützt Amazon Ion einen eigenen Nulltyp für jeden primitiven Typ. Dies gibt einen fehlenden Wert an, während ein strenger Datentyp beibehalten wird.

null null.null // Identical to untyped null null.bool null.int null.float null.decimal null.timestamp null.string null.symbol null.blob null.clob null.struct null.list null.sexp

Beispiel für einen Ion-Text

// Here is a struct, which is similar to a JSON object. { // Field names don't always have to be quoted. name: "fido", // This is an integer. age: 7, // This is a timestamp with day precision. birthday: 2012-03-01T, // Here is a list, which is like a JSON array. toys: [ // These are symbol values, which are like strings, // but get encoded as integers in binary. ball, rope ], }

APIVerweise