Bağlı Sayfalar

Bağlı Sayfalar, petabaytlarca veriyi doğrudan Google E-Tablolar'da analiz etmenize olanak tanır. E-tablolarınızı bir BigQuery veri ambarına bağlayabilir ve pivot tablolar, grafikler ve formüller gibi bilindik E-Tablolar araçlarını kullanarak analiz yapabilirsiniz.

Bu kılavuzda, Bağlı Sayfalar'ın nasıl kullanılacağını göstermek için Shakespeare herkese açık veri kümesi kullanılmaktadır. Veri kümesi aşağıdaki bilgileri içerir:

Alan Tür Açıklama
kelime STRING Bir topluluktan çıkarılan tek bir benzersiz kelime (burada boşluk ayırıcıdır).
word_count INTEGER Bu kelimenin bu toplulukta kaç kez geçtiği.
topluluk STRING Bu kelimenin ayıklandığı eser.
corpus_date INTEGER Bu kitaplığın yayınlandığı yıl.

Uygulamanız herhangi bir Bağlı Sayfalar verisi istiyorsa normal bir Google E-Tablolar API isteği için gereken diğer kapsamlara ek olarak, bigquery.readonly kapsamını sağlayan bir OAuth 2.0 jetonu da sağlamalıdır. Daha fazla bilgi için Google Sheets API kapsamlarını seçme başlıklı makaleyi inceleyin.

Veri kaynağını yönetme

Veri kaynağı, verilerin bulunduğu harici bir konumu belirtir. Ardından veri kaynağı e-tabloya bağlanır.

BigQuery veri kaynağı ekleme

Veri kaynağı eklemek için spreadsheets.batchUpdate yöntemini kullanarak bir AddDataSourceRequest sağlayın. İsteğin gövdesi, DataSource nesnesi türünde bir dataSource alanı belirtmelidir.

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

PROJECT_ID öğesini geçerli bir Google Cloud proje kimliğiyle değiştirin.

Bir veri kaynağı oluşturulduktan sonra en fazla 500 satırın önizlemesini sunmak için ilişkili bir DATA_SOURCE sayfası oluşturulur. Önizleme hemen kullanılamaz. BigQuery verilerini içe aktarmak için eşzamansız olarak bir yürütme tetiklenir.

AddDataSourceResponse aşağıdaki alanları içerir:

  • dataSource: Oluşturulan DataSource nesnesi. dataSourceId, e-tablo kapsamlı benzersiz bir kimliktir. Veri kaynağından her bir DataSource nesnesini oluşturmak için doldurulur ve buna referans verilir.

  • dataExecutionStatus: BigQuery verilerini önizleme sayfasına aktaran bir yürütme işleminin durumudur. Daha fazla bilgi için Veri yürütme durumu bölümüne bakın.

Veri kaynağını güncelleme veya silme

spreadsheets.batchUpdate yöntemini kullanın ve uygun bir UpdateDataSourceRequest veya DeleteDataSourceRequest isteği sağlayın.

Veri kaynağı nesnelerini yönetme

E-tabloya bir veri kaynağı eklendikten sonra, söz konusu veri kaynağından bir veri kaynağı nesnesi oluşturulabilir. Veri kaynağı nesnesi, veri analizinizi desteklemek için Bağlı Sayfalar'la entegre edilmiş pivot tablolar, grafikler ve formüller gibi normal bir E-Tablolar aracıdır.

Dört tür nesne vardır:

  • DataSource tablo
  • DataSource pivotTable
  • DataSource grafiği
  • DataSource formül

Veri kaynağı tablosu ekleme

E-Tablolar düzenleyicisinde "ayıklama" olarak bilinen tablo nesnesi, veri kaynağından E-Tablolar'a verilerin statik bir dökümünü içe aktarır. Pivot tabloya benzer şekilde, tablo belirtilir ve sol üstteki hücreye sabitlenir.

Aşağıdaki kod örneğinde, en fazla 1.000 satırlık iki sütun (word ve word_count) içeren bir veri kaynağı tablosu oluşturmak için spreadsheets.batchUpdate yönteminin ve UpdateCellsRequest yönteminin nasıl kullanılacağı gösterilmektedir.

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

DATA_SOURCE_ID öğesini, veri kaynağını tanımlayan e-tablo kapsamlı benzersiz bir kimlikle değiştirin.

