ข้ามไปยังเนื้อหา

BigQuery: แทรกแถว

ใช้ BigQuery: insert row เพื่อสตรีมหนึ่งแถวไปยังตาราง BigQuery จากขั้นตอน journey ผ่าน streaming insert API เช่นเดียวกับ Google Sheets: add row จุดนี้จะยืนยันตัวตนผ่านบัญชี Google ที่เชื่อมต่อเพียงครั้งเดียวสำหรับทั้งบัญชี ไม่มีช่อง token ในจุดนี้

การใช้งานทั่วไป:

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

ก่อนที่คุณจะเริ่ม

Anchor link to

เชื่อมต่อบัญชี Google ภายใต้ การตั้งค่า > การผสานรวมกับบุคคลที่สาม > Google นี่คือการเชื่อมต่อเดียวกับที่ Google Sheets: add row ใช้ หลังจากที่คุณเชื่อมต่อ Google แล้ว ติดตั้งการผสานรวม เพื่อให้จุดนี้ปรากฏใน journey builder

นี่ไม่ใช่การ์ด Google BigQuery ในหน้านั้น การ์ดนั้นคือ การผสานรวม BigQuery: ซึ่งจะสตรีมทุกเหตุการณ์ข้อความของแอปพลิเคชันไปยังสคีมาที่กำหนดไว้บนคีย์บัญชีบริการ จุดนี้จะเขียนหนึ่งแถวที่คุณกำหนด ในขั้นตอนที่คุณวางไว้ และไม่ใช้คีย์ของตัวเอง

หน้าการผสานรวมกับบุคคลที่สามในการตั้งค่า แสดงการ์ดเชื่อมต่อ Google ถัดจากการ์ด Google BigQuery ที่แยกต่างหาก

ต้องมีสองสิ่งนี้ในฝั่ง Google Cloud ด้วย มิฉะนั้นคำขอจะล้มเหลว:

  • ชุดข้อมูลและตารางต้องมีอยู่แล้ว จุดนี้จะเขียนแถว แต่จะไม่สร้างตาราง
  • บัญชี Google ที่เชื่อมต่อต้องมีบทบาท BigQuery Data Editor (หรือบทบาทใดๆ ที่ให้สิทธิ์ bigquery.tables.updateData) ในชุดข้อมูลนั้น

กำหนดค่าจุด

Anchor link to
  1. ลาก BigQuery: insert row จากส่วน การผสานรวม ของแผงด้านซ้ายไปยัง canvas
  2. ดับเบิลคลิกที่จุดและป้อน ชื่อขั้นตอน
  3. ใน รหัสโปรเจกต์ ให้ป้อนรหัสโปรเจกต์ Google Cloud ใช้รหัส ไม่ใช่ชื่อที่แสดง ตัวอย่างเช่น my-analytics-prod
หน้าต่าง BigQuery insert row ที่มีชื่อขั้นตอนถูกกรอกและรหัสโปรเจกต์ถูกตั้งค่าเป็น my-analytics-prod
  1. ใน ชุดข้อมูล ให้ป้อนชื่อชุดข้อมูล
ช่องชุดข้อมูลถูกตั้งค่าเป็น marketing
  1. ใน ตาราง ให้ป้อนชื่อตาราง
ช่องตารางถูกตั้งค่าเป็น journey_events
  1. ใน คอลัมน์ ให้เพิ่มหนึ่งแถวต่อคอลัมน์ BigQuery ที่จะเขียน ป้อนชื่อคอลัมน์และค่า ชื่อต้องไม่ว่างเปล่าและไม่ซ้ำกัน ทุกคอลัมน์ที่คุณระบุต้องมีอยู่ในสคีมาของตาราง ค่าอาจเป็นข้อความคงที่หรือ traveler macro เช่น {{tag:Name}} ซึ่งเป็นมาโครเดียวกับในเนื้อหา Webhook หรือคลิก แทรกค่าไดนามิก เพื่อเลือกแอตทริบิวต์ที่ขั้นตอนก่อนหน้าใน journey นี้สร้างขึ้น เช่น การตอบกลับของ LLM หรือค่า Webhook ที่แมปไว้
