1. บทนำ
BigQuery คือคลังข้อมูลแบบ Serverless ที่คุ้มค่าและรองรับการปรับขนาดได้อย่างมาก เพียงย้ายข้อมูลของคุณมายัง BigQuery แล้วปล่อยให้เราจัดการงานหนักๆ แทน เพื่อให้คุณสามารถโฟกัสกับสิ่งที่สำคัญจริงๆ ซึ่งก็คือการดำเนินธุรกิจ คุณควบคุมการเข้าถึงทั้งโปรเจ็กต์และข้อมูลได้ตามความต้องการทางธุรกิจ เช่น ให้สิทธิ์ผู้อื่นดูหรือค้นหาข้อมูลของคุณ
ในห้องทดลองนี้ คุณจะได้ค้นพบความสามารถในการวิเคราะห์ของ BigQuery คุณจะได้ดูวิธีนำเข้าชุดข้อมูลจากที่เก็บข้อมูล Google Cloud Storage และทำความเข้าใจเกี่ยวกับ UI ของ BigQuery โดยการทำงานกับชุดข้อมูล Retail Banking นอกจากนี้ ห้องทดลองนี้จะสอนวิธีค้นพบฟีเจอร์หลักใน BigQuery ที่จะทำให้การวิเคราะห์ประจำวันของคุณง่ายขึ้นมาก เช่น การส่งออกผลการค้นหาในสเปรดชีต การดูและเรียกใช้การค้นหาจากประวัติการค้นหา การดูประสิทธิภาพของการค้นหา และการสร้างมุมมองตารางเพื่อให้ทีมและแผนกอื่นๆ นำไปใช้
สิ่งที่คุณจะได้เรียนรู้
ในห้องทดลองนี้ คุณจะได้ศึกษาวิธีทำสิ่งต่อไปนี้
- กำลังโหลดข้อมูลใหม่ลงใน BigQuery
- ทำความคุ้นเคยกับ BigQuery UI
- การเรียกใช้การค้นหาใน BigQuery
- ดูประสิทธิภาพของการค้นหา
- การสร้างมุมมองใน BigQuery
- แชร์ชุดข้อมูลกับผู้อื่นอย่างปลอดภัย
2. บทนำ: การทำความเข้าใจ BigQuery UI
ในส่วนนี้ คุณจะได้เรียนรู้วิธีไปยังส่วนต่างๆ ของ BigQuery UI, ดูชุดข้อมูลที่ใช้ได้ และเรียกใช้การค้นหาแบบง่ายๆ
กำลังโหลด BQ UI
- พิมพ์ "BigQuery" ซึ่งอยู่ที่ด้านบนของคอนโซล Google Cloud Platform
- เลือก BigQuery จากรายการตัวเลือก โปรดตรวจสอบว่าได้เลือกตัวเลือกที่มีโลโก้ BigQuery ซึ่งก็คือแว่นขยาย
การดูชุดข้อมูลและการเรียกใช้การค้นหา
- คลิกโปรเจ็กต์ BigQuery ในแผงด้านซ้ายในส่วนทรัพยากร
- คลิก
bq_demo
เพื่อดูตารางในชุดข้อมูลนั้น - ในช่องค้นหา ให้พิมพ์ "card" เพื่อดูรายการตารางและชุดข้อมูลที่มี "card" ในชื่อ
- เลือก "card_transactions" ตารางจากรายการผลการค้นหา
- คลิกแท็บรายละเอียดใต้แผง
card_transactions
เพื่อดูข้อมูลเมตาสำหรับตารางนี้ - คลิกแท็บแสดงตัวอย่างเพื่อดูตัวอย่างตาราง
[ประเด็นสนทนาเกี่ยวกับการแข่งขัน]: การผสานรวมกับ Google Data Catalog ทำให้สามารถจัดการข้อมูลเมตาของ BigQuery ควบคู่กับแหล่งข้อมูลอื่นๆ เช่น ที่เก็บข้อมูลขนาดใหญ่หรือแหล่งข้อมูลด้านการดำเนินงาน นี่คือตัวอย่างหนึ่งที่แสดงให้เห็นว่า Google Cloud ไม่ได้เป็นแค่คลังข้อมูลเชิงสัมพันธ์ แต่ยังเป็นแพลตฟอร์มข้อมูลวิเคราะห์ทั้งหมดด้วย
- คลิกไอคอนแว่นขยายเพื่อค้นหา "card_transactions" ข้อความที่สร้างขึ้นโดยอัตโนมัติจะปรากฏในเครื่องมือแก้ไขการค้นหา BigQuery
- ป้อนรหัสด้านล่างเพื่อแสดงผู้ขายที่แตกต่างกันจากตาราง Card_Transaction
SELECT distinct (merchant) FROM bq_demo.card_transactions LIMIT 1000
- คลิกปุ่ม เรียกใช้ เพื่อเรียกใช้การค้นหา
3. การสร้างชุดข้อมูลและการแชร์มุมมอง
การแชร์ข้อมูลและการกำกับดูแลเป็นสิ่งสำคัญ ซึ่งสามารถทำได้ง่ายใน BQ UI ในส่วนนี้ คุณจะได้รู้วิธีสร้างชุดข้อมูลใหม่ ป้อนข้อมูลในมุมมอง และแชร์ชุดข้อมูลนั้น
การดูประวัติการค้นหา
- คลิก "ประวัติการค้นหา" ในแผงด้านซ้ายของคอนโซล GCP
- คลิกรีเฟรชในแผงประวัติการค้นหา
- คลิกดาวน์โหลดภาพ/ลูกศรที่ด้านขวาสุดของข้อความค้นหาเพื่อดูผลการค้นหา
การสร้างชุดข้อมูลใหม่
- เลือก [ชื่อโปรเจ็กต์ของคุณ] ในแผงทรัพยากรของ BigQuery UI
- เลือก "สร้างชุดข้อมูลใหม่" จากแผงข้อมูลโปรเจ็กต์
- สำหรับรหัสชุดข้อมูล:
bq_demo_shared
- ปล่อยให้ช่องอื่นๆ ทั้งหมดเป็นค่าเริ่มต้น
- คลิก "สร้างชุดข้อมูล"
การสร้างข้อมูลพร็อพเพอร์ตี้
[ประเด็นการพูดคุยเกี่ยวกับการแข่งขัน]: BigQuery เป็นไปตาม ANSI SQL โดยสมบูรณ์ และรองรับการผนวกหลายตารางทั้งแบบง่ายและซับซ้อน รวมถึงฟังก์ชันการวิเคราะห์ที่สมบูรณ์ เราได้เผยแพร่การรองรับที่เพิ่มขึ้นอย่างต่อเนื่องสำหรับประเภทข้อมูล SQL ทั่วไปและฟังก์ชันที่ใช้ในคลังข้อมูลแบบดั้งเดิม เพื่อช่วยให้ขั้นตอนการย้ายข้อมูลง่ายขึ้น
- เลือก "เขียนคำค้นหาใหม่" ที่ด้านบนของแผงเครื่องมือแก้ไขการค้นหา
- แทรกโค้ดต่อไปนี้ในตัวแก้ไขคำค้นหา
WITH revenue_by_month AS (
SELECT
card.type AS card_type,
FORMAT_DATE('%Y-%m', trans_date) as revenue_date,
SUM(amount) as revenue
FROM bq_demo.card_transactions
JOIN bq_demo.card ON card_transactions.cc_number = card.card_number
WHERE trans_date DATE_ADD(CURRENT_DATE, INTERVAL -1 YEAR)
GROUP BY card_type, revenue_date
)
SELECT
card_type,
revenue_date,
revenue as monthly_rev,
revenue - LAG(revenue) OVER (ORDER BY card_type, revenue_date ASC) as rev_change
FROM revenue_by_month
ORDER BY card_type, revenue_date ASC;
- คลิก "บันทึกมุมมอง"
- เลือกโปรเจ็กต์ปัจจุบันสำหรับชื่อโปรเจ็กต์
- เลือกชุดข้อมูลที่สร้างขึ้นใหม่
bq_demo_shared
- สำหรับชื่อตาราง:
rev_change_by_card_type
- คลิกบันทึก
การแชร์มุมมองและชุดข้อมูล
- เลือกช่องทำเครื่องหมาย "bq_demo_shared" จากแผงทรัพยากรด้านซ้ายใน BigQuery UI
- คลิก "แชร์ชุดข้อมูล" จากในแผงข้อมูลชุดข้อมูล
- ป้อนอีเมล
- เลือก "ผู้ดูข้อมูล BigQuery" จากเมนูแบบเลื่อนลงบทบาท
- คลิก "เพิ่ม"
- คลิกเสร็จสิ้น
สำรวจข้อมูลในชีต
[ประเด็นในการสนทนาเกี่ยวกับการแข่งขัน]: ประโยชน์อีกข้อหนึ่งของ BigQuery เมื่อเทียบกับคู่แข่งคือ BI Engine คุณสามารถใช้ BI Engine เพื่อทำให้การค้นหาข้อมูลสรุปประเภท BI แสดงผลภายในไม่ถึง 1 วินาทีโดยใช้เครื่องมือแคชในหน่วยความจำ ปัจจุบัน Google Data Studio รองรับฟีเจอร์นี้อยู่ แต่จะพร้อมใช้งานในเร็วๆ นี้เพื่อเร่งการค้นหาทั้งหมดใน BigQuery
เช่น
Snowflake ใช้เครื่องมือ BI ของบุคคลที่สามสําหรับแดชบอร์ดและการแสดงข้อมูลผ่านภาพ ขณะที่ GCP นำเสนอเครื่องมือ BI ที่ผสานรวมมากมาย เช่น ชีตที่เชื่อมต่อ, Data Studio และ Looker
- เลือกช่องทำเครื่องหมาย "rev_change_by_card_type" จากแผงทรัพยากรด้านซ้ายใน BigQuery UI
- คลิกแว่นขยายเพื่อค้นหามุมมอง
- ประเภท:
เลือก *
FROM bq_demo_shared.rev_change_by_card_type
- คลิก Run
- คลิกลิงก์ "ส่งออก" ไอคอนจากแผงผลลัพธ์
- เลือก "สำรวจข้อมูลด้วยชีต"
- คลิก "เริ่มการวิเคราะห์"
- เลือก "ตาราง Pivot"
- เลือก "ชีตใหม่"
- คลิก "สร้าง"
- เพิ่ม "revenue_date" ในส่วนแถวของเครื่องมือแก้ไขตาราง Pivot ทางด้านขวาของหน้าต่างชีต
- เพิ่ม "card_type" ในส่วน คอลัมน์ ของเครื่องมือแก้ไขตาราง Pivot
- เพิ่ม "monthly_rev" ในส่วน คอลัมน์ ของเครื่องมือแก้ไขตาราง Pivot
- คลิก ใช้
- ไปที่ robbin ด้านบนของ UI ของชีต แล้วเลือกแทรกแผนภูมิ
4. ตั้งค่า: การผสานรวมข้อมูล
ในส่วนนี้ คุณจะได้ทราบวิธีสร้างตารางใหม่และทำการผนวกกับชุดข้อมูลสาธารณะที่มีอยู่มากมายจาก Google Cloud
[ประเด็นพูดคุยเกี่ยวกับการแข่งขัน]:
BigQuery ได้รองรับชุดข้อมูลที่แชร์มาหลายปีแล้ว ลูกค้าในโปรเจ็กต์สามารถค้นหาทั้งชุดข้อมูลสาธารณะและชุดข้อมูลในโปรเจ็กต์อื่นๆ ที่แชร์กับตนได้
BigQuery รองรับที่เก็บข้อมูลขนาดใหญ่ใน GCS ผ่านการใช้ตารางภายนอกได้ นอกจากการโหลดหลายรายการแล้ว BigQuery ยังรองรับความสามารถในการสตรีมข้อมูลไปยังฐานข้อมูลด้วยอัตราความเร็วสูงสุดหลายร้อย MB ต่อวินาที Snowflake ไม่รองรับการสตรีมข้อมูล
การนำเข้าข้อมูลไปยังตารางใหม่
- เลือกชุดข้อมูล bq_demo ในแผงทรัพยากร
- เลือก "สร้างตาราง" ในแผงข้อมูลชุดข้อมูล
- เลือก Google Cloud Storage สำหรับต้นทาง
- ในกล่องข้อความเส้นทางไฟล์ ให้ทำดังนี้
gs://retail-banking-looker/district
- เลือก CSV สำหรับรูปแบบไฟล์
- ป้อน "เขต" สำหรับชื่อตาราง
- เลือกช่องทำเครื่องหมายของสคีมา "ตรวจหาอัตโนมัติ"
- คลิกสร้างตาราง
การค้นหาชุดข้อมูลสาธารณะ
- ป้อนคำค้นหาต่อไปนี้ในตัวแก้ไขคำค้นหา
SELECT
CAST(geo_id as STRING) AS zip_code,
total_pop,
median_age,
households,
income_per_capita,
housing_units,
vacant_housing_units_for_sale,
ROUND(SAFE_DIVIDE(employed_pop, pop_16_over),4) AS rate_employment,
ROUND(SAFE_DIVIDE(bachelors_degree_or_higher_25_64, pop_25_64),4) AS rate_bachelors_degree_or_higher_25_64
FROM
`bigquery-public-data.census_bureau_acs.zip_codes_2017_5yr`;
- คลิก Run
- ดูผลลัพธ์
- ตอนนี้เราจะรวมข้อมูลสาธารณะนี้กับคำค้นหาอื่น ป้อนโค้ด SQL ต่อไปนี้ในตัวแก้ไขคำค้นหา
WITH customer_counts AS (
select regexp_extract(address, "[0-9][0-9][0-9][0-9][0-9]") as zip_code,
count(*) as num_clients
FROM bq_demo.client
GROUP BY zip_code
)
SELECT
CAST(geo_id as STRING) AS zip_code,
total_pop,
median_age,
households,
income_per_capita,
ROUND(SAFE_DIVIDE(employed_pop, pop_16_over),4) AS rate_employment,
num_clients
FROM
`bigquery-public-data.census_bureau_acs.zip_codes_2017_5yr`
JOIN customer_counts on zip_code = geo_id
ORDER BY num_clients DESC
- คลิก Run
- ดูผลลัพธ์
5. การจัดการความจุ
การใช้งานสล็อตและการจอง
BQ มีรูปแบบการกำหนดราคาที่หลากหลายเพื่อตอบสนองความต้องการของคุณ ลูกค้ารายใหญ่ส่วนใหญ่ใช้ประโยชน์จากอัตราคงที่เป็นหลักสำหรับราคาที่คาดการณ์ได้ที่มีความจุที่จองไว้ สำหรับการเร่งประสิทธิภาพเกินกว่าขีดจำกัดพื้นฐานดังกล่าว BQ มีสล็อต Flex ซึ่งช่วยให้คุณเพิ่มความจุเพิ่มเติมได้ทันทีและจะย่อขนาดลงโดยอัตโนมัติ โดยไม่ส่งผลกระทบใดๆ ต่อการเรียกใช้การค้นหา BQ ยังมีโมเดลการสแกนไบต์ซึ่งให้คุณชำระเงินเฉพาะข้อความค้นหาที่คุณเรียกใช้เท่านั้น
[ประเด็นในการสนทนาเชิงแข่งขัน: คู่แข่งบางรายทำงานโดยใช้รูปแบบความจุตายตัวที่ลูกค้าต้องจัดสรรคลังสินค้าเสมือนให้กับปริมาณงานแต่ละรายการในองค์กร นอกจากโมเดลราคาต่อคำค้นหาซึ่งช่วยให้เริ่มต้นใช้งาน BigQuery ได้ง่ายๆ แล้ว เรายังรองรับโมเดลราคาความจุแบบอัตราคงที่ซึ่งสามารถแชร์ความจุเมื่อไม่มีการใช้งานภายในชุดภาระงานได้ด้วย]
- ไปที่แท็บการจอง
- คลิก "ซื้อสล็อต"
- เลือก "ยืดหยุ่น" เป็นระยะเวลา
- เลือกช่อง 500 ช่อง
- ยืนยันการซื้อ
- คลิกดูสัญญาผูกมัดสล็อต
- คลิก "สร้างการจอง"
- "การสาธิต" ผู้ใช้ เป็นชื่อการจอง
- เลือกสหรัฐอเมริกาเป็นสถานที่ตั้ง
- พิมพ์ 500 สำหรับช่อง (ทั้งหมดที่มี)
- คลิก "งาน"
- เลือกโปรเจ็กต์ปัจจุบันสำหรับโปรเจ็กต์ขององค์กร
- เลือก "การสาธิต" สำหรับรหัสการจอง
- คลิก "สร้าง"