การไปยังส่วนต่างๆ ของ BigQuery UI และการสำรวจข้อมูล Codelab

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

  1. พิมพ์ "BigQuery" ซึ่งอยู่ที่ด้านบนของคอนโซล Google Cloud Platform
  2. เลือก BigQuery จากรายการตัวเลือก โปรดตรวจสอบว่าได้เลือกตัวเลือกที่มีโลโก้ BigQuery ซึ่งก็คือแว่นขยาย

การดูชุดข้อมูลและการเรียกใช้การค้นหา

ee95ce13969ee1ad.png

  1. คลิกโปรเจ็กต์ BigQuery ในแผงด้านซ้ายในส่วนทรัพยากร
  2. คลิก bq_demo เพื่อดูตารางในชุดข้อมูลนั้น
  3. ในช่องค้นหา ให้พิมพ์ "card" เพื่อดูรายการตารางและชุดข้อมูลที่มี "card" ในชื่อ
  4. เลือก "card_transactions" ตารางจากรายการผลการค้นหา

beb6ff6ca2930125.png

  1. คลิกแท็บรายละเอียดใต้แผง card_transactions เพื่อดูข้อมูลเมตาสำหรับตารางนี้
  2. คลิกแท็บแสดงตัวอย่างเพื่อดูตัวอย่างตาราง

[ประเด็นสนทนาเกี่ยวกับการแข่งขัน]: การผสานรวมกับ Google Data Catalog ทำให้สามารถจัดการข้อมูลเมตาของ BigQuery ควบคู่กับแหล่งข้อมูลอื่นๆ เช่น ที่เก็บข้อมูลขนาดใหญ่หรือแหล่งข้อมูลด้านการดำเนินงาน นี่คือตัวอย่างหนึ่งที่แสดงให้เห็นว่า Google Cloud ไม่ได้เป็นแค่คลังข้อมูลเชิงสัมพันธ์ แต่ยังเป็นแพลตฟอร์มข้อมูลวิเคราะห์ทั้งหมดด้วย

  1. คลิกไอคอนแว่นขยายเพื่อค้นหา "card_transactions" ข้อความที่สร้างขึ้นโดยอัตโนมัติจะปรากฏในเครื่องมือแก้ไขการค้นหา BigQuery
  2. ป้อนรหัสด้านล่างเพื่อแสดงผู้ขายที่แตกต่างกันจากตาราง Card_Transaction
SELECT distinct (merchant) FROM bq_demo.card_transactions LIMIT 1000
  1. คลิกปุ่ม เรียกใช้ เพื่อเรียกใช้การค้นหา

35113542e7ec6fa6.png

3. การสร้างชุดข้อมูลและการแชร์มุมมอง

การแชร์ข้อมูลและการกำกับดูแลเป็นสิ่งสำคัญ ซึ่งสามารถทำได้ง่ายใน BQ UI ในส่วนนี้ คุณจะได้รู้วิธีสร้างชุดข้อมูลใหม่ ป้อนข้อมูลในมุมมอง และแชร์ชุดข้อมูลนั้น

การดูประวัติการค้นหา

  1. คลิก "ประวัติการค้นหา" ในแผงด้านซ้ายของคอนโซล GCP
  2. คลิกรีเฟรชในแผงประวัติการค้นหา
  3. คลิกดาวน์โหลดภาพ/ลูกศรที่ด้านขวาสุดของข้อความค้นหาเพื่อดูผลการค้นหา

6e3232ed96f647b8.png

การสร้างชุดข้อมูลใหม่

  1. เลือก [ชื่อโปรเจ็กต์ของคุณ] ในแผงทรัพยากรของ BigQuery UI
  2. เลือก "สร้างชุดข้อมูลใหม่" จากแผงข้อมูลโปรเจ็กต์
  3. สำหรับรหัสชุดข้อมูล:

bq_demo_shared

  1. ปล่อยให้ช่องอื่นๆ ทั้งหมดเป็นค่าเริ่มต้น
  2. คลิก "สร้างชุดข้อมูล"

b433eba38f55124f.png dd774aca416e7fbc.png

การสร้างข้อมูลพร็อพเพอร์ตี้

