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

การผสานรวมกับ Google BigQuery

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

การผสานรวมนี้ส่งข้อมูลทางเดียวเท่านั้น จาก Pushwoosh ไปยัง BigQuery หากต้องการนำเข้าเซกเมนต์ของผู้ใช้ BigQuery เข้าสู่ Pushwoosh แทน โปรดดูที่ External segments

ภาพรวมการผสานรวม

Anchor link to

ข้อกำหนดเบื้องต้น

Anchor link to

เตรียมสิ่งต่อไปนี้ก่อนที่คุณจะเปิดการตั้งค่าการผสานรวม

  1. ใช้โปรเจกต์ Google Cloud ที่เปิดใช้งานการเรียกเก็บเงิน รองรับเครดิต Free Trial BigQuery Sandbox ไม่เพียงพอเนื่องจาก Storage Write API ต้องการการเรียกเก็บเงิน

  2. ตรวจสอบให้แน่ใจว่าคุณมีบัญชี Pushwoosh แบบชำระเงิน

ราคา

Anchor link to

คุณชำระเงินให้ Google โดยตรงสำหรับการใช้งาน BigQuery Pushwoosh ไม่คิดค่าใช้จ่ายสำหรับการผสานรวม

สำหรับอัตราปัจจุบัน ระดับการใช้งานฟรี และรายละเอียดระดับภูมิภาค โปรดดูที่ ราคา BigQuery

ค่าใช้จ่ายอาจรวมถึง:

  • การนำเข้าข้อมูล: Pushwoosh สตรีมเหตุการณ์ด้วย BigQuery Storage Write API
  • พื้นที่จัดเก็บ: BigQuery จัดเก็บแถวที่เขียนไปยังตารางปลายทางของคุณ
  • การสืบค้น: BigQuery คิดค่าบริการสำหรับการสืบค้นตามรูปแบบราคาที่คุณเลือก

ประเภทการผสานรวม

Anchor link to

แหล่งที่มา: ข้อมูลถูกส่งจาก Pushwoosh ไปยังชุดข้อมูล BigQuery ของคุณ

แพลตฟอร์มที่รองรับ

Anchor link to

Pushwoosh สตรีมเหตุการณ์จากแพลตฟอร์ม iOS, Android, Huawei, Chrome, Safari, Firefox และ Web

เอนทิตีที่ซิงโครไนซ์

Anchor link to

เหตุการณ์วงจรชีวิตของ push, email และ SMS ที่เลือกจะถูกสตรีมไปยัง BigQuery Pushwoosh จะเขียนหนึ่งแถวต่อเหตุการณ์ที่เลือกไปยังตารางปลายทาง

กรณีการใช้งาน

Anchor link to
  • การวิเคราะห์ข้อความแบบเกือบเรียลไทม์: วิเคราะห์เหตุการณ์วงจรชีวิตของ push, email และ SMS ใน BigQuery ไม่นานหลังจากที่ประมวลผลใน Pushwoosh
  • การรายงานที่กำหนดเอง: สร้างรายงาน BigQuery สำหรับชนิดของเหตุการณ์ แอปพลิเคชัน แคมเปญ และตัวระบุข้อความที่เลือก
  • เวิร์กโฟลว์ข้อมูลดาวน์สตรีม: เชื่อมต่อข้อมูลเหตุการณ์ Pushwoosh กับเวิร์กโฟลว์การวิเคราะห์ การรายงาน หรือการประมวลผลข้อมูลของคุณ

การทำงานของการผสานรวม

Anchor link to

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

หากใช่ Pushwoosh จะเพิ่มแถวใหม่ไปยังตารางปลายทางของคุณ หากตารางยังไม่มีอยู่ Pushwoosh จะสร้างขึ้นโดยอัตโนมัติโดยใช้สคีมาที่อธิบายไว้ด้านล่าง โดยทั่วไปเหตุการณ์จะปรากฏใน BigQuery ภายใน 30 วินาทีหลังจากประมวลผลใน Pushwoosh

ตั้งค่าการผสานรวมใน Google Cloud

Anchor link to

เลือกโปรเจกต์ Google Cloud

Anchor link to

ลงชื่อเข้าใช้ Google Cloud Console จากนั้นเลือกหรือสร้างโปรเจกต์ที่จะเป็นเจ้าของชุดข้อมูล BigQuery

ตัวเลือกโปรเจกต์ของ Google Cloud Console ที่แสดงโปรเจกต์ที่เลือกและ ID โปรเจกต์สำหรับการตั้งค่า BigQuery