Veri kaynağı tablosu oluşturulduktan sonra veriler hemen kullanılamaz. E-Tablolar düzenleyicisinde önizleme olarak gösterilir. BigQuery verilerini getirmek için veri kaynağı tablosunu yenilemeniz gerekir. Aynı batchUpdate içinde bir RefreshDataSourceRequest belirtebilirsiniz. Tüm veri kaynağı nesnelerinin benzer bir şekilde çalıştığını unutmayın. Daha fazla bilgi için Veri kaynağı nesnesini yenileme konusuna bakın.

Yenileme tamamlandıktan ve BigQuery verileri getirildikten sonra veri kaynağı tablosu aşağıdaki gibi doldurulur:

Shakespeare herkese açık veri kümesindeki verileri gösteren veri kaynağı tablosu.

Veri kaynağı pivot tablosu ekleme

Geleneksel pivot tablodan farklı olarak, veri kaynağı pivot tablosu bir veri kaynağıyla desteklenir ve verileri sütun adına göre referans alır. Aşağıdaki kod örneğinde, topluluk bazında toplam kelime sayısını gösteren bir pivot tablo oluşturmak için spreadsheets.batchUpdate yönteminin ve UpdateCellsRequest yolunun nasıl kullanılacağı gösterilmektedir.

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

DATA_SOURCE_ID öğesini, veri kaynağını tanımlayan e-tablo kapsamlı benzersiz bir kimlikle değiştirin.

BigQuery verileri getirildikten sonra veri kaynağı pivot tablosu aşağıdaki gibi doldurulur:

Shakespeare herkese açık veri kümesindeki verileri gösteren veri kaynağı pivot tablosu.

Veri kaynağı grafiği ekleme

Aşağıdaki kod örneğinde, chartType COLUMN değeriyle veri kaynağı grafiğinin nasıl oluşturulacağı ve topluluk bazında toplam kelime sayısını göstermek için spreadsheets.batchUpdate yönteminin ve AddChartRequest yönteminin nasıl kullanılacağı gösterilmektedir.

"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"
      }
   }
}

DATA_SOURCE_ID öğesini, veri kaynağını tanımlayan e-tablo kapsamlı benzersiz bir kimlikle değiştirin.

BigQuery verileri getirildikten sonra veri kaynağı grafiği aşağıdaki gibi oluşturulur:

Shakespeare herkese açık veri kümesindeki verileri gösteren veri kaynağı grafiği.

Veri kaynağı formülü ekleme

Aşağıdaki kod örneğinde, ortalama kelime sayısını hesaplamak amacıyla bir veri kaynağı formülü oluşturmak için spreadsheets.batchUpdate yönteminin ve UpdateCellsRequest değerinin nasıl kullanılacağı gösterilmektedir.

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

BigQuery verileri getirildikten sonra veri kaynağı formülü aşağıdaki gibi doldurulur:

Shakespeare herkese açık veri kümesindeki verileri gösteren veri kaynağı formülü.

Veri kaynağı nesnesini yenileme

Mevcut veri kaynağı özelliklerine ve nesne yapılandırmalarına göre BigQuery'den en güncel verileri almak için bir veri kaynağı nesnesini yenileyebilirsiniz. RefreshDataSourceRequest yöntemini çağırmak için spreadsheets.batchUpdate yöntemini kullanabilirsiniz. Ardından DataSourceObjectReferences nesnesini kullanarak yenilenecek bir veya daha fazla nesne referansı belirtin.

Tek bir batchUpdate isteğinde hem veri kaynağı nesneleri oluşturup hem de yenileyebileceğinizi unutmayın.

Veri yürütme durumu

Veri kaynakları oluşturduğunuzda veya veri kaynağı nesnelerini yenilediğinizde, verileri BigQuery'den getirmek ve DataExecutionStatus ifadesini içeren bir yanıt döndürmek için bir arka planda yürütme işlemi oluşturulur. Yürütme başarıyla başlarsa DataExecutionState genellikle RUNNING durumunda olur.

İşlem eşzamansız olduğundan uygulamanızın, veri kaynağı nesnelerinin durumunu düzenli olarak almak için bir yoklama modeli uygulaması gerekir. Durum, SUCCEEDED veya FAILED durumunu döndürene kadar spreadsheets.get yöntemini kullanın. Yürütme çoğu durumda hızla tamamlanır ancak bu süre, veri kaynağınızın karmaşıklığına bağlıdır. Genellikle yürütme 10 dakikayı aşmaz.