Ich verwende eine relay/graphql/googlecloud-Einrichtung für ein Projekt, das Daten unwiderruflich speichert.Die aktuelle Version jedes Datensatzes mit der Google Cloud Datastore-Abfrage zurücksenden
Ich habe eine Reihe von Feldern, die einen neuen Datensatz jedes Mal, wenn eine Änderung erstellen auf eines der Felder gemacht strukturiert wie folgt:
Project
- Start Date
- End Date
- Description
- ...
- ...
Das erste Mal, wenn ein Projekt erstellt wird mit einem Zeitstempel gespeichert wird und eine Versionsnummer. Zum Beispiel:
Alle Änderungen nach diesem erstellt eine neue Versionsnummer, aber immer noch den gleichen Zeitstempel.
1470065550-2
Wenn man bedenkt, dass es unveränderlich ist, wird es möglicherweise viele Versionen eines Projekts geben. Wenn es auch viele Projekte gibt, kann dies dazu führen, dass eine große Anzahl von Datensätzen geholt wird.
Wenn ich eine Liste von Projekten aus dem Datenspeicher abrufen möchte, gebe ich nur die jeweils neueste Version zurück, was der beste Weg wäre geht das? Wenn die Versionsnummer inkrementiert wird, weiß ich nie, welcher der neueste ist.
Zum Beispiel, wenn ich Reihen hatte zwei Projekte enthalten, die beide mit mehreren Versionen und ich mag die neueste Version von jedem holen:
1470065550-1
1470065550-2
1470065550-3
1470065550-4
1470065550-5
1470065550-6
1470065550-7 <--- Current Version for 1470065550
1567789887-1
1567789887-2
1567789887-3 <--- Current Version for 1567789887
Basierend auf den obigen Zeilen ich die Abfrage muß nur die neuesten zurückkehren Version der beiden Projekte:
1470065550-7 <--- Current Version for 1470065550
1567789887-3 <--- Current Version for 1567789887
"Wenn die Versionsnummer inkrementiert wird, weiß ich nie, welche die letzte ist." <- das macht keinen Sinn. Können Sie mir bitte erklären, warum Sie die letzte Versionsnummer eines Projekts nicht kennen? –
Ich habe ein Beispiel hinzugefügt. Sorry, ich war anfangs nicht sehr klar – BennyTicklez