เปิดใช้งาน API ที่จำเป็น

Anchor link to

ใน Google Cloud Console ไปที่ APIs & Services → Library และเปิดใช้งาน API เหล่านี้:

  • BigQuery API
  • BigQuery Storage API
ไลบรารี API ของ Google Cloud ที่แสดง BigQuery API และ BigQuery Storage API ที่เปิดใช้งานสำหรับโปรเจกต์

Pushwoosh ใช้ API เหล่านี้เพื่อสร้างตารางปลายทางและสตรีมเหตุการณ์เข้าสู่ BigQuery

สร้าง Service Account

Anchor link to

Pushwoosh ใช้ Service Account เพื่อเขียนเหตุการณ์ไปยังชุดข้อมูล BigQuery ของคุณ

  1. ไปที่ IAM & Admin → Service Accounts

  2. คลิก Create service account

  3. ใน Service account name ป้อนชื่อ เช่น pushwoosh-bigquery

    Google Cloud จะสร้าง Service account ID จากชื่อโดยอัตโนมัติ

    หน้าจอสร้างบัญชีบริการของ Google Cloud พร้อมชื่อบัญชีบริการและ ID บัญชีบริการที่สร้างขึ้น
  4. คลิก Create and continue

ให้บทบาท IAM

Anchor link to
  1. ให้บทบาท IAM เหล่านี้แก่ Service Account:

    • BigQuery Data Editor: อนุญาตให้ Pushwoosh สร้างตารางและเพิ่มแถว
    • BigQuery User: อนุญาตให้ Pushwoosh ใช้ Storage Write API
    หน้าจอการเลือกบทบาท IAM ของ Google Cloud ที่แสดงบทบาท BigQuery Data Editor และ BigQuery User
  1. คลิก Continue

  2. คลิก Done

สร้างคีย์ JSON

Anchor link to

Pushwoosh ใช้คีย์ JSON เพื่อรับรองความถูกต้องในฐานะ service account

  1. เปิด service account ที่คุณสร้างขึ้น

  2. ไปที่ Keys → Add key → Create new key

แท็บ Keys ของบัญชีบริการ Google Cloud พร้อมตัวเลือกเมนู Add key และ Create new key
  1. เลือก JSON

Google Cloud จะดาวน์โหลดไฟล์คีย์ JSON ไปยังคอมพิวเตอร์ของคุณ

กล่องโต้ตอบสร้างคีย์ส่วนตัวของ Google Cloud พร้อมประเภทคีย์ JSON ที่เลือกสำหรับบัญชีบริการ

สร้างชุดข้อมูล

Anchor link to

ชุดข้อมูลคือที่ที่ Pushwoosh จัดเก็บตารางเหตุการณ์ที่สตรีม

  1. ใน Google Cloud Console เปิด BigQuery

  2. ใน Explorer เลือกโปรเจกต์ที่คุณเตรียมไว้สำหรับการผสานรวม

  3. คลิก Create dataset

หน้า BigQuery ใน Google Cloud Console พร้อมการดำเนินการสร้างชุดข้อมูลเพื่อเลือกตำแหน่งชุดข้อมูล
  1. ใน Dataset ID ป้อน ID ชุดข้อมูล เช่น pushwoosh_data

  2. ใน Data location เลือกภูมิภาคของชุดข้อมูล

ฟอร์มสร้างชุดข้อมูลใน BigQuery ที่แสดงฟิลด์ ID ชุดข้อมูลและตำแหน่งสำหรับภูมิภาคของชุดข้อมูล
  1. คลิก Create dataset

กำหนดค่าการผสานรวมใน Pushwoosh

Anchor link to
  1. ในบัญชี Pushwoosh ของคุณ ไปที่ Settings → 3rd Party Integrations สำหรับแอปพลิเคชันที่คุณต้องการเชื่อมต่อ

  2. ค้นหา Google BigQuery ในรายการบริการที่มีอยู่และคลิก Configure