[ประเด็นการพูดคุยเกี่ยวกับการแข่งขัน]: BigQuery เป็นไปตาม ANSI SQL โดยสมบูรณ์ และรองรับการผนวกหลายตารางทั้งแบบง่ายและซับซ้อน รวมถึงฟังก์ชันการวิเคราะห์ที่สมบูรณ์ เราได้เผยแพร่การรองรับที่เพิ่มขึ้นอย่างต่อเนื่องสำหรับประเภทข้อมูล SQL ทั่วไปและฟังก์ชันที่ใช้ในคลังข้อมูลแบบดั้งเดิม เพื่อช่วยให้ขั้นตอนการย้ายข้อมูลง่ายขึ้น

  1. เลือก "เขียนคำค้นหาใหม่" ที่ด้านบนของแผงเครื่องมือแก้ไขการค้นหา
  2. แทรกโค้ดต่อไปนี้ในตัวแก้ไขคำค้นหา
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;
  1. คลิก "บันทึกมุมมอง"
  2. เลือกโปรเจ็กต์ปัจจุบันสำหรับชื่อโปรเจ็กต์
  3. เลือกชุดข้อมูลที่สร้างขึ้นใหม่

bq_demo_shared

  1. สำหรับชื่อตาราง:

rev_change_by_card_type

  1. คลิกบันทึก

4b111056b544c27d.png

การแชร์มุมมองและชุดข้อมูล

  1. เลือกช่องทำเครื่องหมาย "bq_demo_shared" จากแผงทรัพยากรด้านซ้ายใน BigQuery UI
  2. คลิก "แชร์ชุดข้อมูล" จากในแผงข้อมูลชุดข้อมูล
  3. ป้อนอีเมล
  4. เลือก "ผู้ดูข้อมูล BigQuery" จากเมนูแบบเลื่อนลงบทบาท
  5. คลิก "เพิ่ม"
  6. คลิกเสร็จสิ้น

1c04b6b5ebc191dc.png

สำรวจข้อมูลในชีต

[ประเด็นในการสนทนาเกี่ยวกับการแข่งขัน]: ประโยชน์อีกข้อหนึ่งของ BigQuery เมื่อเทียบกับคู่แข่งคือ BI Engine คุณสามารถใช้ BI Engine เพื่อทำให้การค้นหาข้อมูลสรุปประเภท BI แสดงผลภายในไม่ถึง 1 วินาทีโดยใช้เครื่องมือแคชในหน่วยความจำ ปัจจุบัน Google Data Studio รองรับฟีเจอร์นี้อยู่ แต่จะพร้อมใช้งานในเร็วๆ นี้เพื่อเร่งการค้นหาทั้งหมดใน BigQuery

เช่น

Snowflake ใช้เครื่องมือ BI ของบุคคลที่สามสําหรับแดชบอร์ดและการแสดงข้อมูลผ่านภาพ ขณะที่ GCP นำเสนอเครื่องมือ BI ที่ผสานรวมมากมาย เช่น ชีตที่เชื่อมต่อ, Data Studio และ Looker

  1. เลือกช่องทำเครื่องหมาย "rev_change_by_card_type" จากแผงทรัพยากรด้านซ้ายใน BigQuery UI
  2. คลิกแว่นขยายเพื่อค้นหามุมมอง 255be22b0eaf339.png
  3. ประเภท:

เลือก *

FROM bq_demo_shared.rev_change_by_card_type

  1. คลิก Run
  2. คลิกลิงก์ "ส่งออก" ไอคอนจากแผงผลลัพธ์
  3. เลือก "สำรวจข้อมูลด้วยชีต"

9617b522025fd337.png

  1. คลิก "เริ่มการวิเคราะห์"
  2. เลือก "ตาราง Pivot"
  3. เลือก "ชีตใหม่"
  4. คลิก "สร้าง"
  5. เพิ่ม "revenue_date" ในส่วนแถวของเครื่องมือแก้ไขตาราง Pivot ทางด้านขวาของหน้าต่างชีต
  6. เพิ่ม "card_type" ในส่วน คอลัมน์ ของเครื่องมือแก้ไขตาราง Pivot
  7. เพิ่ม "monthly_rev" ในส่วน คอลัมน์ ของเครื่องมือแก้ไขตาราง Pivot
  8. คลิก ใช้

48e67c2e04965796.png

  1. ไปที่ robbin ด้านบนของ UI ของชีต แล้วเลือกแทรกแผนภูมิ

4. ตั้งค่า: การผสานรวมข้อมูล

ในส่วนนี้ คุณจะได้ทราบวิธีสร้างตารางใหม่และทำการผนวกกับชุดข้อมูลสาธารณะที่มีอยู่มากมายจาก Google Cloud

[ประเด็นพูดคุยเกี่ยวกับการแข่งขัน]:

