ชีตที่เชื่อมต่อ

ชีตที่เชื่อมต่อช่วยให้คุณวิเคราะห์ข้อมูลที่มีเป็นเพตะไบต์ได้โดยตรงใน Google ชีต คุณสามารถเชื่อมต่อสเปรดชีตกับคลังข้อมูล BigQuery หรือ Looker แล้วทําการวิเคราะห์โดยใช้เครื่องมือชีตที่คุ้นเคย เช่น ตาราง Pivot, แผนภูมิ และสูตร

จัดการแหล่งข้อมูล BigQuery

ส่วนนี้ใช้ชุดข้อมูลสาธารณะของ BigQuery Shakespeareเพื่อแสดงวิธีใช้ชีตที่เชื่อมต่อ ชุดข้อมูลมีข้อมูลต่อไปนี้

ช่อง ประเภท คำอธิบาย
คำ STRING คําที่ไม่ซ้ำกันเพียงคําเดียว (โดยเว้นวรรคเป็นตัวคั่น) ที่ดึงมาจากชุดข้อความ
word_count INTEGER จำนวนครั้งที่คํานี้ปรากฏในชุดข้อความนี้
คลัง STRING ผลงานที่ดึงคำนี้ออกมา
corpus_date INTEGER ปีที่เผยแพร่ชุดข้อความนี้

หากแอปพลิเคชันขอข้อมูลชีตที่เชื่อมต่อของ BigQuery แอปพลิเคชันนั้นต้องระบุโทเค็น OAuth 2.0 ที่ให้สิทธิ์เข้าถึงขอบเขต bigquery.readonly นอกเหนือจากขอบเขตอื่นๆ ที่จําเป็นสําหรับคําขอ Google ชีต API ปกติ ดูข้อมูลเพิ่มเติมที่หัวข้อเลือกขอบเขต Google Sheets API

แหล่งข้อมูลจะระบุตำแหน่งภายนอกที่พบข้อมูล จากนั้นแหล่งข้อมูลจะเชื่อมต่อกับสเปรดชีต

เพิ่มแหล่งข้อมูล BigQuery

หากต้องการเพิ่มแหล่งข้อมูล ให้ระบุ AddDataSourceRequest โดยใช้เมธอด spreadsheets.batchUpdate เนื้อหาคำขอควรระบุฟิลด์ dataSource ประเภทออบเจ็กต์ DataSource

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

แทนที่ PROJECT_ID ด้วยรหัสโปรเจ็กต์ Google Cloud ที่ถูกต้อง

หลังจากสร้างแหล่งข้อมูลแล้ว ระบบจะสร้างชีต DATA_SOURCE ที่เชื่อมโยงเพื่อแสดงตัวอย่างสูงสุด 500 แถว ตัวอย่างจะไม่พร้อมใช้งานโดยทันที ระบบจะเรียกใช้การดําเนินการแบบไม่พร้อมกันเพื่อนําเข้าข้อมูล BigQuery

ไฟล์ AddDataSourceResponse จะมีฟิลด์ต่อไปนี้

  • dataSource: ออบเจ็กต์ DataSource ที่สร้างขึ้น dataSourceId คือรหัสที่ไม่ซ้ำกันระดับสเปรดชีต ระบบจะป้อนข้อมูลและอ้างอิงเพื่อสร้างออบเจ็กต์DataSourceแต่ละรายการจากแหล่งข้อมูล

  • dataExecutionStatus: สถานะของการดําเนินการที่นําเข้าข้อมูล BigQuery ไปยังชีตแสดงตัวอย่าง ดูข้อมูลเพิ่มเติมได้ที่ส่วนสถานะการเรียกใช้ข้อมูล

อัปเดตหรือลบแหล่งข้อมูล BigQuery

ใช้วิธี spreadsheets.batchUpdate และส่งคำขอ UpdateDataSourceRequest หรือ DeleteDataSourceRequest ตามความเหมาะสม

จัดการออบเจ็กต์แหล่งข้อมูล BigQuery

เมื่อเพิ่มแหล่งข้อมูลลงในสเปรดชีตแล้ว คุณสามารถสร้างออบเจ็กต์แหล่งข้อมูลจากแหล่งข้อมูลนั้นได้ ออบเจ็กต์แหล่งข้อมูลคือเครื่องมือชีตปกติ เช่น ตาราง Pivot, แผนภูมิ และสูตรที่ผสานรวมกับชีตที่เชื่อมต่อเพื่อขับเคลื่อนการวิเคราะห์ข้อมูล

ออบเจ็กต์มี 4 ประเภท ได้แก่

  • ตาราง DataSource
  • DataSource pivotTable
  • แผนภูมิDataSource
  • สูตร DataSource

เพิ่มตารางแหล่งข้อมูล BigQuery

