Ich versuche etwas ähnliches wie das BigQuery-Dashboard von Google zu erstellen, außer mit vordefinierten Abfragen/Ansichten. Das Problem, in das ich hineingeraten bin, paginiert die Daten.Paginieren von BigQuery
Die tabledata endpoint unterstützt Paginierung, dass Sie einen Startindex angeben oder eine Seite-Token verwenden, so dass mir so etwas tun:
query_reply = table_data_job.list(projectId=settings.PROJECT_ID,
datasetId=settings.DATASET_ID,
tableId=table,
startIndex=offset,
maxResults=page_size).execute()
Das Problem dabei ist, dass ich bestimmte Abfragen ausführen möchten (oder zumindest die Ergebnisse der Tabellendaten anordnen).
query_data = {'query': 'SELECT * FROM my_dataset.foo_table LIMIT %s' % page_size}
query_reply = job_collection.query(projectId=settings.PROJECT_ID,
body=query_data).execute()
Meiner Kenntnis nach gibt es keine Möglichkeit, einen Offset mit dem obigen Code zu machen. Ist das etwas, für das BigQuery nicht geeignet ist? Ich denke, die Alternative wäre, die Paginierung im Gedächtnis zu machen und an kleineren Ergebnismengen zu arbeiten?