Datenobjekte in Datastore werden als Entitäten bezeichnet. Jede Entität wird für Abfragen einer bestimmten Art zugewiesen. Wenn Sie beispielsweise eine Anwendung für das Personalwesen schreiben, können Sie jeden Mitarbeiter mit einer Entität der Art Employee
darstellen. Die Entitätsdatenwerte liegen dabei in Form von Attributen vor.
Weitere Informationen zu Entitäten finden Sie im Konzeptdokument Entitäten, Attribute und Schlüssel.
Entitäten erstellen und Attribute festlegen
Zum Erstellen einer neuen Entität in Go müssen Sie eine Instanz eines Go-Struct-Objekts anlegen, Werte für die zugehörigen Felder festlegen und die Entität mit datastore.Put
in Datastore speichern. Nur mit einem Großbuchstaben beginnende exportierte Felder werden in Datastore gespeichert. Sie können den Schlüsselnamen der Entität durch Übergabe eines nicht leeren stringID
-Arguments an datastore.NewKey
angeben.
Der folgende Beispielcode erstellt eine Entität der Art Employee
, gibt ihre Attributwerte an und speichert die Entität im Datenspeicher:
Mit dem Typ Employee
werden vier Felder für das Datenmodell deklariert: FirstName
, LastName
, HireDate
und AttendedHRTraining
.
Wenn Sie einen leeren Schlüsselnamen bereitstellen oder datastore.NewIncompleteKey
verwenden, generiert Datastore automatisch eine numerische ID für den Schlüssel der Entität:
Entitäten abrufen
Wenn Sie eine Entität mit einem bestimmten Schlüssel abrufen möchten, übergeben Sie den *datastore.Key
als Argument an die datastore.Get
-Funktion. Sie können den *datastore.Key
mit der Funktion datastore.NewKey
generieren.
datastore.Get
füllt eine Instanz des entsprechenden Go-STRUCTs mit Werten.
Entitäten aktualisieren
Zum Aktualisieren einer vorhandenen Entität ändern Sie die Attribute der Struktur und rufen anschließend datastore.Put
Die Daten überschreiben die vorhandene Entität. Bei jedem Aufruf von datastore.Put
wird das ganze Objekt an Datastore gesendet.
Entitäten löschen
Sie können eine Entität unter Angabe ihres Schlüssels mit der Funktion datastore.Delete
löschen.
Entitäten im Bulk löschen
Wenn Sie eine große Anzahl von Entitäten löschen müssen, empfehlen wir mit Dataflow Entitäten im Bulk zu löschen.
Batch-Vorgänge verwenden
Sie können die folgenden Batchvorgänge verwenden, wenn Sie mehrere Entitäten in einem einzigen Datastore-Aufruf bearbeiten möchten.
Es folgt ein Beispiel für einen Batchaufruf:
Die Durchführung von Aktionen als Batchvorgänge hat keine Auswirkungen auf Ihre Kosten. Jeder Schlüssel in einem Batchvorgang wird unabhängig davon in Rechnung gestellt, ob der Schlüssel vorhanden ist oder nicht. Die Größe der Entitäten in einem Vorgang wirkt sich nicht auf die Kosten aus.