Abstammungslinks aus mehreren Regionen abrufen

Im folgenden Pseudocode wird ein Verfahren beschrieben, mit dem Sie mithilfe der Data Lineage API Verknüpfungen zur Datenabfolge aus allen verfügbaren Regionen abrufen können.

  1. Eingabeeinrichtung:
  2. linksToFetch = 5 (Anzahl der Links, die aus allen Regionen abgerufen werden sollen)
  3. regionalPageToken = "" (letztes empfangenes regionales Seitentoken, das für die Paginierung verwendet wird)
  4. Erstellen:
    1. Liste aller Regionen, die verzweigt werden sollen, mit dem Namen regions.
    2. Liste der nicht erreichbaren Regionen mit dem Namen unreachable.
    3. eine leere Liste der gefundenen Links namens foundLinks.
    4. die Variablen nextPageToken und nextRegionalPageToken leer sind.
    5. eine leere Variable lastRegion.
    6. eine leere Variable lastRegionLinksCount.
  5. Sortieren Sie regions alphabetisch.
  6. Parsen regionalPageToken
    1. Wenn das Feld leer ist, fahren Sie mit Schritt 4 fort.
    2. Ist das Feld nicht leer, gehen Sie so vor:
      1. regionalPageToken wird durch den ersten Punkt in zwei Segmente unterteilt.
      2. Regionen herausfiltern, indem nur die berücksichtigt werden, die nach dem ersten Segment des geparsten regionalPageToken in alphabetischer Reihenfolge kommen.
      3. Speichern Sie das zweite Segment, um es in allen projects.locations.searchLinks-Aufrufen zu verwenden.
  7. Rufen Sie projects.locations.searchLinks parallel in jeder Region in der Liste regions auf.
  8. Warten Sie, bis alle Anfragen abgeschlossen sind.
  9. Filtern Sie erfolgreiche Antworten heraus und speichern Sie die Namen der fehlgeschlagenen Regionen in der Liste unreachable.
  10. Für jede der Antworten (beginnend mit der ersten Region in alphabetischer Reihenfolge)
    1. wenn keine Links zusammen mit einem nicht leeren Seitentoken zurückgegeben wurden
      1. Speichern Sie den Namen der Region in lastRegion.
      2. Speichern Sie das empfangene pageToken in nextPageToken.
      3. Ignorieren Sie die verbleibenden Antworten.
    2. otherwise
      1. Speichern Sie den Namen der Region in lastRegion.
      2. Sie können empfangene Links in foundLinks speichern (bis zu linksToFetch).
      3. Speichern Sie das empfangene pageToken in nextPageToken.
      4. Speichere die Anzahl der verwendeten Links aus der Antwort in lastRegionLinksCount.
      5. if foundLinks is less than linksToFetch
        1. Der Pseudocode wird mit der nächsten empfangenen Antwort in alphabetischer Reihenfolge fortgesetzt.
      6. wenn foundLinks gleich linksToFetch ist
        1. Stellen Sie eine weitere Anfrage an den Endpunkt projects.locations.searchLinks in derselben Region, aber legen Sie den Parameter pageSize auf den Wert lastRegionLinksCount fest.
        2. store hat das Seitentoken in nextPageToken empfangen.
        3. Fahren Sie mit Schritt 8 fort.
  11. Füge lastRegion vor nextPageToken ein (z.B. „[region].[receivedNextPageToken]“), um nextRegionalPageToken zu erstellen und die Paginierung in aufeinanderfolgenden Aufrufen zu steuern.