Połączone arkusze

Połączone arkusze umożliwiają analizowanie petabajtów danych bezpośrednio w Arkuszach Google. Możesz połączyć arkusze kalkulacyjne z BigQuery lub Lookerem i przeprowadzić analizę za pomocą znanych narzędzi Arkuszy, takich jak tabele przestawne, wykresy i formuły.

Zarządzanie źródłem danych BigQuery

W tej sekcji pokazujemy, jak używać połączonych arkuszy, na przykładzie publicznego zbioru danych BigQuery Shakespeare. Ten zbiór danych zawiera te informacje:

Pole Typ Opis
słowo STRING Pojedyncze unikalne słowo (gdzie separatorem jest biały znak) wyodrębnione z korpusu.
word_count INTEGER Liczba wystąpień tego słowa w tym korpusie.
korpus STRING Utwór, z którego wyodrębniono to słowo.
corpus_date INTEGER Rok opublikowania tego korpusu.

Jeśli Twoja aplikacja wysyła prośbę o dane z połączonych arkuszy BigQuery, musi podać token OAuth 2.0, który oprócz innych zakresów wymaganych w przypadku zwykłego żądania interfejsu Google Sheets API przyznaje zakres bigquery.readonly. Więcej informacji znajdziesz w artykule Wybieranie zakresów Google Sheets API.

Źródło danych określa lokalizację zewnętrzną, w której znajdują się dane. Źródło danych jest następnie połączone z arkuszem kalkulacyjnym.

Dodawanie źródła danych BigQuery

Aby dodać źródło danych, podaj AddDataSourceRequest za pomocą spreadsheets.batchUpdate metody. Treść żądania powinna zawierać pole dataSource typu DataSource obiekt.

"addDataSource":{
   "dataSource":{
      "spec":{
         "bigQuery":{
            "projectId":"PROJECT_ID",
            "tableSpec":{
               "tableProjectId":"bigquery-public-data",
               "datasetId":"samples",
               "tableId":"shakespeare"
            }
         }
      }
   }
}

Zastąp PROJECT_ID prawidłowym identyfikatorem projektu Google Cloud.

Po utworzeniu źródła danych tworzony jest powiązany DATA_SOURCE arkusz, który zawiera podgląd maksymalnie 500 wierszy. Podgląd nie jest dostępny od razu. Asynchronicznie uruchamiane jest wykonanie, które importuje dane BigQuery.

AddDataSourceResponse zawiera te pola:

  • dataSource: utworzony obiekt DataSource. dataSourceId to unikalny identyfikator w obrębie arkusza kalkulacyjnego. Jest on wypełniany i używany do tworzenia każdego obiektu DataSource na podstawie źródła danych.

  • dataExecutionStatus: stan wykonania, które importuje dane BigQuery do arkusza podglądu. Więcej informacji znajdziesz w sekcji Stan wykonania danych.

Aktualizowanie lub usuwanie źródła danych BigQuery

Użyj metody spreadsheets.batchUpdate i podaj odpowiednio żądanie UpdateDataSourceRequest lub DeleteDataSourceRequest.

Zarządzanie obiektami źródła danych BigQuery

Po dodaniu źródła danych do arkusza kalkulacyjnego można na jego podstawie utworzyć obiekt źródła danych. Obiekt źródła danych to zwykłe narzędzie Arkuszy, takie jak tabele przestawne, wykresy i formuły, które jest zintegrowane z połączonymi arkuszami, aby ułatwić analizę danych.

Istnieją 4 typy obiektów:

  • tabela DataSource
  • DataSource pivotTable
  • wykres DataSource
  • formuła DataSource

Dodawanie tabeli źródła danych BigQuery

Obiekt tabeli, znany w edytorze Arkuszy jako „wyodrębnianie”, importuje statyczny zrzut danych ze źródła danych do Arkuszy. Podobnie jak tabela przestawna, tabela jest określana i zakotwiczana w lewej górnej komórce.

Ten przykładowy kod pokazuje, jak za pomocą spreadsheets.batchUpdate metody i UpdateCellsRequest utworzyć tabelę źródła danych zawierającą maksymalnie 1000 wierszy i 2 kolumny (word i word_count).

