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

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

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

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

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

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

ตารางแหล่งข้อมูลที่แสดงข้อมูลจากชุดข้อมูลสาธารณะของเชกสเปียร์

เพิ่มตาราง 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 ของแหล่งข้อมูลที่แสดงข้อมูลจากชุดข้อมูลสาธารณะของเชกสเปียร์

เพิ่มแผนภูมิแหล่งข้อมูล 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 ตามข้อกำหนดของแหล่งข้อมูลและการกำหนดค่าออบเจ็กต์ปัจจุบันได้ คุณสามารถใช้เมธอด 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 นาที