Connected Sheets به شما امکان میدهد پتابایتها داده را مستقیماً در Google Sheets تجزیه و تحلیل کنید. میتوانید صفحات گسترده خود را به یک انبار داده BigQuery یا Looker متصل کنید و با استفاده از ابزارهای آشنای Sheets مانند جداول محوری، نمودارها و فرمولها، تجزیه و تحلیل را انجام دهید.
مدیریت منبع داده BigQuery
این بخش از مجموعه دادههای عمومی BigQuery Shakespeare برای نشان دادن نحوه استفاده از Connected Sheets استفاده میکند. این مجموعه دادهها شامل اطلاعات زیر است:
| میدان | نوع | توضیحات |
|---|---|---|
| کلمه | STRING | یک کلمه منحصر به فرد (که در آن فاصله، جداکننده است) که از یک مجموعه متن استخراج شده است. |
| تعداد_کلمه | INTEGER | تعداد دفعاتی که این کلمه در این مجموعه ظاهر میشود. |
| پیکره | STRING | اثری که این کلمه از آن استخراج شده است. |
| corpus_date | INTEGER | سالی که این مجموعه منتشر شده است. |
اگر برنامه شما درخواست هرگونه داده BigQuery Connected Sheets را داشته باشد، باید یک توکن OAuth 2.0 ارائه دهد که علاوه بر سایر حوزههای مورد نیاز برای یک درخواست API معمولی Google Sheets، دامنه bigquery.readonly را نیز اعطا کند. برای اطلاعات بیشتر، به Choose Google Sheets API scopes مراجعه کنید.
یک منبع داده، یک مکان خارجی را مشخص میکند که دادهها در آن یافت میشوند. سپس منبع داده به صفحه گسترده متصل میشود.
یک منبع داده BigQuery اضافه کنید
برای افزودن یک منبع داده، با استفاده از متد spreadsheets.batchUpdate یک AddDataSourceRequest ارائه دهید. بدنه درخواست باید یک فیلد dataSource از نوع شیء DataSource را مشخص کند.
"addDataSource":{
"dataSource":{
"spec":{
"bigQuery":{
"projectId":"PROJECT_ID",
"tableSpec":{
"tableProjectId":"bigquery-public-data",
"datasetId":"samples",
"tableId":"shakespeare"
}
}
}
}
}
PROJECT_ID با یک شناسه پروژه معتبر Google Cloud جایگزین کنید.
پس از ایجاد منبع داده، یک برگه DATA_SOURCE مرتبط ایجاد میشود تا پیشنمایشی از حداکثر ۵۰۰ ردیف ارائه دهد. پیشنمایش بلافاصله در دسترس نیست. یک اجرا به صورت غیرهمزمان برای وارد کردن دادههای BigQuery آغاز میشود.
AddDataSourceResponse شامل فیلدهای زیر است:
dataSource: شیءDataSourceایجاد شده.dataSourceIdیک شناسه منحصر به فرد در محدوده صفحه گسترده است. برای ایجاد هر شیءDataSourceاز منبع داده، مقداردهی و به آن ارجاع داده میشود.dataExecutionStatus: وضعیت اجرایی که دادههای BigQuery را به برگه پیشنمایش وارد میکند. برای اطلاعات بیشتر، به بخش وضعیت اجرای دادهها مراجعه کنید.
بهروزرسانی یا حذف منبع داده BigQuery
از متد spreadsheets.batchUpdate استفاده کنید و بر اساس آن، یک درخواست UpdateDataSourceRequest یا DeleteDataSourceRequest ارائه دهید.
مدیریت اشیاء منبع داده BigQuery
پس از افزودن یک منبع داده به صفحه گسترده، میتوان یک شیء منبع داده از آن ایجاد کرد. یک شیء منبع داده، یک ابزار معمولی Sheets مانند جداول محوری، نمودارها و فرمولها است که با Connected Sheets ادغام شده تا تجزیه و تحلیل دادههای شما را تقویت کند.
چهار نوع شیء وجود دارد:
- جدول
DataSource - جدول محوری
DataSource - نمودار
DataSource - فرمول
DataSource
یک جدول منبع داده BigQuery اضافه کنید
شیء جدول که در ویرایشگر Sheets به عنوان "extract" شناخته میشود، یک dump ایستا از دادهها را از منبع داده به Sheets وارد میکند. مشابه یک جدول محوری، جدول مشخص شده و به سلول بالا سمت چپ متصل میشود.
نمونه کد زیر نحوه استفاده از متد spreadsheets.batchUpdate و UpdateCellsRequest را برای ایجاد یک جدول منبع داده تا سقف ۱۰۰۰ ردیف و دو ستون ( word و word_count ) نشان میدهد.
"updateCells":{
"rows":{
"values":[
{
"dataSourceTable":{
"dataSourceId":"DATA_SOURCE_ID",
"columns":[
{
"name":"word"
},
{
"name":"word_count"
}
],
"rowLimit":{
"value":1000
},
"columnSelectionType":"SELECTED"
}
}
]
},
"fields":"dataSourceTable"
}
DATA_SOURCE_ID با یک شناسه منحصر به فرد در محدوده صفحه گسترده که منبع داده را مشخص میکند، جایگزین کنید.
پس از ایجاد جدول منبع داده، دادهها بلافاصله در دسترس نیستند. در ویرایشگر Sheets، به عنوان پیشنمایش نشان داده میشوند. برای دریافت دادههای BigQuery، باید جدول منبع داده را بهروزرسانی کنید. میتوانید یک RefreshDataSourceRequest را در همان batchUpdate مشخص کنید. توجه داشته باشید که همه اشیاء منبع داده به طور مشابه کار میکنند. برای اطلاعات بیشتر، به Refresh a data source object مراجعه کنید.
پس از اتمام بهروزرسانی و دریافت دادههای BigQuery، جدول منبع داده مطابق شکل زیر پر میشود:

یک جدول محوری منبع داده BigQuery اضافه کنید
برخلاف یک جدول محوری مرسوم، یک جدول محوری منبع داده توسط یک منبع داده پشتیبانی میشود و دادهها را بر اساس نام ستون ارجاع میدهد. نمونه کد زیر نحوه استفاده از متد spreadsheets.batchUpdate و یک UpdateCellsRequest برای ایجاد یک جدول محوری نشان میدهد که تعداد کل کلمات را بر اساس مجموعه دادهها نشان میدهد.
"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 با یک شناسه منحصر به فرد در محدوده صفحه گسترده که منبع داده را مشخص میکند، جایگزین کنید.
پس از واکشی دادههای BigQuery، جدول محوری منبع داده مطابق شکل زیر پر میشود:

اضافه کردن نمودار منبع داده BigQuery
نمونه کد زیر نحوه استفاده از متد spreadsheets.batchUpdate و AddChartRequest را برای ایجاد یک نمودار منبع داده با chartType از COLUMN نشان میدهد که تعداد کل کلمات را بر اساس مجموعه دادهها نشان میدهد.
"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 با یک شناسه منحصر به فرد در محدوده صفحه گسترده که منبع داده را مشخص میکند، جایگزین کنید.
پس از دریافت دادههای BigQuery، نمودار منبع داده به صورت زیر رندر میشود:

فرمول منبع داده BigQuery را اضافه کنید
نمونه کد زیر نحوه استفاده از متد spreadsheets.batchUpdate و UpdateCellsRequest را برای ایجاد یک فرمول منبع داده برای محاسبه میانگین تعداد کلمات نشان میدهد.
"updateCells":{
"rows":[
{
"values":[
{
"userEnteredValue":{
"formulaValue":"=AVERAGE(shakespeare!word_count)"
}
}
]
}
],
"fields":"userEnteredValue"
}
پس از واکشی دادههای BigQuery، فرمول منبع داده مطابق شکل زیر پر میشود:

یک شیء منبع داده BigQuery را رفرش کنید
شما میتوانید یک شیء منبع داده را برای دریافت آخرین دادهها از BigQuery بر اساس مشخصات فعلی منبع داده و پیکربندیهای شیء، بهروزرسانی (refresh) کنید. میتوانید از متد spreadsheets.batchUpdate برای فراخوانی RefreshDataSourceRequest استفاده کنید. سپس با استفاده از شیء DataSourceObjectReferences یک یا چند ارجاع شیء را برای بهروزرسانی مشخص کنید.
توجه داشته باشید که میتوانید اشیاء منبع داده را در یک درخواست batchUpdate واحد، هم ایجاد و هم بهروزرسانی کنید.
مدیریت منبع داده Looker
این راهنما نحوه اضافه کردن یک منبع داده Looker، بهروزرسانی یا حذف آن، ایجاد یک جدول محوری روی آن و بهروزرسانی آن را نشان میدهد.
درخواست شما که هرگونه داده Looker Connected Sheets را درخواست میکند، از لینک حساب گوگل موجود شما با Looker دوباره استفاده خواهد کرد.
یک منبع داده Looker اضافه کنید
برای افزودن یک منبع داده، با استفاده از متد spreadsheets.batchUpdate یک AddDataSourceRequest ارائه دهید. بدنه درخواست باید یک فیلد dataSource از نوع شیء DataSource را مشخص کند.
"addDataSource":{
"dataSource":{
"spec":{
"looker":{
"instance_uri":"INSTANCE_URI",
"model":"MODEL",
"explore":"EXPLORE"
}
}
}
}
به ترتیب INSTANCE_URI ، MODEL و EXPLORE را با یک URI معتبر برای نمونه Looker، نام مدل و نام کاوش جایگزین کنید.
پس از ایجاد منبع داده، یک برگه DATA_SOURCE مرتبط ایجاد میشود تا پیشنمایشی از ساختار Explore انتخابشده، شامل نماها، ابعاد، معیارها و هرگونه توصیف فیلد، ارائه دهد.
AddDataSourceResponse شامل فیلدهای زیر است:
dataSource: شیءDataSourceایجاد شده.dataSourceIdیک شناسه منحصر به فرد در محدوده صفحه گسترده است. برای ایجاد هر شیءDataSourceاز منبع داده، مقداردهی و به آن ارجاع داده میشود.dataExecutionStatus: وضعیت اجرایی که دادههای BigQuery را به برگه پیشنمایش وارد میکند. برای اطلاعات بیشتر، به بخش وضعیت اجرای دادهها مراجعه کنید.
بهروزرسانی یا حذف منبع داده Looker
از متد spreadsheets.batchUpdate استفاده کنید و بر اساس آن، یک درخواست UpdateDataSourceRequest یا DeleteDataSourceRequest ارائه دهید.
مدیریت اشیاء منبع داده Looker
پس از اضافه شدن یک منبع داده به صفحه گسترده، میتوان یک شیء منبع داده از آن ایجاد کرد. برای منابع داده Looker، فقط میتوانید یک شیء DataSource pivotTable از آن ایجاد کنید.
ایجاد فرمولها، استخراجها و نمودارهای DataSource از منابع داده Looker امکانپذیر نیست.
یک شیء منبع داده Looker را بهروزرسانی کنید
شما میتوانید یک شیء منبع داده را برای دریافت آخرین دادهها از Looker بر اساس مشخصات فعلی منبع داده و پیکربندیهای شیء، بهروزرسانی (refresh) کنید. میتوانید از متد spreadsheets.batchUpdate برای فراخوانی RefreshDataSourceRequest استفاده کنید. سپس با استفاده از شیء DataSourceObjectReferences یک یا چند ارجاع شیء را برای بهروزرسانی مشخص کنید.
توجه داشته باشید که میتوانید اشیاء منبع داده را در یک درخواست batchUpdate واحد، هم ایجاد و هم بهروزرسانی کنید.
وضعیت اجرای دادهها
وقتی منابع داده ایجاد میکنید یا اشیاء منبع داده را بهروزرسانی میکنید، یک اجرای پسزمینه ایجاد میشود تا دادهها را از BigQuery یا Looker دریافت کند و پاسخی حاوی DataExecutionStatus را برگرداند. اگر اجرا با موفقیت شروع شود، DataExecutionState معمولاً در حالت RUNNING است.
از آنجا که این فرآیند ناهمزمان است، برنامه شما باید یک مدل نظرسنجی را پیادهسازی کند تا به صورت دورهای وضعیت اشیاء منبع داده را بازیابی کند. از متد spreadsheets.get استفاده کنید تا زمانی که وضعیت یا حالت SUCCEEDED یا FAILED را برگرداند. اجرا در بیشتر موارد به سرعت انجام میشود، اما به پیچیدگی منبع داده شما بستگی دارد. معمولاً اجرا از 10 دقیقه تجاوز نمیکند.
مباحث مرتبط
- انتخاب محدودههای API گوگل شیت
- شروع کار با دادههای BigQuery در Google Sheets
- مستندات بیگکوئری
- BigQuery: استفاده از صفحات متصل
- آموزش ویدیویی Connected Sheets
- استفاده از صفحات متصل برای Looker
- مقدمهی لوکر