"updateCells":{
   "rows":{
      "values":[
         {
            "dataSourceTable":{
               "dataSourceId":"DATA_SOURCE_ID",
               "columns":[
                  {
                     "name":"word"
                  },
                  {
                     "name":"word_count"
                  }
               ],
               "rowLimit":{
                  "value":1000
               },
               "columnSelectionType":"SELECTED"
            }
         }
      ]
   },
   "fields":"dataSourceTable"
}

Zastąp DATA_SOURCE_ID unikalnym identyfikatorem w obrębie arkusza kalkulacyjnego, który identyfikuje źródło danych.

Po utworzeniu tabeli źródła danych dane nie są od razu dostępne. W edytorze Arkuszy są one wyświetlane jako podgląd. Aby pobrać dane BigQuery, musisz odświeżyć tabelę źródła danych. Możesz określić a RefreshDataSourceRequest w tym samym batchUpdate. Pamiętaj, że wszystkie obiekty źródła danych działają podobnie. Więcej informacji znajdziesz w artykule Odświeżanie obiektu źródła danych.

Po zakończeniu odświeżania i pobraniu danych BigQuery tabela źródła danych zostanie wypełniona w sposób pokazany poniżej:

Tabela źródła danych zawierająca dane z publicznego zbioru danych Shakespeare.

Dodawanie tabeli przestawnej źródła danych BigQuery

W przeciwieństwie do zwykłej tabeli przestawnej tabela przestawna źródła danych jest oparta na źródle danych i odwołuje się do danych według nazwy kolumny. Ten przykładowy kod pokazuje, jak za pomocą metody spreadsheets.batchUpdate i UpdateCellsRequest utworzyć tabelę przestawną, która pokazuje łączną liczbę słów według korpusu.

"updateCells":{
   "rows":{
      "values":[
         {
            "pivotTable":{
               "dataSourceId":"DATA_SOURCE_ID",
               "rows":{
                  "dataSourceColumnReference":{
                     "name":"corpus"
                  },
                  "sortOrder":"ASCENDING"
               },
               "values":{
                  "summarizeFunction":"SUM",
                  "dataSourceColumnReference":{
                     "name":"word_count"
                  }
               }
            }
         }
      ]
   },
   "fields":"pivotTable"
    }

Zastąp DATA_SOURCE_ID unikalnym identyfikatorem w obrębie arkusza kalkulacyjnego, który identyfikuje źródło danych.

Po pobraniu danych BigQuery tabela przestawna źródła danych zostanie wypełniona w sposób pokazany poniżej:

Tabela przestawna źródła danych zawierająca dane z publicznego zbioru danych Shakespeare.

Dodawanie wykresu źródła danych BigQuery

Ten przykładowy kod pokazuje, jak za pomocą metody spreadsheets.batchUpdate i AddChartRequest utworzyć wykres źródła danych z chartType ustawionym na COLUMN, który pokazuje łączną liczbę słów według korpusu.

"addChart":{
   "chart":{
      "spec":{
         "title":"Corpus by word count",
         "basicChart":{
            "chartType":"COLUMN",
            "domains":[
               {
                  "domain":{
                     "columnReference":{
                        "name":"corpus"
                     }
                  }
               }
            ],
            "series":[
               {
                  "series":{
                     "columnReference":{
                        "name":"word_count"
                     },
                     "aggregateType":"SUM"
                  }
               }
            ]
         }
      },
      "dataSourceChartProperties":{
         "dataSourceId":"DATA_SOURCE_ID"
      }
   }
}

Zastąp DATA_SOURCE_ID unikalnym identyfikatorem w obrębie arkusza kalkulacyjnego, który identyfikuje źródło danych.

Po pobraniu danych BigQuery wykres źródła danych zostanie wyrenderowany w sposób pokazany poniżej:

Wykres źródła danych przedstawiający dane z publicznego zbioru danych Shakespeare.

Dodawanie formuły źródła danych BigQuery

Ten przykładowy kod pokazuje, jak za pomocą metody spreadsheets.batchUpdate i UpdateCellsRequest utworzyć formułę źródła danych, która oblicza średnią liczbę słów.

"updateCells":{
   "rows":[
      {
         "values":[
            {
               "userEnteredValue":{
                  "formulaValue":"=AVERAGE(shakespeare!word_count)"
               }
            }
         ]
      }
   ],
   "fields":"userEnteredValue"
}

Po pobraniu danych BigQuery formuła źródła danych zostanie wypełniona w sposób pokazany poniżej:

Formuła źródła danych pokazująca dane z publicznego zbioru danych Shakespeare.

