ในการเตรียมข้อมูลเพื่อให้พร้อมใช้งาน มีหนึ่งคำที่เรามักจะเห็นกันบ่อย ๆ อย่าง “Data Pipeline” จนหลายคนอาจสงสัยว่าจริง ๆ แล้วเจ้า Data Pipeline คืออะไรกันแน่? ซึ่ง Data Pipeline นั้นเป็นกระบวนการที่ช่วยให้สามารถวางแผนและทำงานได้อย่างเป็นระบบ ซึ่งในกระบวนการ Data Pipeline ก็มีวิธีการประมวลผลรูปแบบต่าง ๆ และขั้นตอนแยกย่อยอีกหลายขั้นตอน และต้องใช้เครื่องมือเข้ามาช่วยประมวลผล
บทความนี้ Data Wow จะพาคุณมาไขข้อสงสัยว่า Data Pipeline คืออะไร? มีกระบวนการอย่างไร? พร้อมแนะนำวิธีสร้าง Data Pipeline ด้วย Google Cloud มาให้ศึกษาไปพร้อมกัน
Data Pipeline คือ กระบวนการนำเข้าข้อมูลดิบ (Raw Data) จากแหล่งต่าง ๆ มาทำการแปลงข้อมูล (Data Transformation) โดยทำการกรองข้อมูล จัดเรียง และจัดรูปแบบ เพื่อชุดข้อมูลนั้นสามารถนำไปใช้ประโยชน์ได้ และย้ายข้อมูลไปยังปลายทาง เช่น Data Lake, Data Warehouse เพื่อใช้ในการทำ Data Analytics, Data Science หรือ Machine Learning ได้ง่ายขึ้นนั้นเอง
จากที่เราทราบกันแล้วว่าความหมายของ Data Pipeline คืออะไร ในหัวข้อนี้เราจะมาเจาะลึกประเภทของ Data Pipeline ว่ามีกี่ประเภท และมีกระบวนการทำงานอย่างไรบ้าง
Batch Processing โดย K21Academy
การประมวลผลเป็นชุด (Batch Processing) คือ การนำเข้าข้อมูลที่ถูกเก็บรวบรวมผ่านวิธีการต่าง ๆ ในช่วงเวลาหนึ่ง เพื่อนำมาประมวลผลในครั้งเดียว เป็น Data Pipeline ที่เหมาะสมกับการวิเคราะห์ชุดข้อมูลที่ทำเป็นครั้งคราว เช่น บัญชีรายเดือน โดยทั่วไปจะสามารถทำงานได้ดีในช่วงเวลาที่มีการใช้งานน้อย (เช่น ช่วงเวลากลางคืน) เพื่อให้ระบบส่วนอื่น ๆ ไม่ได้รับผลกระทบ
Streaming Data โดย K21Academy
Streaming Data คือ การนำเข้าข้อมูลที่รวบรวมจากแหล่งต่าง ๆ ได้ทันที เช่น การอัปเดตสต็อกสินค้าภายในแอปพลิเคชัน, การโต้ตอบผู้ใช้งาน Data Pipeline ประเภทนี้คือตัวเลือกที่ดี สำหรับการประมวลผลแบบเรียลไทม์ที่ต้องคำนึงถึงเวลา
อย่างที่ทราบกันว่า Data Pipeline คือ กระบวนการที่เตรียมข้อมูลให้พร้อมใช้งาน ซึ่งภายใน Data Pipeline เองก็มีกระบวนการต่าง ๆ ที่เราเคยได้ยินชื่อกันมาก่อน โดยมี 4 ขั้นตอน ดังนี้
ขั้นตอนแรกของ Data Pipeline คือ การนำเข้าข้อมูล หรือ Data Ingestion เป็นกระบวนการนำเข้าไฟล์ข้อมูลขนาดใหญ่จากหลายแหล่งมาไว้ในสื่อจัดเก็บข้อมูลบนคลาวด์เดียว เช่น Data Warehouse, Data Lake หรือ Database ซึ่งสามารถเข้าถึงและวิเคราะห์ได้
หลังจากนำเข้าข้อมูลแล้ว ขั้นตอนต่อไปของ Data Pipeline คือ การจัดเก็บข้อมูล โดยข้อมูลจำเป็นต้องถูกจัดเก็บในระบบที่เหมาะสมซึ่งสามารถรองรับการเข้าถึงข้อมูลได้อย่างรวดเร็วและมีประสิทธิภาพ การจัดเก็บข้อมูลสามารถเป็นได้ทั้งในรูปแบบที่มีโครงสร้าง (Structured Data), ไม่มีโครงสร้าง (Unstructured Data), หรือรูปแบบกึ่งโครงสร้าง (Semi-structured Data)
อ่านสาระเกี่ยวกับข้อมูลรูปแบบต่าง ๆ ได้ที่: เปรียบเทียบ Structured Data vs Unstructured Data แตกต่างกันยังไง
เป็นขั้นตอน Data Pipeline ที่ทำการแปลงข้อมูลเพื่อให้อยู่ในรูปแบบที่สมบูรณ์ และพร้อมใช้งานได้ตามวัตถุประสงค์ เช่น การจัดเรียง การจัดรูปแบบ การวางโครงสร้าง การลบข้อมูลที่มีความซ้ำซ้อน และการตรวจสอบความถูกต้องของข้อมูล
ขั้นตอนสุดท้ายหลังจากผ่านกระบวนการ Data Pipeline คือ การนำข้อมูลที่ได้ไปใช้ประโยชน์ ไม่ว่าจะเป็นการวิเคราะห์ข้อมูลเพื่อหาข้อมูลเชิงลึก (Insights) หรือส่งต่อข้อมูลไปยังระบบอื่น ๆ เพื่อดำเนินการต่อไป
คุณอาจเคยเห็นคำว่า Data Pipeline และ ETL Pipeline แยกย่อยอยู่ในกระบวนการต่าง ๆ ซึ่งทั้งสองประเภทนี้มีความแตกต่างกัน โดย ETL Pipeline เป็นหมวดหมู่ย่อยของ Data Pipeline มีความแตกต่างกันดังนี้
ETL Pipeline จะมีกระบวนการย้ายข้อมูลที่เป็นลำดับขั้นตอนคือ Extract (ดึงข้อมูล), Transforming (แปลงข้อมูล) และ Loading (นำข้อมูลเข้าสู่ปลายทาง) แต่ Data Pipeline อาจจะไม่เป็นไปตามลำดับ ETL อาจจะดึงข้อมูลจากแหล่งต่าง ๆ และย้ายข้อมูลไปยัง Data Lake โดยไม่ผ่านการแปลงข้อมูล หลังจากจัดเก็บข้อมูลแล้วจึงทำการแปลงข้อมูล ซึ่งเป็นไปตามกระบวนการ ELT Extract (ดึงข้อมูล), Loading (นำข้อมูลเข้าสู่ปลายทาง), Transforming (แปลงข้อมูล)
โดยรวมแล้ว Data Pipeline มีขอบเขตในการทำงานที่กว้างกว่า ETL Pipeline นอกจากนี้ยังสามารถใช้ร่วมกับ Streaming Data ได้อีกด้วย
โดยสรุปแล้วการทำ Data Pipeline คือ กระบวนการสำคัญที่ช่วยเข้ามาจัดการข้อมูลให้เป็นระบบมากขึ้น ซึ่งคลังข้อมูลก็จะมีลำดับ Data Pipeline ที่แตกต่างกันออกไปตามรูปแบบการจัดเก็บ จึงเป็นสาเหตุให้เราคุ้นหูคุ้นตากับคำว่า Data Pipeline นั่นเอง และนอกจากเครื่องมือของ Google Cloud แล้ว ยังมีเครื่องมืออื่น ๆ ที่คุณสามารถเลือกใช้ได้ตามความถนัด ถึงแม้จะเป็นองค์กรเล็ก ๆ ก็ควรให้ความสำคัญกับ Data Pipeline เพื่อดึงประโยชน์จากข้อมูลที่มีอยู่ได้อย่างมีคุณภาพ
อยากทำ Data Pipeline แต่ข้อมูลเยอะ ไม่รู้จะเริ่มอย่างไรดี? ที่ Data Wow เรามีทีมผู้เชี่ยวชาญด้าน Data ที่มีประสบการณ์จากหลายภาคธุรกิจ ที่สามารถตอบคำถาม ให้คำปรึกษา และช่วยให้บริหารข้อมูลได้อย่างมีประสิทธิภาพ ตลอดจนสามารถใช้นำมูลเชิงลึกที่ได้มาวางแผนการตลาดที่จะเกิดขึ้นในอนาคต
จัดการข้อมูลด้วยเทคโนโลยีทันสมัยกับ Data Wow ได้วันนี้ที่ sales@datawow.io หรือโทร 02-024-5560