Skip to main content
Skip table of contents

Amazon S3 DynamoDB Connector

Dieser Adapter speichert Daten im Amazon S3 DynamoDB Storage und ermöglicht die Verwendung der X4 BPMS, um Daten in Cloud-Umgebungen zu persistieren. Amazon S3 DynamoDB ist ein vollständig verwalteter NoSQL-Datenbankdienst, der schnelle und vorhersehbare Leistung bei nahtloser Skalierbarkeit gewährleistet. 

Eigenschaften (Properties)

Operation

Vom Adapter ausgeführte Operation

Mögliche Werte:

  • CreateTable: Erstellt eine Tabelle mit Tabellenname und Primärschlüssel.
    Erforderliche Parameter: tableName, partitionKey, partitionType. Für sortierbare Schlüssel zusätzlich sortKey, sortType. Für AutoScaling zusätzlich scalingMinCapacity, scalingMaxCapacity, scalingTargetValue, scalingInCooldown, scalingOutCooldown, scalableType, arnRole

  • UpdateTable: Aktualisiert vorhandene Tabellen und ändert die Read/Write Capacity Units.
    Erforderliche Parameter: tableName, partitionKey, readCapacityUnits, writeCapacityUnits

  • ListTable: Listet alle Tabellen auf.

  • EnableAutoScaling: Aktiviert AutoScaling für eine bestehende Tabelle mit dem entsprechenden scalableType (Read/Write).
    Erforderliche Parameter: tableName, scalingMinCapacity, scalingMaxCapacity, scalingTargetValue, scalingInCooldown. scalingOutCooldown, scalableType, arnRole

  • DisableAutoScaling: Deaktiviert AutoScaling für eine bestehende Tabelle mit dem entsprechenden scalableType (Read/Write).
    Erforderliche Parameter: tableName, scalableType

  • PutItem: Empfängt ein XML-Input mit der Struktur des zu platzierenden Elements.
    Erforderliche Parameter: tableName

  • BatchPutMultipleItems: Fügt mehrere Elemente in einem einzigen Aufruf ein.
    Erforderliche Parameter: tableName

    Erforderliche Dateien

    Für diese Operation wird eine Input-XML-Datei benötigt, die die Elemente enthält.

  • UpdateItem: Aktualisiert das spezifische Element.
    Erforderliche Parameter: keyID, secretKey, region, tableName, partitionKey, partitionKeyValue

  • GetItem: Ruft das spezifische Element ab.
    Erforderliche Parameter: tableName, partitionKey, partitionType, partitionKeyValue (muss mit dem Element, das abgerufen werden soll übereinstimmen). Bei sortierbaren Schlüsseln zusätzlich sortKey, sortType, sortKeyValue.

  • BatchGetMultipleItems: Ruft mehrere Elemente abhängig von den Werten von partitionKey, die in einer XML-Datei spezifiziert sind. Alle Elemente werden mit allen Elementattributen abgeholt.
    Erforderliche Parameter: tableName, partitionKey, partitionType, partitionKeyValue (muss mit dem Element, das abgerufen werden soll übereinstimmen). Bei sortierbaren Schlüsseln zusätzlich sortKey, sortType, sortKeyValue.

  • Delete: Löscht Element oder Tabelle gemäß den konfigurierten Parametern.

    Wenn tableName und die Primärschlüssel-Elemente angegeben sind, dann löscht die Operation Deletedas spezifische Element. Wenn nur tableName angegeben ist, dann löscht die Operation Delete die Tabelle.

  • BatchDeleteMultipleItems: Löscht mehrere Elemente in einem einzigen Aufruf.
    Erforderliche Parameter: tableName

    Erforderliche Dateien

    Für diese Operation wird eine Input-XML-Datei benötigt, die die Elemente enthält.

  • Query:  Ruft Teilmenge von Elementen innerhalb einer Tabelle ab. Für die verschiedenen Attribute werden Bedingungen angegeben. Weitere Informationen zur Input-Datei, die die Query aufruft, siehe Input-Abschnitt.
    Erforderliche Parameter: tableName, partitionKey

    partitionKey ist obligatorisch und der Komparator ist immer "=". Wenn sortKey vorhanden ist, ist der Komparator zwischen partitionKey und sortKey "AND".

    Erlaubte Operatoren:=, >, <, >=, <=, !=, BETWEEN, begins_with

