Collect Google Analytics data in real-time with Microsoft Azure

Google Analytics เป็นหนึ่งในบริการของ Google สำหรับเก็บสถิติผู้ใช้บนเว็บไซต์ของเราและวิเคราะห์เพื่อวัดจุดคุ้มทุนการโฆษณาตลอดจนติดตามพฤติกรรมผู้เยี่ยมชม แหล่งที่มาของผู้เข้าชม และกิจกรรมเครือข่ายสังคม (social media) ดังนั้นจากบทความชุดนี้ เราจะสำรวจวิธีรวบรวมข้อมูลกิจกรรมที่เกิดขึ้นบนเว็บไซต์ของคุณจาก Google Analytics แบบกึ่งเรียลไทม์ ด้วยวิธีที่ค่อนข้างง่ายในราคาประหยัด โดยใช้ประโยชน์จากบริการฟรีที่มีอยู่ของ Google และบริการคลาวด์แบบจ่ายตามการใช้งานของ Microsoft Azure และเริ่มได้รับสิทธิ์ประโยชน์จากข้อมูลที่คุณเป็นเจ้าของ

Background

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

ซึ่งสามารถลดข้อจำกับดังกล่าวด้วยทางเลือกหนึ่งคือการอัปเกรดเป็น Google Analytics เป็นวอร์ชันชำระเงิน (GA360) และส่งข้อมูลออกไปยัง Google Big Query อย่างไรก็ตาม องค์กรส่วนใหญ่พบว่าเป็นเรื่องยากที่จะระบุต้นทุนการใช้งาน อีกทางเลือกหนึ่งคือการพัฒนาชุดคำสั่งสำหรับติดตามด้วยตนเองจากชุดคำสั่งบนเว็บไซต์และติดตามความเคลื่อนไหวของข้อมูล (Data pipeline) ซึ่งอาจทำให้เกิดใช้จ่ายและเวลาในการพัฒนาสูงอย่างมีนัยยะ

อีกทางเลือกหนึ่งที่เราพูดถึงในบทความนี้คือการทำซ้ำเหตุการณ์จากเว็บไซต์ที่ส่งไปยัง Google Analytics โดยใช้ Google Tag Manager (GTM) และส่งไปยัง Azure Event Hub ทำให้คุณมีความยืดหยุ่นในการเก็บข้อมูลดิบของการรับส่งข้อมูล (Raw traffic data) และกระบวนการจัดการข้อมูล (Data pipeline) เพิ่มเติม สำหรับการวิเคราะห์/การแสดงภาพแบบกึ่งเรียลไทม์ หรือประยุกต์ใช้งานร่วมกับแพลตฟอร์ม/คลังข้อมูลที่มีอยู่ของคุณ

Solution

ในการเปิดใช้งาน มีเพียงไม่กี่องค์ประกอบที่จำเป็นในการเริ่มต้น:

  1. บัญชี Google Analytics
  2. บัญชี Google Tag Manager ที่มีคอนเทนเนอร์ที่กำหนดค่าด้วยตัวแปร JavaScript ที่กำหนดเอง
  3. การสมัครใช้งาน Microsoft Azure ด้วย Azure Event Hub

ในสถาปัตยกรรมข้างต้น GTM จะทำซ้ำเหตุการณ์ที่ปกติแล้วส่งไปยัง Google Analytics ไปยังปลายทางอื่นที่คุณเลือก ในกรณีของเรา Azure Event Hubs ซึ่งสิ่งที่ยอดเยี่ยมเกี่ยวกับ Event Hubs คือความยืดหยุ่น โดยผู้ใช้หลายคนสามารถตั้งค่าระบบให้ทำหน้าที่ที่แตกต่างกันได้ทั้งในรูปแบบชุด (batch) หรือแบบเรียลไทม์

ตัวอย่างเช่น เราสามารถกำหนดค่า Azure Event Hubs เพื่อเปิดใช้งาน Event Hub Capture เพื่อบันทึกข้อมูลการสตรีมใน Event Hubs ลงในที่เก็บข้อมูล Azure Blob หรือบัญชี Azure Data Lake Storage Gen 2 โดยอัตโนมัติ ซึ่งช่วยให้คุณเริ่มสร้างบันทึกเหตุการณ์บนเว็บของคุณได้ทันที

หรืออีกสถานการณ์ เราสามารถใช้ Azure Stream Analytics ในการกำหนดค่าเพื่อใช้ แปลง และส่งข้อมูลไปยังเอาต์พุตหลากหลายโดยกระบวนการสตรีมมิ่ง (streaming) เช่น Power BI streaming datasetAzure SQL Database หรือ Azure Cosmos DB สามารถดูรายการผลลัพธ์ของ Stream Analytics ทั้งหมดได้ที่นี่ (รายละเอียด)

อีกทั้งรอบรับแนวทางขั้นสูงโดยการใช้ Azure Databricks และการสตรีมแบบ (structured streaming) มีโครงสร้างเพื่อส่งข้อมูลโดยตรงจาก Event Hubs หรือ ใช้เพียงแค่ Databricks เพื่อพัฒนาไปป์ไลน์เพื่อแปลงและวิเคราะห์ หรือพัฒนา Machine learning models

Summary

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

ในบทความถัดไป เราจะเจาะลึกถึงการตั้งค่า Azure Event Hub และ Google Tag Manager เพื่อเริ่มเก็บข้อมูล

Share this article on social media!

Recommended Articles