หน้าการผสานรวมของบุคคลที่สามพร้อมการ์ด Google BigQuery ที่พร้อมสำหรับการกำหนดค่า
  1. กรอกข้อมูลในฟิลด์การกำหนดค่า
  • GCP Project ID: ป้อน ID โปรเจกต์จาก Google Cloud เช่น my-company-12345
  • Service Account JSON: วางเนื้อหาทั้งหมดของไฟล์คีย์ JSON ที่คุณดาวน์โหลดจาก Google Cloud
  • Dataset ID: เมื่อกรอก GCP Project ID และ Service Account JSON แล้ว Pushwoosh จะดึงชุดข้อมูลที่ Service Account ของคุณสามารถเข้าถึงได้ เลือกชุดข้อมูลปลายทาง หากเมนูแบบเลื่อนลงว่างเปล่า ให้ตรวจสอบว่า Service Account มีสิทธิ์เข้าถึงและชุดข้อมูลนั้นมีอยู่ในโปรเจกต์ที่คุณระบุ
  • Dataset region: เลือกภูมิภาคของชุดข้อมูล BigQuery ของคุณ
  • Table name: เว้นว่างไว้เพื่อใช้ตารางเริ่มต้น pushwoosh_events Pushwoosh จะสร้างตารางด้วยสคีมาที่อธิบายไว้ด้านล่าง
  • Events: เลือกเหตุการณ์ที่คุณต้องการสตรีม คุณสามารถเปลี่ยนรายการนี้ได้ในภายหลัง
  • Stream events to BigQuery: เปิดใช้งานสวิตช์นี้ ปิดเพื่อหยุดการสตรีมชั่วคราวโดยไม่ลบการกำหนดค่า
  1. คลิก Test connection

Pushwoosh จะตรวจสอบความถูกต้องของข้อมูลประจำตัวกับ BigQuery โดยไม่เขียนข้อมูล

คุณอาจเห็นสถานะการเชื่อมต่ออย่างใดอย่างหนึ่งต่อไปนี้:

  • Connection successful: ข้อมูลประจำตัวใช้งานได้และ Service Account สามารถเข้าถึงชุดข้อมูลได้
  • auth_failed: คีย์ JSON ไม่ถูกต้องหรือถูกเพิกถอน
  • dataset_not_found: ID ชุดข้อมูลไม่ถูกต้องหรือ Service Account ไม่สามารถเข้าถึงได้
  • missing_permission: Service Account ขาดบทบาทที่จำเป็นอย่างใดอย่างหนึ่ง
  1. คลิก Apply

Pushwoosh จะบันทึกการกำหนดค่าและเริ่มใช้งานภายในประมาณ 30 วินาที หลังจากนั้นเหตุการณ์ที่เลือกจะเริ่มสตรีมไปยัง BigQuery

ตรวจสอบการผสานรวม

Anchor link to
  1. ส่ง push ทดสอบ หรือกระตุ้นข้อความอื่นที่สร้างชนิดของเหตุการณ์ที่คุณเลือก

  2. รอประมาณ 30 วินาที

  3. เปิด BigQuery Studio

  4. ไปที่โปรเจกต์ของคุณ จากนั้นเปิดชุดข้อมูลและตารางปลายทางที่คุณกำหนดค่าไว้ หากคุณเว้น Table name ว่างไว้ ให้เปิด pushwoosh_events

  5. คลิก Preview

คุณควรเห็นแถวเหตุการณ์ในตาราง

ตัวอย่างตาราง BigQuery Studio ที่แสดงแถวเหตุการณ์ Pushwoosh ในตาราง pushwoosh_events

สคีมาของตาราง

Anchor link to

Pushwoosh เขียนแต่ละเหตุการณ์ที่เลือกเป็นแถวแยกต่างหากในตารางปลายทาง เพื่อให้การสืบค้นเร็วขึ้นและง่ายต่อการกรอง ตารางจะถูกแบ่งพาร์ติชันตามวันโดยใช้ timestamp และจัดกลุ่มตาม app_id และ event_kind

ชื่อฟิลด์ประเภทคำอธิบาย
event_kindSTRINGชนิดของเหตุการณ์ Pushwoosh เช่น Push Sent หรือ Email Opened
message_idSTRINGรหัสข้อความ Pushwoosh เช่น ตัวระบุแคมเปญหรือข้อความ
device_idSTRINGHardware ID ของ Pushwoosh ของอุปกรณ์ที่สร้างเหตุการณ์
user_idSTRINGUser ID ภายนอกของคุณหากทราบ ว่างสำหรับอุปกรณ์ที่ไม่ระบุชื่อ
timestampTIMESTAMPเวลาของเหตุการณ์ในรูปแบบ UTC
app_idSTRINGรหัสแอปพลิเคชัน Pushwoosh
platformSTRINGแพลตฟอร์มต้นทาง เช่น ios, android หรือ web
propertiesJSONฟิลด์เหตุการณ์เพิ่มเติม ใช้ JSON_VALUE เพื่อสืบค้นฟิลด์ดังที่แสดงด้านล่าง