BigQuery ได้รองรับชุดข้อมูลที่แชร์มาหลายปีแล้ว ลูกค้าในโปรเจ็กต์สามารถค้นหาทั้งชุดข้อมูลสาธารณะและชุดข้อมูลในโปรเจ็กต์อื่นๆ ที่แชร์กับตนได้

BigQuery รองรับที่เก็บข้อมูลขนาดใหญ่ใน GCS ผ่านการใช้ตารางภายนอกได้ นอกจากการโหลดหลายรายการแล้ว BigQuery ยังรองรับความสามารถในการสตรีมข้อมูลไปยังฐานข้อมูลด้วยอัตราความเร็วสูงสุดหลายร้อย MB ต่อวินาที Snowflake ไม่รองรับการสตรีมข้อมูล

การนำเข้าข้อมูลไปยังตารางใหม่

  1. เลือกชุดข้อมูล bq_demo ในแผงทรัพยากร
  2. เลือก "สร้างตาราง" ในแผงข้อมูลชุดข้อมูล
  3. เลือก Google Cloud Storage สำหรับต้นทาง
  4. ในกล่องข้อความเส้นทางไฟล์ ให้ทำดังนี้

gs://retail-banking-looker/district

  1. เลือก CSV สำหรับรูปแบบไฟล์
  2. ป้อน "เขต" สำหรับชื่อตาราง
  3. เลือกช่องทำเครื่องหมายของสคีมา "ตรวจหาอัตโนมัติ"
  4. คลิกสร้างตาราง

การค้นหาชุดข้อมูลสาธารณะ

  1. ป้อนคำค้นหาต่อไปนี้ในตัวแก้ไขคำค้นหา
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`;
  1. คลิก Run
  2. ดูผลลัพธ์

dff40709db70d75.png

  1. ตอนนี้เราจะรวมข้อมูลสาธารณะนี้กับคำค้นหาอื่น ป้อนโค้ด 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
  1. คลิก Run
  2. ดูผลลัพธ์

b853ad571e7a3038.png

5. การจัดการความจุ

การใช้งานสล็อตและการจอง

BQ มีรูปแบบการกำหนดราคาที่หลากหลายเพื่อตอบสนองความต้องการของคุณ ลูกค้ารายใหญ่ส่วนใหญ่ใช้ประโยชน์จากอัตราคงที่เป็นหลักสำหรับราคาที่คาดการณ์ได้ที่มีความจุที่จองไว้ สำหรับการเร่งประสิทธิภาพเกินกว่าขีดจำกัดพื้นฐานดังกล่าว BQ มีสล็อต Flex ซึ่งช่วยให้คุณเพิ่มความจุเพิ่มเติมได้ทันทีและจะย่อขนาดลงโดยอัตโนมัติ โดยไม่ส่งผลกระทบใดๆ ต่อการเรียกใช้การค้นหา BQ ยังมีโมเดลการสแกนไบต์ซึ่งให้คุณชำระเงินเฉพาะข้อความค้นหาที่คุณเรียกใช้เท่านั้น

[ประเด็นในการสนทนาเชิงแข่งขัน: คู่แข่งบางรายทำงานโดยใช้รูปแบบความจุตายตัวที่ลูกค้าต้องจัดสรรคลังสินค้าเสมือนให้กับปริมาณงานแต่ละรายการในองค์กร นอกจากโมเดลราคาต่อคำค้นหาซึ่งช่วยให้เริ่มต้นใช้งาน BigQuery ได้ง่ายๆ แล้ว เรายังรองรับโมเดลราคาความจุแบบอัตราคงที่ซึ่งสามารถแชร์ความจุเมื่อไม่มีการใช้งานภายในชุดภาระงานได้ด้วย]

  1. ไปที่แท็บการจอง

964f4ab78d35d067.png

  1. คลิก "ซื้อสล็อต"

c8cb5ee61bbea814.png

  1. เลือก "ยืดหยุ่น" เป็นระยะเวลา
  2. เลือกช่อง 500 ช่อง
  3. ยืนยันการซื้อ

d615f5908dffc1ee.png

  1. คลิกดูสัญญาผูกมัดสล็อต
  2. คลิก "สร้างการจอง"
  3. "การสาธิต" ผู้ใช้ เป็นชื่อการจอง
  4. เลือกสหรัฐอเมริกาเป็นสถานที่ตั้ง
  5. พิมพ์ 500 สำหรับช่อง (ทั้งหมดที่มี)
  6. คลิก "งาน"
  7. เลือกโปรเจ็กต์ปัจจุบันสำหรับโปรเจ็กต์ขององค์กร
  8. เลือก "การสาธิต" สำหรับรหัสการจอง
  9. คลิก "สร้าง"