Parameter

Adapter

Adapter-Hauptklasse (nicht verändern!)

Mögliche Werte: de.softproject.integration.adapter.amazondynamodb.AmazonDynamoDBAdapter: Hauptklasse (Standard)

keyID

Zugangsschlüssel-ID für Anfragen an AWS (Amazon Web Services)

(info) Die Zugangsdaten werden über Parameter an den Adapter gesendet. Dabei gibt es verschiedene Konfigurationsmöglichkeiten, siehe Zugangsdaten einrichten.

Mögliche Werte: Beliebige Zeichenkette mit der Zugangsschlüssel-ID, z. B.  AKIAIOSFODNN7EXAMPLE

secretKey

Geheimer Zugangsschlüssel für Anfragen an AWS

(info) Die Zugangsdaten werden über Parameter an den Adapter gesendet. Dabei gibt es verschiedene Konfigurationsmöglichkeiten, siehe Zugangsdaten einrichten.

Mögliche Werte: Beliebige Zeichenkette mit der geheimen Zugangsschlüssel, z. B.  wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

region

Region der Domains

Mögliche Werte: Beliebige Zeichenkette mit dem Namen der Region, z. B.  us-east-2

(info) Buckets, die in einer bestimmten Region erstellt wurden, können nicht von einer anderen Region aus aufgerufen werden, siehe Regionen und Endpoints.

tableName

Tabellen-Name

Mögliche Werte: Beliebige Zeichenkette mit dem Tabellen-Namen

Folgende Namensregeln gelten für Tabellen-Namen:

  • Alle Namen müssen UTF-8-kodiert sein
  • Die Groß- und Kleinschreibung muss beachtet werden
  • Tabellennamen und Indexnamen müssen zwischen 3 und 255 Zeichen lang sein und dürfen nur folgende Zeichen enthalten:
    • a-z
    • A-Z
    • 0-9
    • _ (Unterstrich)
    • - (Bindestrich)
    • . (Punkt)
  • Attributnamen müssen zwischen 1 und 255 Zeichen lang sein.
partitionKey, partitionType und partitionKeyValue

Elemente des Tabellen-Primärschlüssels

Mögliche Werte:

  • PartitionKey: Name des Partitionsschlüssels
  • PartitionType: Partitionstyp
    • S: Das Attribut ist eine Zeichenkette
    • N: Das Attribut ist eine Zahl
    • B: Das Attribut ist vom Typ Binär
  • PartitionKeyValue: Wert des Elements; Wird für die Operationen GetItem und BatchGetMultiple Items benötigt.
sortKey, sortType and sortKeyValue

Elemente des Tabellen-Primärschlüssels

Mögliche Werte:

  • SortKey: Name des Sortierschlüssels
  • SortType: Sortiertyp
    • S: Das Attribut ist eine Zeichenkette
    • N: Das Attribut ist eine Zahl
    • B: Das Attribut ist vom Typ Binär
  • SortKeyValue: Wert des Elements; Wird für die Operation GetItem benötigt
readCapacityUnits, writeCapacitiyUnits

Read/Write Capacity Units

Mögliche Werte:

  • Integer Capacity Units
scalableType

Definiert den Skalierbarkeitstyp für AutoScaling.

Mögliche Werte:

  • ReadCapacity
  • WriteCapacity
autoScaling

Legt fest, dass die Tabelle mithilfe von AutoScaling erstellt wird. Im Fall einer Überprüfung müssen alle Scaling-Parameter angegeben werden.

Mögliche Werte:

  • true
  • false
scalingMinCapacity, scalingMaxCapacity, scalingTargetValue, scalingInCooldown, scalingOutCooldown

Definiert die Scaling-Parameter für AutoScaling.

Mögliche Werte:

arnRole

ARN der Rolle, die autorisiert ist, AutoScaling für die Tabellenressource anzuwenden.

Mögliche Werte:

consistentRead

