Zero ETL: อนาคตของการทำ data integration

Zero ETL: อนาคตของการทำ data integration

18 พฤษภาคม 2566
Zero-ETL
Zero-ETL

               หลายคนที่ติดตามข่าวสารเกี่ยวกับซอฟต์แวร์จัดการข้อมูลขนาดใหญ่ อาจเคยได้ยินคำว่า Zero ETL มาแล้วบ้าง หลายคนอาจจะอยากรู้ว่า

               “Zero ETL จะเป็นอนาคตของการทำ data integration จริง ๆ หรือจะเป็นเพียง buzzword ที่ผ่านมาแล้วก็หายไปตามกาลเวลา”

               ในบทความนี้เราจะมารู้จักกันว่า Zero ETL คืออะไร มีข้อดี ข้อเสียอย่างไร และเหมาะสมกับการใช้งานของเราหรือไม่กันครับ

ทำความรู้จักกับ ETL กันก่อน

               ก่อนที่เราจะมารู้จัก Zero ETL เราต้องรู้จัก ETL ก่อนครับ ETL ย่อมาจากขั้นตอนการจัดการข้อมูล 3 ขั้นตอน ได้แก่ Extract Transform และ Load ซึ่งเป็นส่วนประกอบพื้นฐานของกระบวนการจัดเตรียมข้อมูล และเป็นจุดเริ่มต้นของการนำข้อมูลไปใช้ในโครงการ Big Data ใด ๆ ก็ตาม (ตัวอย่างการทำ ETL ด้วย Talend และ Python) Data Engineer หลายท่านก็เรียก ETL pipeline ว่า data pipeline หรือ batch processing

               โดยทั่วไปแล้ว ETL pipeline จะทำงานโดยการดึงข้อมูลจากแหล่งที่มา ซึ่งอาจจะมีมากกว่าหนึ่งแห่ง และอาจจะมีรูปแบบข้อมูลที่แตกต่างกัน จากนั้นทำการแปลงข้อมูลให้อยู่ในรูปแบบที่เหมาะสมกับสิ่งที่ผู้ใช้งานต้องการ แล้ววางข้อมูลที่ถูกแปลงไปยัง data warehouse ที่ business analyst หรือ data scientist จะนำข้อมูลไปใช้ต่อไป การเตรียมข้อมูลในแบบ ETL เคยเป็นสิ่งที่จำเป็นตอนที่ต้นทุนการเก็บข้อมูลสูง จึงต้องเตรียมข้อมูลให้ผู้ใช้งานเท่าที่ต้องการ แต่ตอนนี้ค่าเก็บข้อมูลถูกลงมากจนทำให้ไม่ได้เป็นข้อจำกัดของระบบอีกต่อไป ข้อเสียของ ETL คือ ผู้ใช้งานสูญเสียความยืดหยุ่นในการคำนวณข้อมูลใหม่ เนื่องจากผู้ใช้งานไม่ได้ถือข้อมูลดิบ ทำให้ต้องติดต่อ Data Engineer ให้ทำการรัน ETL อีกครั้งหากมีความต้องการที่เปลี่ยนแปลงไป

แล้ว Zero ETL คืออะไร

               Zero ETL เป็นคอนเซ็ปใหม่ในวงการ Data Engineering ที่หมายถึงการเตรียมข้อมูลโดยไม่ต้องทำ ETL โดยจะเป็น automatic pipeline ที่ย้ายข้อมูลดิบมายัง data warehouse โดยอาจจะมีการทำ transform เล็กน้อยโดยอัตโนมัติ เช่นการแปลงข้อมูล JSON จาก API ให้เป็นรูปแบบตาราง เป็นต้น ทำให้ผู้ใช้งานสามารถ query ข้อมูลจาก data warehouse ได้เองโดยตามที่ต้องการ (ตามสิทธิของการเข้าถึงข้อมูล) และได้ใช้ข้อมูลที่อัพเดทแบบ real time

               หลายคนอาจจากสงสัยว่า สิ่งที่ Zero ETL ทำ ก็เหมือนกับการให้ผู้ใช้งานเข้าไป query จากฐานข้อมูลของ application ได้เองหรือไม่ ก่อนจะตอบคำถามนี้เราต้องเข้าใจก่อนว่าคำว่า “Zero ETL” เป็นคำที่ AWS ใช้เพื่อโฆษณาการ integrate ข้อมูลโดยไม่ต้องมีการทำ ETL จาก Amazon Aurora ซึ่งเป็นฐานข้อมูลบนคลาวด์ ไปยัง Amazon Redshift ซึ่งเป็น data warehouse product ที่มีฟีเจอร์ที่ช่วยการทำงานเกี่ยวกับ data analysis ดังนั้น ผมจึงอยากให้มองว่า Zero ETL คือการ integrate data warehouse product เข้ากับฐานข้อมูลโดยอัตโนมัติ และอาจจะ integrate หลาย ๆ ฐานข้อมูลเข้าด้วยกันได้ ดังนั้นสิ่งที่แตกต่างจากการให้ผู้ใช้งาน query database เองก็คือ ผู้ใช้งานสามารถใช้ฟีเจอร์ต่าง ๆ ของ data warehouse product ไปพร้อมกันได้