คุณสมบัติการสืบค้น

Anchor link to

คอลัมน์ properties จัดเก็บฟิลด์เหตุการณ์เพิ่มเติมเป็น JSON ใช้ JSON_VALUE เพื่อดึงฟิลด์แต่ละรายการในการสืบค้นของคุณ

ตัวอย่างเช่น หากต้องการดูว่าแคมเปญใดทำให้เกิดการเปิดมากที่สุดในช่วง 7 วันที่ผ่านมา ให้คลิก + เพื่อสร้างการสืบค้นใหม่ วาง SQL ด้านล่าง และคลิก Run

SELECT
event_kind,
JSON_VALUE(properties, '$.campaign_id') AS campaign_id,
COUNT(*) AS events
FROM `your-project.your_dataset.pushwoosh_events`
WHERE event_kind = 'Push Opened'
AND timestamp >= TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 7 DAY)
GROUP BY 1, 2
ORDER BY events DESC

หากต้องการตรวจสอบจำนวนเหตุการณ์ในชั่วโมงที่ผ่านมา ให้รันการสืบค้นนี้:

SELECT
event_kind,
COUNT(*) AS events
FROM `your-project.your_dataset.pushwoosh_events`
WHERE timestamp >= TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 1 HOUR)
GROUP BY event_kind
ORDER BY events DESC

อัปเดตการผสานรวม

Anchor link to

หมุนเวียนคีย์ Service Account

Anchor link to
  1. ใน Google Cloud Console ไปที่ IAM & Admin → Service Accounts

  2. เปิด Service Account ของคุณ

  3. ไปที่ Keys และสร้างคีย์ JSON ใหม่

  4. ให้คีย์เก่าใช้งานได้จนกว่าคุณจะยืนยันว่าคีย์ใหม่ใช้งานได้

  5. ใน Pushwoosh เปิดโมดอลการกำหนดค่า Google BigQuery

  6. วาง JSON ใหม่ลงใน Service Account JSON

  7. คลิก Apply

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

หลังจากที่คุณยืนยันว่าเหตุการณ์ยังคงไหลเข้าอยู่ ให้ลบคีย์เก่าใน Google Cloud Console

เปลี่ยนชุดข้อมูลหรือตารางปลายทาง

Anchor link to
  1. ใน Pushwoosh ไปที่ Settings → 3rd Party Integrations

  2. เปิดการตั้งค่า Google BigQuery

  3. เลือกชุดข้อมูลอื่นหรือป้อนชื่อตารางใหม่

  4. คลิก Apply

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

หากต้องการเก็บคีย์ Service Account ที่จัดเก็บไว้ไม่เปลี่ยนแปลงเมื่อคุณอัปเดตการตั้งค่าอื่น ๆ ให้เว้น Service Account JSON ว่างไว้ก่อนที่คุณจะคลิก Apply

การแก้ไขปัญหา

Anchor link to
ปัญหาสิ่งที่ต้องตรวจสอบ
Test connection ล้มเหลวด้วย auth_failedService Account JSON มีรูปแบบไม่ถูกต้องหรือคีย์ถูกเพิกถอนใน Google Cloud สร้างคีย์ใหม่และวางไฟล์ JSON ทั้งหมดอีกครั้ง ไฟล์เริ่มต้นด้วย { ลงท้ายด้วย } และมีบล็อก private_key
Test connection ล้มเหลวด้วย dataset_not_foundDataset ID สะกดผิดหรือไม่มีอยู่ในโปรเจกต์ที่คุณระบุ ID ของชุดข้อมูลคำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ เลือกชุดข้อมูลจากเมนูแบบเลื่อนลงเพื่อหลีกเลี่ยงการพิมพ์ผิด
Test connection ล้มเหลวด้วย missing_permissionService Account ขาดบทบาท BigQuery Data Editor หรือ BigQuery User ให้บทบาททั้งสองในระดับโปรเจกต์ หรือให้ในระดับชุดข้อมูลเพื่อการเข้าถึงที่จำกัดมากขึ้น
Test connection ผ่าน แต่ไม่มีแถวปรากฏใน BigQueryรออย่างน้อย 30 วินาที ตรวจสอบว่าชนิดของเหตุการณ์ที่คุณกำลังส่งถูกเลือกใน Events ตัวอย่างเช่น หากเลือกเฉพาะ Push Opened และไม่มีใครเปิด push ก็จะไม่มีแถวปรากฏขึ้น
การกำหนดค่าดูถูกต้อง แต่โมดอลแสดงฟิลด์ว่างโหลดหน้าเว็บใหม่ การกำหนดค่าจะถูกดึงข้อมูลทุกครั้งที่เปิดโมดอลและแคชไว้ 30 วินาทีโดยบริการพื้นฐาน หากคุณเพิ่งบันทึกการตั้งค่า ให้รอสักครู่แล้วเปิดโมดอลอีกครั้ง

