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. 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 protokołu OAuth 2.0, który przyznaje zakres bigquery.readonly, oprócz innych zakresów wymaganych w przypadku zwykłego żądania do interfejsu Google Sheets API. 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 ze ź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 utworzyć z niego 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 i UpdateCellsRequest utworzyć tabelę źródła danych zawierającą maksymalnie 1000 wierszy z 2 kolumnami (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 wyświetlająca dane z publicznego zbioru danych Szekspira.

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 odniesienie 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 ją odświeżyć.

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 ze ź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 utworzyć z niego obiekt źródła danych. W przypadku źródeł danych Lookera możesz utworzyć z nich tylko obiekt DataSource pivotTable.

Nie można tworzyć formuł, wyodrębnień i wykresów DataSource ze ź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 odniesienie 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 spreadsheets.get metody, 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.