DynamoDB verwendet Eventually Consistent Reads, sofern nichts anderes angeben ist. Leseoperationen wie GetItem und Query liefern einen ConsistentRead-Parameter. Wenn dieser Parameter auf true gesetzt ist, verwendet DynamoDB während des Betriebs Strongly Consistent Reads.

Statuswerte

1

Die Adapter-Operation wurde erfolgreich ausgeführt

0

Operation Delete:

  • Das Element existiert nicht
  • Die Tabelle existiert nicht
-1Bei der Ausführung des Adapters kam es zu einem Fehler

Input

Der Adapter erwartet eine vordefinierte XML-Struktur als Input. Die Struktur ist abhängig von der verwendeten Operation.

  • PutItem-Operation:

    Erwartete Struktur für die Operation PutItem

    XML
    <?xml version="1.0" encoding="UTF-8"?>
    <RootElement>
    	<Item>
    		<Attribute name="..Name of PartionKey.." type="..Type of Partition.." value="..Value of PartitionKey.."/>
    		<Attribute name="..Name of SortKey.." type="..Type of Sort.." value="..Value of SortKey.."/>
    		<Attribute name="..Attribute Name.." type="..Attribute Type.." value="..Attribute Value.."/>
    	</Item>
    </RootElement>

    Für die Operation PutItem gibt es keine Einschränkungen für Elementnamen. Die Attribute name, value und type sind jedoch erforderlich.

  • BatchGetMultipleItems-Operation:

    Erwartete Struktur für die Operation BatchGetMultipleItems

    XML
    <?xml version="1.0" encoding="UTF-8" ?>
    <PrimaryKeyValues>
    	<PrimaryKey partitionKey="2" SortKey="Carlos" />
    	<PrimaryKey partitionKey="5" SortKey="Luis" />
    </PrimaryKeyValues>

    Primary Keys können für verschiedene Objekte spezifiziert werden. Wenn das Objekt mit einer Tabelle übereinstimmt, in der nur partitionKey definiert ist, darf nur partitionKey angegeben werden, andernfalls partitionKey und SortKey.

  • BatchPutMultipleItems-Operation:

    Erwartete Struktur für die Operation BatchPutMultipleitems

    XML
    <?xml version="1.0" encoding="UTF-8" ?>
    <RootElement>
    	<Item>
    		<Attribute name="ID" type="N" value="5" />
    		<Attribute name="Name" type="S" value="Luis" />
    		<Attribute name="Phone" type="N" value="0034666777888" />
    		<Attribute name="Bonus" type="BOOL" value="true" />
    		<Attribute name="Colours" type="LIST">
    			<Attribute type="S" value="Red" />
    			<Attribute type="S" value="Green" />
    			<Attribute type="S" value="Blue" />
    			<Attribute name="Cars" type="MAP">
    				<Attribute5 name="Phone" type="N" value="637559681" />
    				<Attribute6 name="Bonus" type="BOOL" value="true" />
    				<Attribute7 name="Profession" type="S" value="Programmer" />
    				<Attribute7 name="DocumentCode" type="B" value="qwrqfgdas1223455sdfffr" />
    			</Attribute>
    		</Attribute>
    		<Attribute name="Cars" type="MAP">
    			<Attribute5 name="Phone" type="N" value="637559681" />
    			<Attribute6 name="Bonus" type="BOOL" value="true" />
    			<Attribute7 name="Profession" type="S" value="Programmer" />
    			<Attribute7 name="DocumentCode" type="B" value="qwrqfgdas1223455sdfffr" />
    		</Attribute>
    	</Item>
    	<Item>
    		<Attribute1 name="ID" type="N" value="5" />
    		<Attribute3 name="Name" type="S" value="Luis" />
    		<Attribute4 name="Surname" type="S" value="Delgado" />
    		<Attribute2 name="Address" type="S" value="Pirandello" />
    		<Attribute5 name="Phone" type="N" value="637559681" />
    		<Attribute6 name="Bonus" type="BOOL" value="true" />
    		<Attribute7 name="Profession" type="S" value="Programmer" />
    		<Attribute7 name="DocumentCode" type="B" value="qwrqfgdas1223455sdfffr" />
    	</Item>
    </RootElement>

    Es können mehrere Items spezifiziert werden. In den Items können Attribute vom Typ Boolean (BOOL), String (S), Number (N), Map (MAP), List (LIST) und Binary (B) spezifiziert werden. Der Output dieser Operation ist dieselbe XML-Datei. Das kann für weitere Operationen nützlich sein.

  • BatchDeleteMultipleItems-Operation:

    Erwartete Struktur für die Operation BatchDeleteMultipleItems

    XML
    <?xml version="1.0" encoding="UTF-8" ?>
    <RootElement>
    	<Item>
    		<Attribute1 name="ID" type="N" value="7" />
    		<Attribute7 name="Name" type="S" value="Luis" />
    	</Item>
    	<Item>
    		<Attribute1 name="ID" type="N" value="6" />
    		<Attribute7 name="Name" type="S" value="Luis" />
    	</Item>
    </RootElement>

    In diesem Input werden die Primärschlüssel der Elemente angegeben, die gelöscht werden sollen. Wenn der Primärschlüssel nur aus dem partitionKey besteht, wird nur der partionKey benötigt. Wenn der Primärschlüssel aus partitionKey und SortKey besteht, werden beide Schlüssel benötigt, damit das zu löschende Element eindeutig ist. Der Output dieser Operation ist auch der Input.

  • UpdateItem-Operation:

    Erwartete Struktur für die Operation updateItem

    XML
    <?xml version="1.0" encoding="UTF-8"?>
    <Input>
    	<Item>
    		<Attribute name="ID" type="N" value="5"
    			action="ADD|PUT|DELETE"></Attribute>
    		<Attribute name="Name" type="S" value="Luis"
    			action="ADD|PUT|DELETE"></Attribute>
    		<Attribute name="Surname" type="S" value="Delgado"
    		action="ADD|PUT|DELETE"></Attribute>
    	</Item>
    </Input>


    Actions für updateItem

    ADD: Fügt ein neues Attribut im Element hinzu.

    PUT: Aktualisiert den Wert des Attribut im angegebenen Element.

    DELETE: Löscht das Attribut aus dem Element.


  • Query-Operation:

    Erwartete Struktur für die Operation Query

    XML
    <?xml version="1.0" encoding="UTF-8" ?>
    <Query>
    	<KeyCondition>ID=:param1</KeyCondition>
    	<OtherFilters>Colors[3].Profession=:param3 or DocumentCode=:param2</OtherFilters>
    	<QueryParameters>
    		<Parameter type="N" alias=":param1" value="5" />
    		<Parameter type="B" alias=":param2" value="cXdycWZnZGFzMTIyMzQ1NXNkZmZmcg==" />
    		<Parameter type="S" alias=":param3" value="Programmer" />
    	</QueryParameters>
    </Query>

    Das Elternelement Query enthält drei Elemente:

    • KeyCondition: enthält nur den spezifischen partitionKey und falls vorhanden SortKey, die folgende Bedingungen erfüllen:

      • Der Komparator zwischen partitionKey und SortKey ist immer "AND".

      • partitionKey ist obligatorisch und wird immer mit "=" verwendet.
      • Wenn SortKey verwendet wird, können folgende Operatoren verwendet werden: =, >, <, >=, <=, !=, BETWEEN, begins_with
      • partitionKey und SortKey dürfen nicht mit für AWS DynamoDB reservierten Wörtern übereinstimmen.
    • OtherFilters: spezifiziert Bedingungen für die restlichen Attribute, die nicht Teil des Primärschlüssels sind. Die betroffenen Attribute dürfen nicht mit für AWS Dynamo DB reservierten Wörtern übereinstimmen.
    • QueryParameters: spezifiziert das Mapping zwischen den verwendeten Parametern und Ihren entsprechenden Werten. Der Typ jedes Parameters muss spezifiziert werden.

