วันนี้ DataTH จะพาทุกคนไปส่องเทรนด์ด้าน Data Engineering ที่กำลังเกิดขึ้น และเทรนด์ที่กำลังจะเกิดขึ้นในอนาคตอันใกล้มาให้ได้ติดตามกัน โดยมีตั้งแต่การทำ Data Streaming, การใช้เครื่องมือในการย้ายข้อมูล (ELT / ETL), ตลอดจนไปถึงเครื่องมือใหม่ ๆ ที่เกิดขึ้น
จากบทความก่อนหน้านี้ ที่เราพูดถึงความเป็นมาของอาชีพ Data Engineer กันไป เราจะได้เห็นว่าเทรนด์ด้าน Data Engineering ที่มีให้เห็นมาสักพักแล้วคือ Cloud Computing แล้วจะมีเทรนด์อะไรอีกบ้างที่เรากำลังจะได้เห็นกันในโลกของ Data Engineering ตามไปดูพร้อม ๆ กันเลย
การทำ Data Streaming
การประมวลผลข้อมูลในยุคก่อนหน้านี้ จะเป็นการประมวลผลแบบ Batch หมายความว่าจะต้องรอให้ครบเวลาที่กำหนด จึงจะสามารถนำข้อมูลเหล่านั้นมาเข้าสู่การประมวลผลและใช้งานต่อได้ ซึ่งเหมาะกับข้อมูลปริมาณมาก
แต่ในปัจจุบันนี้ การประมวลผลข้อมูลถูกเปลี่ยนมาเป็นแบบ Data Stream เพราะสามารถช่วยทำให้เข้าถึงข้อมูลที่ถูกจัดเก็บไว้ได้รวดเร็วมากขึ้น เรียกได้ว่าแทบจะเป็นแบบ Real-Time โดยการประมลผลข้อมูลทันทีหลังจากได้รับข้อมูลเข้ามา
ตัวอย่างการใช้ Data แบบ Real-time
- Real-time Inventory: อัปเดตสต็อกสินค้าได้แบบเรียลไทม์ ประหยัดเวลา ลูกค้ามองเห็นสินค้าที่เหลือได้ทันที สั่งสินค้าได้เลย
- Log Aggregation: ทำให้สามารถจัดการกับปัญหาที่เกิดขึ้นได้เร็วมากขึ้น เวลา Server ล่ม ก็จะแก้ไขได้เร็วขึ้น
- Real-time Abandoned Cart: ช่วยทำให้ทีมการตลาดสามารถติดตามการซื้อสินค้าของลูกค้าได้ง่ายขึ้น อาจจะด้วยการส่งอีเมลเพื่อเตือนให้ลูกค้ากลับมาจ่ายเงิน หรือกลับมาเลือกสินค้าต่อ ซึ่งทำให้สามารถรักษาลูกค้าไว้ได้มากขึ้น
ตัวอย่างเทคโนโลยี Data Streaming
- Apache kafka: เครื่องมือที่ช่วยนำข้อมูลจำนวนมากเข้าสู่ระบบได้อย่างรวดเร็ว
- Apache Spark: เครื่องมือที่ช่วยกระจายงานต่าง ๆ ได้อย่างมีประสิทธิภาพ (Cluster computing platform) [อ่านวิธีใช้เพิ่มเติมได้ที่ คู่มือการใช้ Apache Spark]
- Amazon Kinesis: เป็นบริการสตรีมข้อมูลแบบไร้เซิร์ฟเวอร์ ช่วยทำให้จัดการและประมวลผลข้อมูลได้อย่างรวดเร็วและง่ายดาย
ข้อดีและข้อเสียของการใช้ Data Streaming
ข้อดีหลัก ๆ ของการใช้ Data Streaming คือ สามารถช่วยทำให้สามารถตัดสินใจได้ง่ายขึ้น โดยอ้างอิงจากข้อมูลที่ถูกจัดเก็บไว้ นอกจากนี้ก็ยังมีข้อดีอื่น ๆ อีก เช่น
- ประมวลผลข้อมูลได้เร็วและแม่นยำ
- ช่วยทำให้แก้ปัญหาได้เร็วขึ้น เพราะสามารถประมวลผลข้อมูลได้ทันที ทำให้สามารถปรับปรุงคุณภาพของข้อมูลได้ง่ายด้วยการตรวจจับและแก้ไขข้อผิดพลาดได้เร็ว
- ช่วยเพิ่ม ROI ด้วยการช่วยเพิ่มความพึงพอใจของลูกค้า สามารถทำให้บริษัทหรือธุรกิจมองเห็นเทรนด์หรือความต้องการที่กำลังเกิดขึ้นได้แบบ Real-time
ข้อเสียที่อาจจะเกิดขึ้นคือเรื่องของค่าใช้จ่ายและอื่น ๆ คือ
- ค่าใช้จ่ายสูงมากกว่าการทำ Batch Processing เพราะจะต้องใช้อุปกรณ์หรือระบบที่มีความเฉพาะทางมากขึ้น
- ระบบมีความซับซ้อนมากขึ้น เนื่องจากต้องใช้ทักษะและความเชี่ยวชาญเฉพาะทาง
Tip: สำหรับบางธุรกิจ ทำแบบ Mini batch หรือ Near Real-time ก็เพียงพอแล้ว ไม่ต้องลงทุนทำ Data Streaming แบบ Real-time ซึ่งช่วยลดค่าใช้จ่ายได้มหาศาล
ภาษาโปรแกรมมิ่งที่ใช้ในการทำ Data Analytics
ในส่วนของภาษาที่ใช้ในการเขียนโค้ดหรือการจัดการข้อมูลในช่วงก่อนหน้านี้ จะนิยมใช้ Python และ Java แต่ในปัจจุบันนี้มีแนวโน้มในการใช้เครื่องมือใหม่ ๆ มากขึ้น SQL ก็มีบทบาทมากขึ้น
เพราะ SQL เป็นภาษาที่คนทำ Data จะต้องใช้ได้ไม่ว่าจะหน้าที่อะไร โดยไม่ต้องศึกษาภาษาใหม่ ๆเพิ่มเติม ดังนั้นจึงมีเครื่องมือที่ใช้ SQL ออกมา อย่างเช่น snowflake และ dbt เพื่อทำให้ทุกฝ่ายสามารถใช้งานระบบและเข้าถึงข้อมูลได้สะดวก
เครื่องมือในการย้ายข้อมูล (การทำ ETL/ELT)
ก่อนหน้านี้การจะย้ายข้อมูล จำเป็นต้องเขียนโค้ดทำ Data Pipeline ที่ค่อนข้างซับซ้อน ทำให้คนอยากย้ายข้อมูลจะต้องเรียนรู้โปรแกรมมิ่งเยอะมาก
ปัจจุบันนี้ มีเทรนด์ที่ต้องการทำให้เครื่องมือใช้งานได้ง่ายมากยิ่งขึ้นในการย้ายข้อมูล ทำให้หลาย ๆ คนเลือกใช้เครื่องมือที่ใช้งานง่ายมากยิ่งขึ้น โดยที่ไม่ต้องเขียนโค้ดเพื่อทำ Data Pipeline ใด ๆ ทั้งสิ้น แค่คลิกเลือกว่าอยากคัดลอกข้อมูลจากไหน และเคลื่อนย้ายไปยังปลายทางไหน ก็เรียบร้อยแล้ว
ตัวอย่างเครื่องมือกลุ่มนี้ ได้แก่ Fivetran, Stitch และ Airbyte โดยระบบเหล่านี้ถูกออกแบบมาเพื่อลดความซับซ้อนของกระบวนการแยก แปลง และโหลด (ETL) หรือแยก โหลด และแปลง (ELT) ข้อมูลจากแหล่งต่าง ๆ ไปยังคลังข้อมูลหรือปลายทางอื่น ๆ
เครื่องมือเหล่านี้ยังมีแนวโน้มที่เหมาะกับธุรกิจที่ขนาดเล็ก ด้วยค่าใช้จ่ายที่ไม่สูงมาก ใช้งานง่ายและมีความซับซ้อนน้อยกว่าเครื่องมือแบบดั้งเดิม
เครื่องมือ Collaborative Analytics
Collaborative Analytics Tools ถูกพัฒนาขึ้นมาเพื่อช่วยทำให้การทำงานร่วมกันของทีมเป็นไปได้อย่างง่ายดายมากยิ่งขึ้น ด้วยการสร้างระบบที่ทุกคนในทีม Data และ Business เข้ามาใช้ได้แบบ Real Time ช่วยลดปัญหา Silo (แต่ละทีมต่างทำงาน โดยไม่ต้องคุยกัน) ได้
เครื่องมือที่น่าสนใจคือ Datatricks ซึ่งเรามีสอนเนื้อหาการใช้งานอยู่ในคอร์ส Road to Data Engineer – Special Classes อีกด้วย (ถ้าสนใจเรียนคอร์สนี้ สามารถทัก Inbox เพจ มาได้เลย)
การสร้าง Self-service Data Platform
อีกหนึ่งเทรนด์ในแวดวง Data Engineering ที่กำลังได้รับความสนใจก็คือ Self-service Data Platform ซึ่งเป็นระบบในการวิเคราะห์ข้อมูล ที่ถูกออกแบบมาเพื่อทำให้คนที่ไม่มีความเชี่ยวชาญในด้านเทคนิคต่าง ๆ สามารถเข้าถึงข้อมูลใน Database / Data Warehouse ได้อย่างง่ายดาย
ระบบที่ถูกนำมาใช้งานมากขึ้นในปัจจุบันจะเป็นพวกระบบ CDP (Customer Data Platform) ซึ่งเป็นตัวที่รวบรวมข้อมูลลูกค้าจากหลาย ๆ แหล่งข้อมูล (Source) เพื่อจัดส่ง (Destonation) และจัดการได้ง่ายขึ้น
ประโยชน์ของการใช้ CDP คือสามารถช่วยทำให้ทีมการตลาดสามารถเข้าใจลูกค้าได้มากขึ้น อีกทั้งยังสามารถส่งข้อมูลลูกค้าไปยัง Google Ads, Intercom และ Salesforce ได้อีกด้วย ผลลัพธ์ก็คือช่วยกระตุ้นยอดขายได้ ช่วยทำให้ทีมการตลาดทำงานได้ง่ายขึ้น
การจัดการข้อมูลแบบ Data Mesh
อีกหนึ่งเทรนด์ที่ต่อมาจาก CDP ก็คือ Data Mesh ซึ่งเป็นแนวคิดในการทำงานเพื่อจัดเก็บข้อมูลขนาดใหญ่ให้สามารถใช้งานได้ง่าย โดยเน้นให้แต่ละทีมดูแลข้อมูลที่เกี่ยวข้องได้ง่าย หรือการที่แต่ละทีมเป็น Domain Expertise ของตัวเอง
Data Mesh มอง Data เป็น Product (สินค้า) ตัวหนึ่งของธุรกิจ ที่มีการแบ่งทีมดูแล (Domain Expertise) ทำให้สามารถจำกัดและมอบสิทธิในการเข้าถึงข้อมูลให้กับทีมต่าง ๆ ได้อย่างชัดเจน ทีมโดเมนก็สามารถควบคุมข้อมูลและจัดการได้ แชร์ข้อมูลให้ทีมอื่น ๆ ได้อีกด้วย
การสร้างระบบ Reverse ETL
Reverse ETL คือ การรับส่งข้อมูลแบบ ETL ถูกนำมาใช้ในการทำให้ข้อมูลที่วิเคราะห์แล้ว และเก็บไว้ใน Data Lake / Data Warehouse กลับเข้าไปในระบบการจัดการข้อมูล เพื่อนำไปใช้ต่อให้เกิดประโยชน์สูงสุด
อย่างเช่นการที่ระบบเก็บข้อมูล / วิเคราะห์ไว้แล้วว่าลูกค้าคนนี้สั่งซื้อสินค้ามาก่อน เมื่อลูกค้ากลับมาติดต่อหรือซื้อสินค้า ทำให้ทีมขายสามารถรู้ได้ทันทีว่าลูกค้ามีประวัติการสั่งซื้อ และกลับมาซื้อซ้ำ ทำให้สามารถปรับปรุงข้อความในการการคุยกับลูกค้าให้ตรงตามความต้องการ สร้างยอดขายและสร้างความสัมพันธ์ที่ดีกับลูกค้าได้ง่ายขึ้น
ปัจจุบันนี้ Reverse ETL ได้รับความนิยมมากขึ้น มีเงินลงทุนมหาศาล และมีแนวโน้มว่าจะได้รับความนิยมเพิ่มมากขึ้นอีกด้วย
สรุปเทรนด์ของ Data Engineering ที่กำลังมาแรง
ถึงแม้ว่า Date Engineering ถูกพัฒนาขึ้นมาหลายสิบปีแล้ว แต่ด้วยเทคโนโลยี เครื่องมือและข้อมูลที่มากขึ้น ทำให้ Data Engineer ต้องติดตามเทรนด์อยู่ตลอดเวลา ตลอดจนไปถึงการมองหาเครื่องมือใหม่ ๆ ที่สามารถทำให้การจัดการข้อมูลมีประสิทธิภาพมากขึ้นได้
ในยุคที่แทบจะทุกอย่างเป็นข้อมูล มีการจัดเก็บ ส่งต่อและใช้ข้อมูลตลอดเวลา สามารถบ่งบอกได้เลยว่าเทรนด์ของ Date Engineering นั้นจะต้องถูกพัฒนาไปอีกค่อนข้างมาก
สำหรับใครที่ไม่อยากพลาดบทความดี ๆ เกี่ยวกับเทรนด์ล่าสุด หรือข่าวสารในแวดวง Data ก็สามารถติดตามเราได้เลยที่ Facebook Page: DataTH และ Youtube Channel: Data Science ชิลชิล