Der folgende Pseudocode beschreibt ein Verfahren, mit dem Sie die Data Lineage API verwenden können, um Data Lineage-Links aus allen verfügbaren Regionen abzurufen.
- Eingabeeinrichtung:
linksToFetch
= 5 (Anzahl der Links, die aus allen Regionen abgerufen werden sollen)regionalPageToken
= „“ (das letzte für die Paginierung verwendete regionale Seitentoken)- Erstellen:
- Liste aller Regionen, die als Fan-Out bezeichnet werden, namens
regions
. - Liste der nicht erreichbaren Regionen namens
unreachable
. - eine leere Liste gefundener Links namens
foundLinks
. - eine leere Variable
nextPageToken
undnextRegionalPageToken
. - eine leere Variable
lastRegion
. - eine leere Variable
lastRegionLinksCount
.
- Liste aller Regionen, die als Fan-Out bezeichnet werden, namens
regions
alphabetisch sortieren.regionalPageToken
parsen- Wenn es leer ist, fahren Sie mit Schritt 4 fort.
- Wenn es nicht leer ist,
- Parsen Sie
regionalPageToken
, indem Sie es durch den ersten Punkt in zwei Segmente aufteilen - filtern Sie Regionen aus, indem Sie nur die Regionen nach dem ersten Segment in geparsten
regionalPageToken
übernehmen (in alphabetischer Reihenfolge). - Speichern Sie das zweite Segment, damit es in allen projects.locations.searchLinks-Aufrufen verwendet werden kann.
- Parsen Sie
- Rufen Sie projects.locations.searchLinks in jeder Region in der
regions
-Liste parallel auf. - Warten Sie, bis alle Anfragen abgeschlossen sind.
- Filtern Sie erfolgreiche Antworten heraus und speichern Sie fehlgeschlagene Regionsnamen in der
unreachable
-Liste. - Für jede Antwort (beginnend mit der ersten Region in alphabetischer Reihenfolge)
- wenn keine Links mit einem nicht leeren Seitentoken zurückgegeben wurden
- Name der Geschäftsregion in
lastRegion
. - Speichern Sie das empfangene pageToken in
nextPageToken
. - die verbleibenden Antworten ignorieren.
- Name der Geschäftsregion in
- andernfalls
- Name der Geschäftsregion in
lastRegion
. - Erhaltene Links in
foundLinks
speichern (bis zulinksToFetch
). - Speichern Sie das empfangene pageToken in
nextPageToken
. - Anzahl der übernommenen Links aus der Antwort in
lastRegionLinksCount
. - wenn
foundLinks
kleiner alslinksToFetch
ist- Setze den Pseudocode mit der nächsten erhaltenen Antwort in alphabetischer Reihenfolge fort.
- wenn
foundLinks
gleichlinksToFetch
ist- stellen Sie eine weitere Anfrage an den Endpunkt projects.locations.searchLinks in derselben Region, setzen Sie den Parameter
pageSize
jedoch auf den WertlastRegionLinksCount
. - Speichern Sie das empfangene pageToken in
nextPageToken
. - Weiter mit Schritt 8
- stellen Sie eine weitere Anfrage an den Endpunkt projects.locations.searchLinks in derselben Region, setzen Sie den Parameter
- Name der Geschäftsregion in
- wenn keine Links mit einem nicht leeren Seitentoken zurückgegeben wurden
- Stellen Sie „nextPageToken“ dem
lastRegion
voran (d.h. „[region].[receivedNextPageToken]“), umnextRegionalPageToken
zu erstellen, um die Paginierung in aufeinanderfolgenden Aufrufen zu verarbeiten.