Output

Je nach Operation gibt der Adapter Daten in verschiedenen XML-Strukturen aus:

  • GetItem-Operation

    Beispiel-Output für die Operation GetItem

    XML
    <?xml version="1.0" encoding="UTF-8"
    <Result>
    	<Item partitionKey="ID" partitionKeyValue="2" SortKey="Name" SortKeyValue="Carlos">
    		<Attribute name="Address" type="S" value="Pirandello"/>
    		<Attribute name="Phone" type="N" value="637559681"/>
    		<Attribute name="Bonus" type="BOOL" value="true"/>
    		<Attribute name="DocumentCode" type="B" value="qwrqfgdas1223455sdfffr"/>
    		<Attribute name="Surname" type="S" value="Delgado"/>
    		<Attribute name="Profession" type="S" value="Programmer"/>
    	</Item>
    </Result>
  • BatchGetMultipleItems-Operation:

    Beispiel-Output für die Operation BatchGetMultipleItems

    XML
    <?xml version="1.0" encoding="UTF-8" ?>
    <Result>
    	<Item partitionKey="ID" partitionKeyValue="5" SortKey="Name" SortKeyValue="Luis">
    	<Attribute type="MAP" name="Cars">
    			<Attribute type="N" name="Phone" value="637559681" />
    			<Attribute type="BOOL" name="Bonus" value="true" />
    			<Attribute type="B" name="DocumentCode" value="qwrqfgdas1223455sdfffr" />
    	<Attribute type="S" name="Profession" value="Programmer" />
    	</Attribute>
    		<Attribute type="N" name="Phone" value="34666777888" />
    	<Attribute type="LIST" name="Colours">
    			<Attribute type="S" value="Red" />
    			<Attribute type="S" value="Green" />
    	<Attribute type="S" value="Blue" />
    			<Attribute type="MAP" name="Colours">
    				<Attribute type="N" name="Phone" value="637559681" />
    				<Attribute type="BOOL" name="Bonus" value="true" />
    				<Attribute type="B" name="DocumentCode" value="qwrqfgdas1223455sdfffr" />
    				<Attribute type="S" name="Profession" value="Programmer" />
    	</Attribute>
    	</Attribute>
    		<Attribute type="BOOL" name="Bonus" value="true" />
    	</Item>
    	<Item partitionKey="ID" partitionKeyValue="2" SortKey="Name" SortKeyValue="Carlos">
    		<Attribute type="S" name="Address" value="Pirandello" />
    		<Attribute type="N" name="Phone" value="637559681" />
    		<Attribute type="BOOL" name="Bonus" value="true" />
    	<Attribute type="B" name="DocumentCode" value="qwrqfgdas1223455sdfffr" />
    		<Attribute type="S" name="Surname" value="Delgado" />
    		<Attribute type="S" name="Profession" value="Programmer" />
    	</Item>
    </Result>

    Für jedes Element entsteht ein Item-Element mit Feldern für den Primärschlüssel und die dazugehörigen Werte. Innerhalb des Item-Elements findet sich eine Liste der dazugehörigen Attribute.

  • ListTables-Operation

    Beispiel-Output für die Operation ListTables

    XML
    <?xml version="1.0" encoding="UTF-8" ?>
    <Result>
    	<sampleItems />
    </Result>

    Es wirt ein Elternelement Result geliefert, das ein Element für jede Tabelle enthält, die im Account deklariert ist.

  • Query-Operation

    Beispiel-Output für die Operation Query

    XML
    <?xml version="1.0" encoding="UTF-8" ?>
    <Result hasMorePages="false">
    	<Item>
    		<Attribute value="{Phone=637559681, Bonus=true, DocumentCode=[B@231dee4d, Profession=Programmer}" name="Cars" />
    		<Attribute value="34666777888" name="Phone" />
    		<Attribute value="[Red, Green, Blue, {Phone=637559681, Bonus=true, DocumentCode=[B@5857d888, Profession=Programmer}]" name="Colours" />
    	<Attribute value="true" name="Bonus" />
    	<Attribute value="5" name="ID" />
    	<Attribute value="Luis" name="Name" />
    	</Item>
    </Result>

    Es wird ein Elternelement Result geliefert. Das Attribut hasMorePages gibt an, ob das Ergebnis noch mehr Seiten hat, die angezeigt werden sollen oder nicht. Das ist hilfreich bei umfangreichen Antworten. Für jedes Element, das die Abfragebedingungen erfüllt, wirt ein Item-Element erzeugt, das alle Attribute enthält.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.