ก่อนจะรู้จัก Data Lake เรามาทำความรู้จักวิธีจัดเก็บข้อมูลขององค์กรขนาดใหญ่กันก่อน ซึ่งองค์กรต่างๆ เกือบทั้งหมดล้วนมี Enterprise Data Warehouse(EDW) เพื่อใช้เก็บข้อมูล โดยที่ EDW ถูกออกแบบมาเพื่อเก็บข้อมูลส่วนสำคัญจากระบบต่างๆ ไม่ว่าจะเป็น CRM, Inventory, Sales transactions เพื่อให้นักวิเคราะห์และ Business User นำข้อมูลนั้นไปใช้งานต่อ
พอมาถึงยุค Big Data ได้เกิดแหล่งข้อมูลใหม่ๆ เช่น Streaming, Social data รวมถึง Internet of Things (IoT) ส่งผลให้เกิดความคาดหวังที่สูงขึ้นจากผู้ใช้งานและเศรษฐกิจทั่วโลกอย่างรวดเร็ว จนกระทั่งองค์กรต่างๆ เกิดตระหนักดีว่าเทคโนโลยี EDW แบบดั้งเดิมไม่สามารถตอบสนองความต้องการทางธุรกิจใหม่ๆ อีกทั้ง EDW นั้นมีราคาค่อนข้างสูง นั้นเป็นที่มาของ Data Lake
Data Lake คืออะไร
Data Lake คือ พื้นที่เก็บข้อมูลส่วนกลางจากทุกแหล่งข้อมูล ทุกรูปแบบ ข้อมูลสามารถอยู่ทั้งในรูปแบบของ Structured และ Unstructured ข้อมูลที่จะใช้หรือไม่คิดว่าจะได้ใช้ก็เก็บได้หมด ไม่ต้องมีการแปลงข้อมูลใดๆก่อนเก็บ สามารถใช้เครื่องมือหลายๆอย่างเพื่อให้รวดเร็วในการดึงข้อมูลมาใช้ตัดสินใจในองค์กร เป็นวิธีการที่เกิดขึ้นใหม่และมีประสิทธิภาพในการแก้ไขปัญหาเกี่ยวกับการรวมข้อมูลใน EDW แบบเดิม เพราะ EDW แบบเดิมนั้นจะต้องผ่านขั้นตอนที่ทำให้เกิดการเก็บข้อมูลในโครงสร้างแบบเดียวกัน ในขณะที่ Data Lake จะเก็บข้อมูลแบบดิบๆ หรือ Raw Data
แล้วถามว่าเราเก็บข้อมูลไปใช้ทำอะไร เราก็เก็บข้อมูลเพื่อนำไปวิเคราะห์ จะด้วยวิธีการใดๆ หรือโดยใครก็ได้ เพื่อสร้างสิ่งที่เราอยากรู้จากข้อมูลที่มี เพื่อค้นหาข้อมูลเชิงลึก (Insight) ทำให้เกิด Data Driven Business ที่จะนำไปสู่การพัฒนาค้นคว้านวัตกรรมใหม่ๆ เกิดไอเดียใหม่ๆทางธุรกิจ และเราก็จะได้ข้อมูลจากนวัตกรรมใหม่ๆ ที่สร้างขึ้น และนำไปเก็บใน Data Lake และนำข้อมูลมาวิเคราะห์ต่อวนเวียนแบบนี้จนเกิดเป็น Data Cycle ซ้ำๆ
ข้อดีของ Data Lake คือ มียืดหยุ่นซึ่งรองรับข้อมูลทุกอย่าง ทุก Format ทุกขนาด และสามารถขยายขนาดได้เรื่อยๆ
ทว่าด้วยการเก็บข้อมูลที่เป็นข้อมูลดิบ จึงทำให้ข้อมูลมีความซับซ้อน คนที่จะนำไปใช้งานจะต้องใช้ความสามารถในการประมวลผลข้อมูล คนที่จะเข้าถึงข้อมูลโดยตรงอาจจะต้องเป็นคนที่มีความเข้าใจข้อมูลอย่าง Data Scientist ขณะเดียวกัน หาก User ทั่วไปต้องการเข้าถึงข้อมูลเหล่านี้ อาจจะต้องมีผู้เชี่ยวชาญสร้าง ระบบที่มีการจัดการเพื่อจำกัดการเข้าถึงเกี่ยวกับ Security และ Privacy และแปลงรูปแบบข้อมูลให้เข้าใจง่ายเสียก่อน
จากประสบการณ์ทำงานของ Coraline เราพบว่าการสร้าง Data Lake ไม่จำเป็นต้องเป็น Lake ที่ใหญ่เสมอไป เพราะส่วนใหญ่ปัญหาที่พบคือ ข้อมูลต่างๆ ที่อยู่ในรูป EDW มันอยู่ในระบบหรือ Format ที่ต่างกัน ทำให้เกิดความยุ่งยากในการใช้งานจริง ดังนั้น Data Lake จึงเป็นเหมือนแหล่งรวมข้อมูลที่เกี่ยวข้องกันทั้งสิ้น นำ Raw Data มาไว้ในที่เดียวกัน เพื่อให้ Data Scientist นำไปสร้าง Model จนพบ Insight ต่อไปได้
คำถามต่อมา คือ ทำไมต้องใช้ Raw Data นั้นเพราะข้อมูลที่ผ่านการกรอง หรือ วิเคราะห์ไปแล้ว เช่น เก็บเป็นค่าเฉลี่ย เป็นต้น ทำให้ Data Scientist ไม่สามารถมองเห็นข้อมูลในมุมอื่นๆ ได้ เช่น มี Missing Value หรือไม่ มีการ Clean อย่างไร หรือมี Variation มากน้อยเพียงใด เป็นต้น
หลายคนมักคิดว่า การออกแบบ Data Lake เป็นหน้าที่ของ Data Engineer นั้นก็ไม่ผิด เพียงแต่ว่า Data Lake ที่ใหญ่เกินไปจะทำให้เกิดความยุ่งยาก ซับซ้อนในการใช้งาน และทำให้เสียเวลาไปโดยเปล่าประโยชน์ ดังนั้น หากมี Data Scientist มาช่วยออกแบบว่า ต้องการเก็บอะไรใน Lake นี้บ้าง เพื่อนำไปทำ Model เรื่องอะไร ก็จะทำให้การออกแบบ Data Lake นั้นมิได้ใช้ทรัพยากรไปโดยเปล่าประโยชน์
สุดท้ายนี้ สิ่งที่เห็นได้ชัด คือ เทคโนโลยีต่างๆ กำลังเปลี่ยนแปลงไปแบบก้าวกระโดด การจะลงทุนกับเครื่องมือใด ต้องตระหนักถึง Life Cycle ของเครื่องมือนั้นๆ เพราะแลดูเหมือนว่า Technology ต่างๆ มี Life Cycle ที่ต่ำลง ทำให้กในการเลือกใช้งาน Technology ใดๆ มีสิ่งหนึ่งที่องค์กรต้องตระหนักถึงเป็นอีกสิ่งที่สำคัญ คือ ความยืดหยุ่น หรือ Flexible เพราะหากลงทุนไปกับเทคโนโลยีที่ไม่ Flexible พอ เมื่อถึงวันต้องเปลี่ยนแปลงใหม่ ก็จะต้องลงทุนใหญ่เพื่อรื้อทั้งระบบก็เป็นได้