Odświeżanie obiektu źródła danych BigQuery

Możesz odświeżyć obiekt źródła danych, aby pobrać najnowsze dane z BigQuery na podstawie bieżących specyfikacji źródła danych i konfiguracji obiektu. Możesz użyć metody spreadsheets.batchUpdate , aby wywołać RefreshDataSourceRequest. Następnie określ co najmniej 1 odwołanie do obiektu, który ma zostać odświeżony, za pomocą obiektu DataSourceObjectReferences.

Pamiętaj, że możesz zarówno tworzyć, jak i odświeżać obiekty źródła danych w ramach jednego żądania batchUpdate.

Zarządzanie źródłem danych Lookera

Z tego przewodnika dowiesz się, jak dodać źródło danych Lookera, zaktualizować je lub usunąć, utworzyć na jego podstawie tabelę przestawną i odświeżyć ją.

Twoja aplikacja, która wysyła prośbę o dane z połączonych arkuszy Lookera, będzie ponownie używać istniejącego połączenia konta Google z Lookerem.

Dodawanie źródła danych Lookera

Aby dodać źródło danych, podaj AddDataSourceRequest za pomocą spreadsheets.batchUpdate metody. Treść żądania powinna zawierać pole dataSource typu DataSource obiekt.

"addDataSource":{
   "dataSource":{
      "spec":{
         "looker":{
            "instance_uri":"INSTANCE_URI",
            "model":"MODEL",
            "explore":"EXPLORE"
         }
      }
   }
}

Zastąp INSTANCE_URI, MODEL i EXPLORE odpowiednio prawidłowym adresem URI instancji Lookera, nazwą modelu i nazwą eksploracji.

Po utworzeniu źródła danych tworzony jest powiązany DATA_SOURCE arkusz, który zawiera podgląd struktury wybranej eksploracji, w tym widoków, wymiarów, miar i opisów pól.

AddDataSourceResponse zawiera te pola:

  • dataSource: utworzony obiekt DataSource. dataSourceId to unikalny identyfikator w obrębie arkusza kalkulacyjnego. Jest on wypełniany i używany do tworzenia każdego obiektu DataSource na podstawie źródła danych.

  • dataExecutionStatus: stan wykonania, które importuje dane BigQuery do arkusza podglądu. Więcej informacji znajdziesz w sekcji Stan wykonania danych.

Aktualizowanie lub usuwanie źródła danych Lookera

Użyj metody spreadsheets.batchUpdate i podaj odpowiednio żądanie UpdateDataSourceRequest lub DeleteDataSourceRequest.

Zarządzanie obiektami źródła danych Lookera

Po dodaniu źródła danych do arkusza kalkulacyjnego można na jego podstawie utworzyć obiekt źródła danych. W przypadku źródeł danych Lookera można na ich podstawie utworzyć tylko obiekt DataSource pivotTable.

Nie można tworzyć formuł, wyodrębnień i wykresów DataSource na podstawie źródeł danych Lookera.

Odświeżanie obiektu źródła danych Lookera

Możesz odświeżyć obiekt źródła danych, aby pobrać najnowsze dane z Lookera na podstawie bieżących specyfikacji źródła danych i konfiguracji obiektu. Możesz użyć metody spreadsheets.batchUpdate , aby wywołać RefreshDataSourceRequest. Następnie określ co najmniej 1 odwołanie do obiektu, który ma zostać odświeżony, za pomocą obiektu DataSourceObjectReferences.

Pamiętaj, że możesz zarówno tworzyć, jak i odświeżać obiekty źródła danych w ramach jednego żądania batchUpdate.

Stan wykonania danych

Gdy tworzysz źródła danych lub odświeżasz obiekty źródła danych, tworzone jest wykonanie w tle, które pobiera dane z BigQuery lub Lookera i zwraca odpowiedź zawierającą DataExecutionStatus. Jeśli wykonanie rozpocznie się pomyślnie, DataExecutionState jest zwykle w stanie RUNNING.

Ponieważ proces jest asynchroniczny, Twoja aplikacja powinna implementować model sondowania, aby okresowo pobierać stan obiektów źródła danych. Używaj metody spreadsheets.get , dopóki stan nie przyjmie wartości SUCCEEDED lub FAILED. W większości przypadków wykonanie kończy się szybko, ale zależy to od złożoności źródła danych. Zwykle wykonanie nie trwa dłużej niż 10 minut.