คำถามที่พบบ่อย

Anchor link to
ฉันสามารถใช้บัญชี Google Cloud ฟรีได้หรือไม่
Anchor link to

ได้ ตราบใดที่เปิดใช้งานการเรียกเก็บเงินในโปรเจกต์ เครดิต Free Trial เพียงพอที่จะรันการผสานรวมนี้ในปริมาณปกติได้ตลอดระยะเวลาทดลองใช้ BigQuery Sandbox ที่ไม่มีการเรียกเก็บเงินจะไม่ทำงานเนื่องจาก Storage Write API ต้องการการเรียกเก็บเงิน

Pushwoosh สามารถเห็นข้อมูล BigQuery ของฉันได้หรือไม่
Anchor link to

ไม่ได้ ข้อมูลประจำตัวของ Service Account ที่คุณอัปโหลดจะอนุญาตให้ Pushwoosh เขียนไปยังชุดข้อมูลที่คุณเลือกเท่านั้น Pushwoosh จะไม่อ่านข้อมูลจากชุดข้อมูลของคุณและไม่มีสิทธิ์เข้าถึงส่วนที่เหลือของโปรเจกต์ของคุณ

ฉันสามารถส่งออกไปยังชุดข้อมูล BigQuery หลายชุดได้หรือไม่
Anchor link to

รองรับปลายทางเดียวต่อแอปพลิเคชัน หากคุณต้องการเหตุการณ์เดียวกันในสองชุดข้อมูล ให้ตั้งค่า BigQuery scheduled query ในโปรเจกต์ของคุณเพื่อคัดลอกข้อมูลจาก pushwoosh_events ไปยังตารางอื่น

ฉันสามารถเปลี่ยนสคีมาของตารางได้หรือไม่
Anchor link to

สคีมาถูกกำหนดไว้ตายตัวสำหรับลูกค้าทุกคน หากคุณต้องการคอลัมน์เพิ่มเติม ให้ดึงข้อมูลจาก properties JSON ในมุมมองของคุณเองหรือ scheduled queries

จะเกิดอะไรขึ้นถ้าฉันปิดการใช้งานการผสานรวมชั่วคราว
Anchor link to

ปิด Stream events to BigQuery และคลิก Apply Pushwoosh จะหยุดเพิ่มเหตุการณ์สำหรับแอปพลิเคชันนี้ภายในประมาณ 30 วินาที

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

ฉันจะลบการผสานรวมทั้งหมดได้อย่างไร
Anchor link to

ติดต่อ support@pushwoosh.com เพื่อลบการกำหนดค่าการผสานรวม ชุดข้อมูลและแถวที่เขียนไปยัง BigQuery แล้วจะยังคงอยู่ในบัญชี Google Cloud ของคุณ

มีการรับประกันการจัดส่งหรือไม่
Anchor link to

การผสานรวมใช้การจัดส่งแบบ at-least-once delivery ในการทำงานปกติ การซ้ำซ้อนจะเกิดขึ้นได้ยาก การรีสตาร์ทกระบวนการระหว่างการเพิ่มข้อมูลและการคอมมิตอาจทำให้เกิดแถวที่ซ้ำกันจำนวนเล็กน้อยได้ ให้ทำการ Deduplicate ใน SQL หากไปป์ไลน์ดาวน์สตรีมของคุณต้องการผลลัพธ์แบบ exactly-once

ทำไมจึงไม่มีเหตุการณ์ Push Clicked
Anchor link to

ปัจจุบัน Pushwoosh แสดงเหตุการณ์ Push Sent, Push Delivered และ Push Opened สำหรับ push notifications ในการผสานรวมนี้ ยังไม่มีขั้นตอนการคลิก push โดยเฉพาะ อีเมลและ SMS มีเหตุการณ์ในวงจรชีวิตของตัวเอง