Zero ETL กับการนำมาใช้

               นอกจาก AWS ที่เป็นผู้ที่เริ่มใช้คำนี้แล้ว ก็มีผู้ให้บริการ Big Data อีกหลายแพลตฟอร์มที่มีฟีเจอร์นี้ เช่น Google Cloud Platform (BigTable to BigQuery) และ Snowflake (Unistore) และมีฟีเจอร์ของ Snowflake (Secure Data Sharing) และ Databricks (Delta Sharing) เป็นการแชร์ข้อมูลโดยไม่คัดลอก “no copy data sharing” ซึ่งทำงานไม่เหมือนกับ Zero ETL แต่ให้ผลลัพธ์ที่คล้ายกัน

               Cloud platform ชื่อดังต่าง ๆ ก็เริ่มได้นำคอนเซ็ป Zero ETL มาใช้กันแล้ว ผมจึงคิดว่าธุรกิจใหม่ ๆ ในอนาคตที่เลือกใช้ platform เหล่านั้น น่าจะได้นำ Zero ETL มาใช้เพิ่มความสามารถในการวิเคราห์ข้อมูลในแบบ real time กันมากขึ้น ส่วนระบบเก่า ๆ ที่ไม่ได้ใช้ cloud platform ตั้งแต่แรกไม่น่าจะได้รับผลกระทบอะไรมากนัก โดย Zero ETL อาจจะเป็นแค่ข้อดีเล็ก ๆ ข้อหนึ่งของการย้ายไปใช้ cloud platform เท่านั้น

สรุปข้อดีและข้อเสีย Zero ETL

ข้อดี

  • ความเร็วสูง
  • ลด latency ของข้อมูล
  • ไม่มีการ copy ข้อมูล
  • User สามารถใช้งานข้อมูลได้โดยไม่จำเป็นต้องรอให้ Data Engineer เตรียมข้อมูล
  • ลด manual process ในการเตรียมข้อมูล ทำให้ลดความผิดพลาดได้

ข้อเสีย

  • ความสามารถในการแปลงข้อมูลจำกัด ทำให้ผู้ใช้งานอาจจะต้องแปลงข้อมูลเองอีกครั้งหนึ่งก่อนนำไปใช้
  • ขาดการรับรองคุณภาพของข้อมูล เนื่องจากกระบวนการทั้งหมดเป็นกระบวนการ automatic ทำให้ไม่สามารถตรวจสอบคุณภาพและความสมบูรณ์ของข้อมูลก่อนที่จะส่งไปให้ผู้ใช้งานได้
  • ไม่สามารถใช้งานร่วมกันกับระบบอื่น ๆ ได้ และเปลี่ยนไปใช้ระบบอื่น ๆ ได้ยาก (Vendor Lock-in)

สิ่งที่จะเกิดขึ้นต่อไป – การวิเคราะห์ข้อมูลแบบบริการตนเอง (Self Service Data Analytics) ที่แท้จริง

               One Big Table and Large Language Model – ไอเดียหลัก ๆ คือรวมข้อมูลดิบทุกอย่าง ทุกคอลัมน์ บนตารางขนาดใหญ่ตารางเดียว (One Big Table) และใช้โมเดลภาษาขนาดใหญ่ (Large Language Model) อย่างเช่น GPT-4 ในการทำการ query ข้อมูลตามคำสั่งที่เป็นภาษาธรรมชาติ (natural language) ของผู้ใช้งาน คอนเซ็ปนี้ยังอยู่ในขั้นพัฒนา โดยมีสตาร์ทอัพที่ผลักดันไอเดียนี้ ได้แก่ Delphi, GetDot.AI และ Narrator

