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

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

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

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

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

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

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

เพิ่มแหล่งข้อมูล 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 เพื่อสร้างตารางแหล่งข้อมูลที่มีข้อมูลสูงสุด 1,000 แถวและ 2 คอลัมน์ (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 ด้วยรหัสที่ไม่ซ้ำกันซึ่งมีขอบเขตเป็นสเปรดชีตที่ ระบุแหล่งข้อมูล

หลังจากสร้างตารางแหล่งข้อมูลแล้ว ข้อมูลจะไม่พร้อมใช้งานทันที ในเครื่องมือแก้ไขชีต ข้อมูลจะแสดงเป็นตัวอย่าง คุณต้องรีเฟรชตารางแหล่งข้อมูลเพื่อดึงข้อมูล 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 ของแหล่งข้อมูลที่แสดงข้อมูลจากชุดข้อมูลสาธารณะของ Shakespeare

เพิ่มแผนภูมิแหล่งข้อมูล 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 ในแหล่งข้อมูล และรีเฟรชตาราง 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, ชื่อโมเดล และ ชื่อ Explore ที่ถูกต้องตามลำดับ

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

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 นาที