Quantcast
Channel: cc :: somkiat
Viewing all articles
Browse latest Browse all 1997

สรุปจากบทความ Using ClickHouse as an Analytic Extension for MySQL

$
0
0

จากบทความเรื่อง Using ClickHouse as an Analytic Extension for MySQL
ซึ่งเขียนโดย Percona นั้น
ทำการอธิบายการนำข้อมูลจาก MySQL ไปวิเคราะห์ผ่าน ClickHouse
โดยใช้งาน extension สำหรับ MySQL นั่นเอง
ที่สำคัญไม่ใช่เอามาแทนที่ แต่เอามาทำงานตาม use case ที่เหมาะสม

สิ่งที่บทความอธิบายคือ ทำไมถึงต้องมีตัวช่วยสำหรับการ Analytic ด้วย ?

แน่นอนว่า MySQL ไม่สนับสนุน หรือ ไม่เหมาะสม เป็นดังนี้

  • จำนวน table มากขึ้น รวมทั้งข้อมูลบเป็นแบบไม่เปลี่ยนแปลง (Immutable data) และที่น่ากลัวคือ transaction data/table
  • ต้องการทำ aggregation query ที่หนัก ๆ เราจะเจอได้จากพวก having, group by นั่นเอง ยิ่งทำบนข้อมูลขนาดใหญ่ ยิ่งสนุกสนาน

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

หนึ่งในคำตอบของความต้องการข้างต้น คือ ClickHouse
ที่ได้เตรียมการทำงานกับข้อมูลที่ไม่ปลี่ยนแปลง
การทำ aggregation ที่รวดเร็ว ดังนั้นทำงานแบบ realtime ได้เลย

ปล. ClickHouse มันถูกออกแบบมาเพื่อ analytic processing โดยเฉพาะ
ข้อมูลจัดเก็บในรูปแบบ colume-based และทำงานแบบ parallel อีกด้วย

แต่ ClickHouse ไม่ได้ support ACID แบบเต็มรูปแบบ
ดังนั้นเรื่องของ use case ที่ต้องการความถูกต้องจริงจัง ก็อาจจะไม่เหมาะนะ
รวมทั้งการ update/delete เยอะ ๆ ก็ไม่เหมาะ

ดังนั้น ใช้ให้ถูกกับงานด้วยนะ !!

รูปแบบการ integrate ClickHose กับ MySQL

มีอยู่ 3 รูปแบบคือ

รูปแบบที่ 1 ทำการดึงข้อมูลจาก MySQL ผ่าน ClickHouse

โดยใช้งานผ่าน MySQL database engine

รูปแบบที่ 2 ทำการย้ายข้อมูลจาก MySQL ไปยัง ClickHouse

โดยไม่ต้องมาดึงข้อมูล หรือ load มายัง MySQL เลย
ให้ใช้งานผ่าน ClickHose ตรง ๆ เลย สำหรับการ analytic

ใช้งานผ่าน MergeTree table engine

รูปแบบที่ 3 ทำการ mirror หรือ snapshot ข้อมูลจาก MySQL ไปยัง ClickHouse

โดยทำการ replicate ข้อมูลที่เปลี่ยนแปลงใน MySQL ไปเท่านั้น
ใช้งานผ่าน ReplacingMergeTree

เป็นอีกแนวทางที่น่าสนใจ ในการออกแบบระบบงาน
เพื่อให้ตอบโจทย์ทาง business

Reference Websites


Viewing all articles
Browse latest Browse all 1997

Trending Articles