Google BigQuery
บทความนี้อธิบายวิธีการเชื่อมต่อ Tableau กับ Google BigQuery และตั้งค่าแหล่งข้อมูล
หมายเหตุ: ฟีเจอร์และการปรับแต่งบางอย่างที่ระบุไว้ในบทความนี้จะไม่รองรับใน Tableau Prep Builder หากต้องการข้อมูลเพิ่มเติมเกี่ยวกับการเชื่อมต่อกับข้อมูลใน Prep Builder ได้ที่ เชื่อมต่อกับข้อมูล(ลิงก์จะเปิดในหน้าต่างใหม่)
ก่อนที่คุณจะเริ่มต้น
ก่อนที่คุณจะเริ่มต้น ให้รวบรวมข้อมูลการเชื่อมต่อนี้
- Google BigQuery อีเมลหรือโทรศัพท์ และรหัสผ่าน
คำแนะนำ
ตั้งค่าไคลเอ็นต์ OAuth ที่กำหนดเองเพื่อใช้นโยบายด้าน IT ของบริษัท
คุณสามารถควบคุมการกำหนดค่า OAuth ได้อย่างสมบูรณ์ตามนโยบายด้าน IT ของคุณเองที่มีไคลเอ็นต์ OAuth แบบกำหนดเอง ตัวเลือกในการใช้ไคลเอ็นต์ OAuth ของคุณเองช่วยให้คุณไม่ต้องเชื่อมโยงกับรอบการเผยแพร่ของ Tableau และกำหนดการหมุนเวียนไคลเอ็นต์ OAuth ของ Tableau หากต้องการข้อมูลเกี่ยวกับวิธีกำหนดค่าไคลเอ็นต์ OAuth ของคุณเอง โปรดดูกำหนดค่า OAuth ที่กำหนดเองสำหรับไซต์
ทำการเชื่อมต่อและตั้งค่าแหล่งข้อมูล
หมายเหตุ: หากต้องการใช้ข้อมูลเข้าสู่ระบบของบัญชีบริการสำหรับแหล่งข้อมูล Google BigQuery ใหม่ จะต้องสร้างการเชื่อมต่อใน Tableau Desktop
เปิดใช้งาน Tableau และเลือก Google BigQuery ในส่วนเชื่อมต่อ
ดำเนินหนึ่งใน 2 ตัวเลือกต่อไปนี้ให้เสร็จสิ้นเพื่อดำเนินการต่อ
ทางเลือกที่ 1:
- ในการตรวจสอบสิทธิ์ ให้เลือกเข้าสู่ระบบด้วย OAuth
- คลิกเข้าสู่ระบบ
- ป้อนรหัสผ่านเพื่อดำเนินการต่อ
- เลือกยอมรับเพื่ออนุญาตให้ Tableau เข้าถึงข้อมูล Google BigQuery ของคุณ คุณจะเห็นข้อความแจ้งให้ปิดเบราว์เซอร์
ทางเลือกที่ 2:
เคล็ดลับ: หากคุณใช้ Tableau Server หรือ Tableau Cloud สำหรับการเผยแพร่ คุณจะต้องเริ่มต้นจากการเข้าสู่ระบบผลิตภัณฑ์ที่คุณใช้ จากนั้นเพิ่มข้อมูลเข้าสู่ระบบ Google BigQuery ที่บันทึกไว้ภายใต้การตั้งค่าบัญชี วิธีนี้จะป้องกันการเกิด “ข้อผิดพลาดเกี่ยวกับข้อมูลเข้าสู่ระบบที่ไม่ถูกต้อง”
- ในการตรวจสอบสิทธิ์ ให้เลือกเข้าสู่ระบบด้วยการใช้ไฟล์ (JSON) บัญชีบริการ
- ป้อนเส้นทางไฟล์หรือใช้ปุ่มเรียกดูเพื่อค้นหา
- คลิกเข้าสู่ระบบ
- ป้อนรหัสผ่านเพื่อดำเนินการต่อ
- เลือกยอมรับเพื่ออนุญาตให้ Tableau เข้าถึงข้อมูล Google BigQuery ของคุณ คุณจะเห็นข้อความแจ้งให้ปิดเบราว์เซอร์
บนหน้าแหล่งข้อมูล ให้ทำดังนี้
(ไม่บังคับ) เลือกชื่อแหล่งข้อมูลเริ่มต้นที่ด้านบนของหน้า แล้วป้อนชื่อแหล่งข้อมูลที่ไม่ซ้ำกันสำหรับใช้ใน Tableau ตัวอย่างเช่น ใช้แบบแผนการตั้งชื่อแหล่งข้อมูลที่ช่วยให้ผู้ใช้รายอื่นๆ ของแหล่งข้อมูลทราบแหล่งข้อมูลที่จะเชื่อมต่อได้
(ไม่บังคับ) จากรายการดรอปดาวน์โปรเจกต์การเรียกเก็บเงิน ให้เลือกโปรเจกต์การเรียกเก็บเงิน หากคุณไม่ได้เลือกโปรเจ็กต์การเรียกเก็บเงิน
EmptyProject
จะปรากฏในฟิลด์เมื่อเลือกฟิลด์ที่เหลือเลือกโปรเจกต์จากรายการดรอปดาวน์โปรเจกต์ หรือเลือกข้อมูลสาธารณะเพื่อเชื่อมต่อกับข้อมูลตัวอย่างใน BigQuery
เลือกชุดข้อมูลจากรายการดรอปดาวน์ชุดข้อมูล
เลือกตารางภายใต้ตาราง
ใช้ SQL แบบปรับแต่งเองเพื่อเชื่อมต่อกับการค้นหาเฉพาะแทนที่จะเป็นแหล่งข้อมูลทั้งหมด หากต้องการข้อมูลเพิ่มเติม โปรดดู เชื่อมต่อกับการค้นหา SQL แบบปรับแต่งเอง
หมายเหตุ:
- Google BigQuery ได้เปลี่ยนการรองรับจาก BigQuery SQL ดั้งเดิม (BQL) เป็น SQL มาตรฐาน เวิร์กบุ๊กของคุณจะอัปเกรดเพื่อรองรับ SQL มาตรฐานเมื่อเปิดใน Tableau
- เนื่องจากปริมาณข้อมูลที่มีขนาดใหญ่ใน BigQuery Tableau ขอแนะนำให้คุณทำการเชื่อมต่อแบบสด
- ฟังก์ชัน Radians() ไม่รองรับใน Google BigQuery
ใช้แอตทริบิวต์การกำหนดเองเพื่อเพิ่มประสิทธิภาพการค้นหา
หมายเหตุ: แอตทริบิวต์การกำหนดเองยังไม่รองรับใน Tableau Prep Builder ในปัจจุบัน
คุณสามารถใช้แอตทริบิวต์การกำหนดเองเพื่อพัฒนาประสิทธิภาพของชุดผลลัพธ์ขนาดใหญ่ที่ส่งคืนจาก BigQuery ไปยัง Tableau Cloud, Tableau Server และใน Tableau Desktop
คุณสามารถรวมแอตทริบิวต์การกำหนดเองในเวิร์กบุ๊กหรือแหล่งข้อมูลที่เผยแพร่ของคุณ ตราบใดที่คุณระบุแอตทริบิวต์ก่อนที่จะทำการเผยแพร่เวิร์กบุ๊กหรือแหล่งข้อมูลไปยัง Tableau Cloud หรือ Tableau Server
ใช้แอตทริบิวต์การกำหนดเองของ Google BigQuery
แอตทริบิวต์การกำหนดเองจะยอมรับค่าจำนวนเต็มและส่งผลต่อทั้งการค้นหาแบบสดและการรีเฟรชการแยกข้อมูลสำหรับการเชื่อมต่อที่ระบุ
แอตทริบิวต์ต่อไปนี้เป็นประโยชน์มากที่สุดในการเพิ่มประสิทธิภาพของชุดผลลัพธ์ขนาดใหญ่
bq-fetch-tasks | จำนวนทาสก์ที่ดำเนินการในพื้นหลังคู่ขนานที่จะใช้ขณะดึงข้อมูลด้วยการใช้ HTTP ค่าเริ่มต้นคือ 10 |
bq-large-fetch-rows | จำนวนแถวที่จะดึงข้อมูลสำหรับแต่ละแบตช์สำหรับการค้นหาที่มีการเก็บพักข้อมูล ค่าเริ่มต้นคือ 50000 |
แอตทริบิวต์ต่อไปนี้ยังพร้อมใช้งานและนำไปใช้สำหรับการค้นหาขนาดเล็กด้วย
bq-fetch-rows | จำนวนแถวที่จะดึงข้อมูลสำหรับแต่ละแบตช์สำหรับการค้นหาที่ไม่มีการเก็บพักข้อมูล ค่าเริ่มต้นคือ 10000 |
bq-response-rows | จำนวนแถวที่ส่งคืนในการค้นหาที่ไม่ใช่แบบแบตช์และไม่มีการเก็บพักข้อมูล ค่าเริ่มต้นคือ 10000 |
ความสามารถในการใช้งานนี้จะยอมรับค่า "ใช่" หรือ "ไม่" และอาจเป็นประโยชน์ต่อการทดสอบ:
CAP_BIGQUERY_FORCE_SPOOL_JOB | บังคับให้การค้นหาทั้งหมดใช้วิธีการใช้ตารางชั่วคราว ค่าเริ่มต้น “ไม่” ให้เปลี่ยนค่าเป็น “ใช่” เพื่อเปิดใช้แอตทริบิวต์นี้ |
วิธีการที่ Tableau ส่งคืนแถวจาก Google BigQuery
Tableau ใช้สองวิธีในการคืนแถวจาก BigQuery: ได้แก่วิธีที่ไม่มีการเก็บพักข้อมูลซึ่งเป็นค่าเริ่มต้น หรือวิธีการใช้ตารางชั่วคราว (การเก็บพักข้อมูล):
ในการพยายามครั้งแรก การค้นหาจะทำงานด้วยการใช้การค้นหาที่เป็นค่าเริ่มต้นและไม่มีการเก็บพักข้อมูล ซึ่งใช้การตั้งค่าแบบ bq-fetch-rows
หากชุดข้อมูลมีขนาดใหญ่เกินไป BigQuery API จะส่งคืนข้อผิดพลาดและตัวเชื่อมต่อ Tableau BigQuery จะลองดำเนินการค้นหาอีกครั้งด้วยการบันทึกผลลัพธ์ไปยังตารางชั่วคราวของ BigQuery จากนั้นตัวเชื่อมต่อ BigQuery จะอ่านจากตารางชั่วคราวนั้น ซึ่งเป็นงานการเก็บพักข้อมูลที่ใช้การตั้งค่า bq-large-fetch-rows
วิธีการระบุแอตทริบิวต์
คุณสามารถระบุแอตทริบิวต์ได้ด้วยหนึ่งในสองวิธีจากไฟล์การกำหนดค่าแหล่งข้อมูล Tableau .tdc
หรือในเวิร์กบุ๊กหรือแหล่งข้อมูล XML
ระบุแอตทริบิวต์ในไฟล์ .tdc
วิธีการระบุแอตทริบิวต์การกำหนดเองในระหว่างการดำเนินงานเผยแพร่เวิร์กบุ๊กหรือเผยแพร่แหล่งข้อมูลจาก Tableau Desktop ให้ดำเนินตามขั้นตอนเหล่านี้:
สร้างไฟล์ XML ที่มีแอตทริบิวต์การกำหนดเอง
บันทึกไฟล์พร้อมส่วนขยาย
.tdc
เช่นBigQueryCustomization.tdc
บันทึกไฟล์ไปยังโฟลเดอร์
My Tableau Repository\Datasources
Tableau Desktop จะอ่านและรวมแอตทริบิวต์การปรับแต่งในไฟล์ .tdc
เมื่อมีการเผยแพร่แหล่งข้อมูลและเวิร์กบุ๊กไปยัง Tableau Cloud หรือ Tableau Server
สำคัญ: ไฟล์ TDC สามารถใช้เพื่อปรับแต่งฟังก์ชันการทำงานของการเชื่อมต่อหรือเพื่อวินิจฉัยและแก้ไขปัญหาที่เกี่ยวข้องกับการเชื่อมต่อกับข้อมูลของคุณ Tableau ไม่สามารถทดสอบการแก้ไขใดๆ ที่อาจเกิดขึ้นกับไฟล์เหล่านี้ได้อย่างทั่วถึง การสร้างและใช้งานไฟล์ TDC ต้องมีการแก้ไขด้วยตนเอง และมีความจำเป็นอย่างยิ่งที่จะต้องทดสอบอย่างละเอียดถี่ถ้วนก่อนที่จะนำไปใช้ในสภาพแวดล้อมการผลิต
ตัวอย่างไฟล์ .tdc พร้อมการตั้งค่าที่แนะนำสำหรับการแยกข้อมูลขนาดใหญ่
<connection-customization class='bigquery' enabled='true' version='8.0' >
<vendor name='bigquery' />
<driver name='bigquery' />
<customizations>
<customization name='bq-fetch-tasks' value='10' />
<customization name='bq-large-fetch-rows' value='10000' />
</customizations>
</connection-customization>
ฝังแอตทริบิวต์ด้วยตนเองใน XML ของเวิร์กบุ๊กหรือไฟล์แหล่งข้อมูล
คุณสามารถฝังแอตทริบิวต์การปรับแต่งภายในแท็ก 'การเชื่อมต่อ' ได้ในไฟล์เวิร์กบุ๊ก .twb หรือไฟล์แหล่งข้อมูล .tds แอตทริบิวต์การกำหนดเอง BigQuery จะเน้นเป็นตัวหนาในตัวอย่างต่อไปนี้เพื่อให้คุณมองเห็นได้ชัดเจน
ตัวอย่างแอตทริบิวต์ที่ฝังด้วยตนเอง
<connection CATALOG='publicdata' EXECCATALOG='some-project-123' REDIRECT_URI='some-url:2.0:oob' SCOPE='https://www.googleapis.com/auth/bigquery https://www.googleapis.com/auth/userinfo.profile https://www.googleapis.com/auth/userinfo.email' authentication='yes' bq-fetch-tasks='10' bq-large-fetch-rows='10000'bq_schema='samples' class='bigquery' connection-dialect='google-bql' connection-protocol='native-api' login_title='Sign in to Google BigQuery' odbc-connect-string-extras='' project='publicdata' schema='samples' server='googleapis.com/bigquery' server-oauth='' table='wikipedia' username=''>
ตรวจดูว่าเวิร์กบุ๊กของคุณใช้ SQL มาตรฐานหรือ SQL ดั้งเดิม
ในปี 2016 Google ได้อัปเดต BigQuery API เพื่อรองรับ SQL มาตรฐาน นอกเหนือจากการรองรับ BigQuery SQL ต่อไป (ต่อจากนี้เรียกว่า SQL ดั้งเดิม) ตั้งแต่ Tableau 10.1 เป็นต้นไป ตัวเชื่อมต่อ Google BigQuery ได้มีการอัปเกรดให้รองรับ SQL มาตรฐาน และยังคงรองรับ SQL ดั้งเดิมต่อไป SQL มาตรฐานช่วยให้ผู้ใช้ตัวเชื่อมต่อ BigQuery ให้ใช้นิพจน์ระดับรายละเอียด รับการตรวจสอบความถูกต้องของเมตาดาต้าที่รวดเร็วขึ้น และเลือกโปรเจกต์การเรียกเก็บเงินพร้อมกับการเชื่อมต่อ
ขณะนี้เมื่อคุณสร้างเวิร์กบุ๊ก Tableau จะรองรับ SQL มาตรฐานตามค่าเริ่มต้น และ Tableau ยังรองรับ SQL ดั้งเดิมด้วยการใช้ตัวเลือกใช้ SQL ดั้งเดิมบนแผงข้อมูล ตัวอย่างเช่น เมื่อคุณเปิดเวิร์กบุ๊กที่สร้างด้วยการใช้ Tableau Desktop เวอร์ชันก่อนหน้า และหากเวิร์กบุ๊กของคุณใช้ SQL ดั้งเดิม ระบบจะเลือกตัวเลือกใช้ SQL ดั้งเดิม
คุณอาจต้องกำหนดค่าตัวเลือก ใช้ SQL ดั้งเดิม ด้วยเหตุผลดังต่อไปนี้:
คุณมีเวิร์กบุ๊กที่มีอยู่ที่ต้องการอัปเดตให้ใช้ SQL มาตรฐานเพื่อเขียนนิพจน์ระดับรายละเอียดหรือใช้ประโยชน์จากการปรับปรุงอื่นๆ ในกรณีนี้ ตรวจดูให้แน่ใจว่าไม่ได้เลือกตัวเลือกใช้ SQL ดั้งเดิม
คุณกำลังสร้างเวิร์กบุ๊กที่ต้องเชื่อมต่อกับมุมมอง SQL เดิม คุณไม่สามารถผสม SQL ดั้งเดิมกับ SQL มาตรฐานได้ ดังนั้นคุณจะต้องเลือกตัวเลือกใช้ SQL ดั้งเดิม เพื่อให้เวิร์กบุ๊กทำงานได้
ใน Google BigQuery มุมมองจะเขียนเป็น SQL มาตรฐานหรือ SQL ดั้งเดิม คุณสามารถรวมมุมมองที่เขียนเป็น SQL มาตรฐานเข้ากับมุมมองที่เขียนเป็น SQL มาตรฐานได้ หรือมุมมองที่เขียนเป็น SQL ดั้งเดิมเข้ากับมุมมองที่เขียนเป็น SQL ดั้งเดิมได้ และคุณสามารถรวมมุมมองที่เขียนใน SQL เวอร์ชันใดก็ได้เข้ากับตาราง แต่คุณไม่สามารถรวมมุมมองที่เขียนเป็น SQL มาตรฐานกับมุมมองที่เขียนเป็น SQL ดั้งเดิมได้ในเวิร์กบุ๊กเดียว เมื่อคุณรวมมุมมอง คุณจะต้องเลือกกล่องทำเครื่องหมาย ใช้ SQL ดั้งเดิม เพื่อให้สอดคล้องกับประเภท SQL ที่ใช้ในมุมมองที่คุณจะเชื่อมต่อ
หมายเหตุ: Tableau Desktop มีการรองรับแบบจำกัดสำหรับข้อมูลที่ซ้อนกันเมื่อคุณใช้ SQL ดั้งเดิมหรือ SQL มาตรฐาน ตัวอย่างเช่น หากตารางมีข้อมูลที่ซ้อนกันและคุณกำลังใช้ SQL ดั้งเดิมหรือ SQL มาตรฐาน อัปเดตตอนนี้บนหน้าแหล่งข้อมูลจะใช้งานไม่ได้
หากต้องการข้อมูลเพิ่มเติมเกี่ยวกับการย้ายจาก SQL ดั้งเดิมเป็น SQL มาตรฐานได้ที่ การย้ายจาก SQL ดั้งเดิม(ลิงก์จะเปิดในหน้าต่างใหม่) บนเว็บไซต์ Google Cloud Platform
ใช้ BigQuery BI Engine เพื่อวิเคราะห์ข้อมูล
คุณสามารถใช้ BigQuery BI Engine เพื่อใช้บริการวิเคราะห์ที่รวดเร็วและมีเวลาแฝงต่ำ และการวิเคราะห์เชิงโต้ตอบที่มีรายงานและแดชบอร์ดที่สนับสนุนโดย BigQuery หากต้องการข้อมูลเพิ่มเติม รวมถึงคำแนะนำในการผสานรวม BigQuery BI Engine กับ Tableau โปรดดูที่วิเคราะห์ข้อมูล BigQuery โดยใช้ BI Engine และ Tableau ในเอกสารประกอบของ Google
แก้ปัญหาเกี่ยวกับ Google BigQuery
เชื่อมต่อกับหลายบัญชี
เมื่อใช้การเขียนเว็บหรือการเผยแพร่ไปยังเว็บ คุณไม่สามารถใช้บัญชี Google BigQuery หลายบัญชีในเวิร์กบุ๊กเดียวกัน คุณสามารถมีการเชื่อมต่อบัญชี Google BigQuery หลายรายการในเดสก์ท็อป
เมื่อเผยแพร่โฟลว์ ข้อมูลเข้าสู่ระบบที่คุณใช้เพื่อเชื่อมต่อกับ Google BigQuery ในขั้นตอนอินพุตจะต้องตรงกันกับข้อมูลเข้าสู่ระบบที่ตั้งค่าไว้ในแท็บ การตั้งค่า ในหน้าการตั้งค่าบัญชีของฉัน สำหรับ Google BigQuery ใน Tableau Server หรือ Tableau Cloud หากคุณเลือกข้อมูลเข้าสู่ระบบที่ต่างกันหรือไม่มีข้อมูลเข้าสู่ระบบในการตั้งค่าการตรวจสอบสิทธิ์ของคุณขณะเผยแพร่โฟลว์ โฟลว์จะล้มเหลวพร้อมกับแสดงข้อผิดพลาดเกี่ยวกับการตรวจสอบสิทธิ์จนกว่าคุณจะแก้ไขการเชื่อมต่อสำหรับโฟลว์ใน Tableau Server หรือ Tableau Cloud ให้ตรงกันกับข้อมูลเข้าสู่ระบบเหล่านั้น
การเขียนเว็บด้วย Internet Explorer 11 และ Edge
ใน Internet Explorer 11 และ Edge คุณไม่สามารถเข้าถึงเซิร์ฟเวอร์ที่ใช้การเชื่อมต่อที่ไม่ปลอดภัย (http) ได้ ใช้การเชื่อมต่อที่ปลอดภัย (https) หรือสลับไปใช้เบราว์เซอร์อื่น
ดูเพิ่มเติม
- ตั้งค่าแหล่งข้อมูล เพิ่มข้อมูลเพิ่มเติมลงในแหล่งข้อมูลนี้หรือเตรียมข้อมูลของคุณก่อนที่คุณจะวิเคราะห์
- สร้างแผนภูมิและวิเคราะห์ข้อมูล เริ่มการวิเคราะห์ข้อมูลของคุณ
- ตั้งค่า Oauth สำหรับ Google(ลิงก์จะเปิดในหน้าต่างใหม่) -กำหนดค่าการเชื่อมต่อ Oauth สำหรับ Tableau Server
- การเชื่อมต่อ Oauth(ลิงก์จะเปิดในหน้าต่างใหม่) - กำหนดค่าการเชื่อมต่อ Oauth สำหรับ Tableau Cloud
- Google BigQuery และ Tableau: แนวทางปฏิบัติที่ดีที่สุด(ลิงก์จะเปิดในหน้าต่างใหม่) - อ่านเอกสารประกอบของ Tableau (จำเป็นต้องลงทะเบียนหรือเข้าสู่ระบบ)