ออบเจ็กต์ตารางที่รู้จักกันในชื่อ "การดึงข้อมูล" ในเครื่องมือแก้ไขชีตจะนําเข้าข้อมูลแบบคงที่จากแหล่งข้อมูลไปยังชีต ตารางจะระบุและยึดไว้ที่เซลล์ด้านซ้ายบน ซึ่งคล้ายกับตาราง Pivot

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีใช้เมธอด spreadsheets.batchUpdate และ UpdateCellsRequest เพื่อสร้างตารางแหล่งข้อมูล 2 คอลัมน์ (word และ word_count) ได้สูงสุด 1,000 แถว

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

แทนที่ DATA_SOURCE_ID ด้วยรหัสที่ไม่ซ้ำกันระดับสเปรดชีตซึ่งระบุแหล่งข้อมูล

หลังจากสร้างตารางแหล่งข้อมูลแล้ว ข้อมูลจะไม่พร้อมใช้งานในทันที ในเครื่องมือแก้ไขชีต ข้อมูลจะแสดงเป็นตัวอย่าง คุณต้องรีเฟรชตารางแหล่งข้อมูลเพื่อดึงข้อมูล BigQuery คุณสามารถระบุ RefreshDataSourceRequest ได้ภายใน batchUpdate เดียวกัน โปรดทราบว่าออบเจ็กต์แหล่งข้อมูลทั้งหมดทํางานคล้ายกัน ดูข้อมูลเพิ่มเติมได้ที่รีเฟรชออบเจ็กต์แหล่งข้อมูล

หลังจากรีเฟรชเสร็จสมบูรณ์และดึงข้อมูล BigQuery แล้ว ระบบจะป้อนข้อมูลตารางแหล่งข้อมูลดังที่แสดง

ตารางแหล่งข้อมูลแสดงข้อมูลจากชุดข้อมูลสาธารณะของ Shakespeare

เพิ่มตาราง Pivot ของแหล่งข้อมูล BigQuery

ตาราง Pivot ของแหล่งข้อมูลจะอิงตามแหล่งข้อมูลและอ้างอิงข้อมูลตามชื่อคอลัมน์ ซึ่งแตกต่างจากตาราง Pivot แบบดั้งเดิม ตัวอย่างโค้ดต่อไปนี้แสดงวิธีใช้เมธอด spreadsheets.batchUpdate และ UpdateCellsRequest เพื่อสร้างตาราง Pivot ที่แสดงจํานวนคําทั้งหมดตามชุดข้อความ

"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 แล้ว ระบบจะป้อนข้อมูลตาราง Pivot แหล่งข้อมูลดังที่แสดง

ตาราง Pivot ของแหล่งข้อมูลแสดงข้อมูลจากชุดข้อมูลสาธารณะของ Shakespeare

เพิ่มแผนภูมิแหล่งข้อมูล BigQuery

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีใช้เมธอด spreadsheets.batchUpdate และ AddChartRequest เพื่อสร้างแผนภูมิแหล่งข้อมูลที่มี chartType ของคอลัมน์ ซึ่งแสดงจํานวนคำทั้งหมดตามชุดข้อความ

"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 แล้ว ระบบจะแสดงผลแผนภูมิแหล่งข้อมูลดังที่แสดง

แผนภูมิแหล่งข้อมูลแสดงข้อมูลจากชุดข้อมูลสาธารณะของ Shakespeare

เพิ่มสูตรแหล่งข้อมูล BigQuery

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีใช้เมธอด spreadsheets.batchUpdate และ UpdateCellsRequest เพื่อสร้างสูตรแหล่งข้อมูลเพื่อคํานวณจํานวนคําเฉลี่ย

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

หลังจากดึงข้อมูล BigQuery แล้ว ระบบจะป้อนข้อมูลสูตรแหล่งข้อมูลดังที่แสดง

สูตรแหล่งข้อมูลแสดงข้อมูลจากชุดข้อมูลสาธารณะของ Shakespeare

รีเฟรชออบเจ็กต์แหล่งข้อมูล BigQuery

คุณสามารถรีเฟรชออบเจ็กต์แหล่งข้อมูลเพื่อดึงข้อมูลล่าสุดจาก BigQuery โดยอิงตามข้อกําหนดเฉพาะแหล่งข้อมูลปัจจุบันและการกําหนดค่าออบเจ็กต์ คุณสามารถใช้วิธี spreadsheets.batchUpdate เพื่อเรียกใช้ RefreshDataSourceRequest จากนั้นระบุการอ้างอิงออบเจ็กต์อย่างน้อย 1 รายการเพื่อรีเฟรชโดยใช้ออบเจ็กต์ DataSourceObjectReferences

โปรดทราบว่าคุณสร้างและรีเฟรชออบเจ็กต์แหล่งข้อมูลได้ภายในคำขอ batchUpdate เดียว

จัดการแหล่งข้อมูล Looker

คู่มือนี้จะแสดงวิธีเพิ่มแหล่งข้อมูล Looker, อัปเดตหรือลบแหล่งข้อมูล, สร้างตาราง Pivot ในแหล่งข้อมูล และรีเฟรชแหล่งข้อมูล