ตารางชื่อและค่าคอลัมน์ที่มี device_id แมปกับมาโคร hwid ของอุปกรณ์
  1. คลิก บันทึก

การตอบสนอง

Anchor link to

traveler จะเดินทางต่อไปยังขั้นตอนใดก็ตามที่คุณเชื่อมต่อถัดไปบน canvas

แอตทริบิวต์หลังจากขั้นตอนทำงาน

Anchor link to

จุดนี้จะไม่ส่งคืนแอตทริบิวต์เมื่อสำเร็จ หาก BigQuery ปฏิเสธแถว ข้อผิดพลาดจะถูกเขียนไปยัง bigquery_insert_error แทน ดูที่ ความล้มเหลวและการตอบสนองที่ไม่คาดคิด

ความล้มเหลวและการตอบสนองที่ไม่คาดคิด

Anchor link to

เปิด บันทึกการเรียก ในหน้าต่างของจุดและตรวจสอบการตอบสนอง:

  • 401 — การเชื่อมต่อ Google หายไปหรือหมดอายุ เชื่อมต่อใหม่อีกครั้งภายใต้ การตั้งค่า > การผสานรวมกับบุคคลที่สาม
  • 403 พร้อมกับ accessDenied: Streaming insert is not allowed in the free tier — โปรเจกต์ไม่มีบัญชีสำหรับการเรียกเก็บเงินแนบอยู่ การแทรกแบบสตรีมมิ่งซึ่งเป็นสิ่งที่จุดนี้ใช้ ไม่ได้เป็นส่วนหนึ่งของ BigQuery sandbox เปิดใช้งานการเรียกเก็บเงินในโปรเจกต์แล้วคำขอเดียวกันจะผ่านไปได้
  • 403 พร้อมกับ accessDenied หรือ insufficientPermissions — การเชื่อมต่อได้รับสิทธิ์ก่อนที่จะมีการเพิ่มการรองรับ BigQuery (ให้เชื่อมต่อใหม่) หรือบัญชี Google ไม่มีสิทธิ์ในการเขียนไปยังชุดข้อมูล
  • 403 พร้อมกับ quotaExceeded หรือ rateLimitExceeded — โควต้าการแทรกแบบสตรีมมิ่งของโปรเจกต์หมดแล้ว ไม่ต้องเชื่อมต่อใหม่ journey ต้องส่งน้อยลง หรือต้องเพิ่มโควต้าใน Google Cloud
  • 404 — ชื่อโปรเจกต์ ชุดข้อมูล หรือตารางไม่ตรงกับสิ่งใด

คำขอที่ล้มเหลวจะทำให้ traveler ออกจาก journey ดูที่ ข้อผิดพลาดและคำขอที่ล้มเหลว

สถานการณ์ตัวอย่าง: การป้อนข้อมูลตารางรายงาน BigQuery

Anchor link to

ทีมต้องการให้กิจกรรม journey อยู่ในชุดข้อมูล BigQuery เดียวกันกับที่รายงานตามกำหนดเวลาของพวกเขาสืบค้นอยู่แล้ว

  1. เพิ่ม BigQuery: insert row ทันทีหลังจากขั้นตอนที่คุณต้องการบันทึก ตั้งค่า ชุดข้อมูล เป็น marketing และ ตาราง เป็น journey_events ใน คอลัมน์ ตั้งค่า device_id เป็น {{device:hwid}}
  2. คลิก บันทึก

เมื่อสิ่งนี้ทำงาน แถวจะไปอยู่ในตารางเดียวกับที่การสืบค้นตามกำหนดเวลาอ่านข้อมูล ดังนั้นการทำงานของรายงานครั้งต่อไปจะรวมข้อมูลนี้ไว้ด้วย