การสร้าง data pipeline บน AWS ด้วย generative AI จากงาน AWS Summit Bangkok 2024

บทความนี้ผมจะมาบรรยายการประชุมภายในงาน AWS Summit Bangkok 2024 โดยหัวข้อการประชุมในครั้งนี้คือ Building data pipeline on AWS with Generative AI

การประชุมนี้บรรยายโดย คุณ Ponrawat Chirajakwattana ซึ่งเป็น Senior Analytics Solutions Architect, AWS เกี่ยวกับการนำ generative AI มาช่วยในการทำ data pipeline อย่างไร

คุณ Ponrawat Chirajakwattana กล่าวว่าเมื่อปี 2010 ตอนที่เค้าสร้าง hadoop cluster จำนวน 20 node ต้องใช้เวลาประมาณ 3 เดือนในการสร้าง แต่ปัจจุบันการสร้าง hadoop cluster จำนวน 20 node ใช้เวลาเพียงไม่กี่นาทีเท่านั้น จะเห็นได้ว่าการพัฒนาของเทคโนโลยีมีส่วนช่วยในการทำงานด้าน data engineer อย่างมาก เช่นเดียวกันกับโครงสร้าง data pipeline ที่มีขนาดใหญ่และการใช้งานที่หลากหลายมากขึ้น
https://devio2023-media.developers.io/wp-content/uploads/2024/06/1157f6deb39f59584209b3ad61d6bdbf.png
การนำ use case ไปใช้งานก็มีความหลากหลาย การ deployment ก็มีการพัฒนาเช่นกัน แต่ก็ยังคงมีปัญหาในเรื่องของปริมาณข้อมูลที่เพิ่มขึ้นทำให้ต้นทุนสูงขึ้นด้วย ซึ่งการปฏิบัติตาม best practice และ fundamental principle จะช่วยแก้ปัญหาข้อนี้ได้

Best practice

https://devio2023-media.developers.io/wp-content/uploads/2024/06/c5a602ab43c855ef08836c78290858c3.png
Simple

  • Simple
    • Low code/ no code ให้ระบบ data pipeline ทำงานง่ายขึ้น โดยใช้ Zero-ETL (low code/ no code) ในการย้ายข้อมูลและลดเวลาในการพัฒนา
    • Zero-copy data sharing ลด copy เพื่อให้จัดการได้ง่าย เช่น federated querie โดยที่ไม่ต้องทำ ETL
  • Reliable
    • Log-centric, compliant บันทึกทุก event ที่เกิดขึ้น และทำ governance เพื่อให้มีความน่าเชื่อถือ
    • Data quality on entry ควบคุมการ ingestion ก่อนที่ข้อมูลจะเข้าไปสู่ data lake โดยทำการกรองข้อมูลก่อน
  • Flexible
    • Decouple storage, compute ลดความเสี่ยงในการจัดการต้นทุน เพราะในบางโปรเจกต์เราเพียงแค่ต้องการ scale up เฉพาะส่วนใดส่วนหนึ่งเท่านั้น หาก scale up ทั้งหมดก็จะทำให้ต้นทุนสูงขึ้นโดยไม่จำเป็น
    • Modular, incremental สามารถแยกส่วนประกอบและสับเปลี่ยนบางส่วนของ data pipeline โดยไม่มีผลกระทบต่อระบบ
  • Scalable
    • Managed, serverless สามารถ scale up หรือ down ระบบตามความต้องการ
    • Right tool choice รองรับภาษาที่หลากหลายในการทำ data pipeline

การนำ generative AI มาใช้งานกับ data pipeline

โดยทั่วไป data engineer จำเป็นที่จะต้อง coding เพื่อใช้งาน ETL แต่เราสามารถใช้ Amazon Q Developer มาช่วยลดภาระในการ coding ได้ซึ่ง Amazon Q ถูกควบรวมไว้ใน AWS Glue
ข้อมูลที่ Amazon Q นำมาใช้นั้นก็ได้มาจากประสบการณ์ของทาง AWS เองซึ่งรับรองได้ว่า Amazon Q จะสามารถให้คำแนะนำกับ user ได้อย่างแม่นยำ ตั้งแต่การเริ่มใช้งาน AWS Glue ไปจนถึงการให้สร้าง ETL script ซึ่งช่วยลดระยะเวลาในการ coding ได้อย่างมาก
https://devio2023-media.developers.io/wp-content/uploads/2024/06/0ea981ccd0478e519411e4abe4d4f67b.png
https://devio2023-media.developers.io/wp-content/uploads/2024/06/e9210b654bb53fe6aec24e9db4207589.png
นอกจากนี้ยังซัพพอร์ต complex ETL script เช่น ให้ Amazon Q ดึงข้อมูลบาง field มาจาก S3 และดึงข้อมูลบาง field มาจาก Dynamo DB จากนั้นทำการ union กันแล้วไปเก็บข้อมูลที่ OpenSearch
https://devio2023-media.developers.io/wp-content/uploads/2024/06/34d1c386eafb4d1420c2b9777e5be006.png
หรือแม้แต่การช่วยสร้างคำสั่ง SQL โดยที่ตัว AI ยังเข้าใจ schema ของข้อมูลนั้น ตามภาพด้านล่างที่ใช้ฟังก์ชั่นนี้ใน Amazon Redshift
https://devio2023-media.developers.io/wp-content/uploads/2024/06/4ce4d6068f6c7b9aa9c27ecb91db7a8c.png

สรุป

หัวข้อนี้อธิบายเกี่ยวกับการนำ generative AI มาใช้กับ data pipeline ยังไง ซึ่งทาง AWS ได้นำเสนอทางออกด้วยการใช้ Amazon Q ที่อยู่ใน AWS Glue เพื่อลดระยะเวลาในการ coding ช่วยออกแบบ code ที่มีความซับซ้อนและแนะนำวิธีการใช้บริการต่างๆของ AWS

อ้างอิง

บทความนี้เขียนมาจากการบรรยายภายในงาน AWS Summit Bangkok 2024 หัวข้อ Building data pipeline on AWS with Generative AI สามารถรับชมเนื้อหาที่ครบถ้วนได้ใน Building data pipeline on AWS with Generative AI