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şturulanDataSource
nesnesi.dataSourceId
, e-tablo kapsamlı benzersiz bir kimliktir. Veri kaynağından her birDataSource
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
tabloDataSource
pivotTableDataSource
grafiğiDataSource
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:
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:
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:
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:
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.
İlgili konular
- Google Sheets API kapsamlarını seçme
- Google E-Tablolar'da BigQuery verilerini kullanmaya başlama
- BigQuery belgeleri
- BigQuery: Bağlı Sayfalar'ı kullanma
- Bağlı Sayfalar eğitim videosu