ข้อสรุป

               Zero ETL เป็นการ transform กระบวนการเตรียมข้อมูล ให้เป็นไปอย่างอัตโนมัติ โดยในปัจจุบันมี Big Data platform ชื่อดังหลาย ๆ แพลตฟอร์มได้ทำออกมาให้ใช้แล้ว ผลกระทบหลัก ๆ คือ ทำให้ผู้ใช้งานข้อมูล (Data Scientist, Data Analyst) สามารถใช้ข้อมูลได้โดยไม่จำเป็นต้องรอคนเตรียมข้อมูลให้ และมีผลกับ Data Engineer ที่จะไม่ต้องทำงาน manual ตามความต้องการที่หลากหลายของผู้ใช้งาน เปลี่ยนมาเป็นทำการออกแบบ automated data pipeline แทน

               ผมคิดว่า Zero ETL เป็นคอนเซ็ปที่มีประโยชน์ และเป็นก้าวหนึ่งของการ automate การทำงาน เพื่อให้คนทำงานได้มีประสิทธิภาพมากขึ้น ถึงแม้ Zero ETL อาจจะเป็นการโฆษณาฟีเจอร์หนึ่งของ Big Data platform แต่ผมคิดว่า Zero ETL เป็นฟีเจอร์ที่ดี และสร้าง impact ให้กับผู้ใช้งานได้จริงครับ

อ้างอิง

https://insightsndata.com/zero-etl-a-new-future-of-data-integration-9ca2ea3f6c2e

https://towardsdatascience.com/zero-etl-chatgpt-and-the-future-of-data-engineering-71849642ad9c

https://medium.com/starschema-blog/so-whats-all-this-talk-about-zero-etl-integration-aa3b0ca9612b

https://dataengineering.wiki/Concepts/Data+Pipeline

บทความโดย พชร  วงศ์สุทธิโกศล

ตรวจทานและปรับปรุงโดย นววิทย์ พงศ์อนันต์

Associate, Research and Innovations Division (RIN)
Big Data Institute (BDI)

แบ่งปันบทความ

กลุ่มเนื้อหา

แท็กยอดนิยม

แจ้งเรื่องที่อยากอ่าน

คุณสามารถแจ้งเรื่องที่อยากอ่านให้เราทราบได้ !
และเราจะนำไปพัฒนาบทความให้มีเนื้อหาที่น่าสนใจมากขึ้น

ไอคอน PDPA

เราใช้คุกกี้เพื่อพัฒนาประสิทธิภาพ และประสบการณ์ที่ดีในการใช้เว็บไซต์ของคุณ คุณสามารถศึกษารายละเอียดได้ที่ “นโยบายคุ้กกี้” และสามารถจัดการความเป็นส่วนตัวเองได้ของคุณได้เองโดยคลิกที่ “ตั้งค่า”

ตั้งค่าความเป็นส่วนตัว

คุณสามารถเลือกการตั้งค่าคุกกี้โดยเปิด/ปิด คุกกี้ในแต่ละประเภทได้ตามความต้องการ ยกเว้น คุกกี้ที่จำเป็น

ยอมรับทั้งหมด
จัดการความเป็นส่วนตัว
  • คุกกี้ที่มีความจำเป็น (Strictly Necessary Cookies)
    เปิดใช้งานตลอด

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

  • คุกกี้เพื่อการวิเคราะห์และประเมินผลการใช้งาน (Performance Cookies)

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

  • คุกกี้เพื่อการใช้งานเว็บไซต์ (Functional Cookies)

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

  • คุกกี้เพื่อการโฆษณาไปยังกลุ่มเป้าหมาย (Targeting Cookies)

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

บันทึกการตั้งค่า
ไซต์นี้ลงทะเบียนกับ wpml.org ในฐานะไซต์พัฒนา สลับไปยังไซต์การผลิตโดยใช้รหัส remove this banner.