แอปพลิเคชันของคุณที่ขอข้อมูลชีตที่เชื่อมต่อของ Looker จะใช้ลิงก์บัญชี Google ที่มีอยู่กับ Looker ซ้ำ

เพิ่มแหล่งข้อมูล Looker

หากต้องการเพิ่มแหล่งข้อมูล ให้ระบุ AddDataSourceRequest โดยใช้เมธอด spreadsheets.batchUpdate เนื้อหาคำขอควรระบุฟิลด์ dataSource ประเภทออบเจ็กต์ DataSource

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

แทนที่ INSTANCE_URI, MODEL และ EXPLORE ด้วย URI อินสแตนซ์ Looker, ชื่อโมเดล และชื่อการสํารวจที่ถูกต้องตามลําดับ

หลังจากสร้างแหล่งข้อมูลแล้ว ระบบจะสร้างชีตDATA_SOURCEที่เชื่อมโยงเพื่อแสดงตัวอย่างโครงสร้างของการสํารวจที่เลือก ซึ่งรวมถึงมุมมอง มิติข้อมูล การวัด และคำอธิบายฟิลด์

ไฟล์ AddDataSourceResponse จะมีฟิลด์ต่อไปนี้

  • dataSource: ออบเจ็กต์ DataSource ที่สร้างขึ้น dataSourceId คือรหัสที่ไม่ซ้ำกันระดับสเปรดชีต ระบบจะป้อนข้อมูลและอ้างอิงเพื่อสร้างออบเจ็กต์ DataSource แต่ละรายการจากแหล่งข้อมูล

  • dataExecutionStatus: สถานะของการดําเนินการที่นําเข้าข้อมูล BigQuery ไปยังชีตแสดงตัวอย่าง ดูข้อมูลเพิ่มเติมได้ที่ส่วนสถานะการเรียกใช้ข้อมูล

อัปเดตหรือลบแหล่งข้อมูล Looker

ใช้วิธี spreadsheets.batchUpdate และส่งคำขอ UpdateDataSourceRequest หรือ DeleteDataSourceRequest ตามความเหมาะสม

จัดการออบเจ็กต์แหล่งข้อมูล Looker

เมื่อเพิ่มแหล่งข้อมูลลงในสเปรดชีตแล้ว คุณสามารถสร้างออบเจ็กต์แหล่งข้อมูลจากแหล่งข้อมูลนั้นได้ สําหรับแหล่งข้อมูล Looker คุณสามารถสร้างได้เฉพาะDataSource ออบเจ็กต์ pivotTable เท่านั้น

คุณไม่สามารถสร้างDataSourceสูตร ข้อมูลดึงมา และแผนภูมิจากแหล่งข้อมูล Looker

รีเฟรชออบเจ็กต์แหล่งข้อมูล Looker

คุณสามารถรีเฟรชออบเจ็กต์แหล่งข้อมูลเพื่อดึงข้อมูลล่าสุดจาก Looker โดยอิงตามข้อมูลจำเพาะของแหล่งข้อมูลปัจจุบันและการกำหนดค่าออบเจ็กต์ คุณสามารถใช้วิธี spreadsheets.batchUpdate เพื่อเรียกใช้ RefreshDataSourceRequest จากนั้นระบุการอ้างอิงออบเจ็กต์อย่างน้อย 1 รายการเพื่อรีเฟรชโดยใช้ออบเจ็กต์ DataSourceObjectReferences

โปรดทราบว่าคุณสร้างและรีเฟรชออบเจ็กต์แหล่งข้อมูลได้ภายในคำขอ batchUpdate เดียว

สถานะการเรียกใช้ข้อมูล

เมื่อคุณสร้างแหล่งข้อมูลหรือรีเฟรชออบเจ็กต์แหล่งข้อมูล ระบบจะสร้างการดําเนินการในเบื้องหลังเพื่อดึงข้อมูลจาก BigQuery หรือ Looker และแสดงผลลัพธ์ที่มี DataExecutionStatus หากการเริ่มการดําเนินการสําเร็จ DataExecutionState มักจะอยู่ในสถานะ RUNNING

เนื่องจากกระบวนการเป็นแบบไม่พร้อมกัน แอปพลิเคชันของคุณจึงควรใช้รูปแบบการโหวตเพื่อดึงข้อมูลสถานะของออบเจ็กต์แหล่งข้อมูลเป็นระยะ ใช้เมธอด spreadsheets.get จนกว่าสถานะจะแสดงสถานะ SUCCEEDED หรือ FAILED การดำเนินการจะเสร็จสมบูรณ์อย่างรวดเร็วในเกือบทุกกรณี แต่ขึ้นอยู่กับความซับซ้อนของแหล่งข้อมูล โดยปกติการดำเนินการจะใช้เวลาไม่เกิน 10 นาที