5/4/61

Big Data

ได้รับโอกาสอันดีจาก สนง. ให้ส่งไปอบรม Big Data ก็เลยต้องมีเขียนสรุปส่งสักหน่อย ให้คุ้มค่ากับภาษีประชาชน ไหนๆ เขียนส่งแล้ว หาที่เก็บไว้หน่อย เผื่อต้องใช้วันหลัง

Big Data เป็นสิ่งที่มีความสำคัญมากในโลกยุคปัจจุบัน โดยเราสามารถเปรียบ Data ได้กับ น้ำมันในสมัยก่อน ที่ประเทศไหนมีน้ำมันก็จะเป็นประเทศมหาเศรษฐี ในยุคนี้ ใครถือครองข้อมูล หรือใช้ประโยชน์จากข้อมูลได้มากที่สุดก็จะกลายเป็นเศรษฐีของยุคนี้เช่นกัน ดังจะเห็นได้ว่า บริษัท ระดับต้นๆ ของโลกในยุคนี้ล้วนทำธุรกิจเกี่ยวกับข้อมูลทั้งสิ้น เช่น Google, Facebook เป็นต้น

แบบไหนถึงเรียกว่า Big Data

เรารู้จักกับ Data อยู่แล้ว แต่ในนิยามของคำว่า Big Data ที่เราพูดถึงกัน ไม่ได้หมายถึงข้อมูลที่มีขนาดใหญ่เท่านั้น แต่ Big Data ที่พูดถึงกันในยุคนี้ จะต้องประกอบด้วยองค์ประกอบดังนี้

  • Volume: มีขนาดใหญ่ มีปริมาณมาก เป็นได้ทั้ง offline หรือ online
  • Variety: มีความหลากหลาย ทั้งที่มีโครงสร้างและไม่มี
  • Velocity: เปลี่ยนแปลงตลอดเวลา มีการส่งผ่านข้อมูลต่อเนื่องในลักษณะ streaming
  • Veracity: ข้อมูลไม่ชัดเจน

รูปแบบของข้อมูล

นอกจากข้อมูลจะมีความหลากหลาย และไม่มีโครงสร้างได้แล้ว ข้อมูลอาจมีได้หลายรูปแบบอีกด้วย เช่น

  • Behavioral: ข้อมูลการใช้งาน เช่น server log, การคลิกดูข้อมูล
  • Image, sounds: ภาพถ่าย, วีดีโอ, ข้อมูลเสียง
  • Text: ข้อความ tweeter facebook, เนื้อหาในเว็บไซต์
  • Records: ข้อมูลทางการแพทย์, ข้อมูลผลสำรวจที่มีขนาดใหญ่, ข้อมูลทางภาษี เป็นต้น
  • Sensors: ข้อมูลอุณหภูมิ, accelerometer, ข้อมูลทางภูมิศาสตร์ เป็นต้น

Big Data Analytics

เป็นขั้นที่สูงกว่าของ Data Analytics คือ เป็นการวิเคราะห์ข้อมูลจาก Big Data ซึ่งเป็นข้อมูลที่วิเคราะห์ได้ยากกว่า (ข้อมูลมีลักษณะ 4V) โดยการวิเคราะห์จะวิเคราะห์เพื่อตอบสองคำถามคือ เพื่อตอบอดีต และทำนายอนาคต
  • Descriptive analytics: เป็นการวิเคราะห์โดยสรุปผลรวมจากอดีต คล้ายๆ การทำข้อมูลเชิงสถิตินั่นเอง โดยการวิเคราะห์แบบนี้จะได้คำตอบในลักษณะดังนี้
    • Standard report: “เกิดอะไรขึ้น”
    • Ad hoc report: “จำนวนเท่าไหร่ บ่อยแค่ไหน ที่ไหน”
    • Query: “อะไรคือปัญหาที่แท้จริง”
    • Alerts: “ต้องเกิด action อะไร”
  • Predictive analytics: เป็นการวิเคราะห์โดยทำนายถึงสิ่งที่จะเกิดขึ้นในอนาคตด้วย โดยการวิเคราะห์แบบนี้จะได้คำตอบในลักษณะดังนี้
    • Statistical analysis: “ทำไมถึงเกิดเหตุการณ์นี้”
    • Randomized testing: “จะเกิดอะไรขึ้นถ้าเราทดลองทำวิธีการนี้”
    • Predictive modeling: “จะเกิดอะไรขึ้นต่อไป”
    • Optimization: “อะไรคือสถานการณ์ที่ดีที่สุดที่จะเกิดขึ้น”
  • Prescriptive analytics: เป็นการสังเคราะห์ข้อมูลเพื่อวิเคราะห์แนวโน้มและเสนอทางเลือกในการตัดสินใจที่เหมาะสมกับการคาดการณ์บนฐานของข้อมูล

Big Data จะมาจากไหนได้

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

  • Data you analyze today: เป็นข้อมูลที่ได้มีการวิเคราะห์อยู่แล้ว เป็นปกติ เป็นข้อมูลที่ใช้กันเป็นประจำ เช่น รายงานผลการดำเนินงาน, สรุปยอดการเบิกจ่ายรายไตรมาส
  • Data you collect but don't analyze: ข้อมูลที่จัดเก็บ แต่ไม่ได้นำมาวิเคราะห์
  • Data you could collect but don't: ข้อมูลที่สามารถจัดเก็บได้ แต่ไม่ได้ทำ
  • Data from partners and third party: ข้อมูลจากภายนอก

สิ่งสำคัญในการทำ Big Data platform

พื้นฐานที่สำคัญในการที่จะสร้าง Platform สำหรับรองรับการใช้งาน Big Data คือ การสร้างโกดังจัดเก็บข้อมูล ในยุคสมัยเดิมเราจะรู้จักกับคำว่า Data Warehouse ที่เป็นแหล่งรวมข้อมูล จากข้อมูลหลายๆ แหล่ง รวมเข้ามาไว้ด้วยกัน แล้วจัดกลุ่มออกมาเป็น Data Mart จากนั้นจึงทำไปสร้างเป็น Cube เพื่อทำ Analys ก็เป็นการจบกระบวนการ

แต่สำหรับโลกของ Big Data นั้น ไม่สามารถใช้ Data Warehouse เพื่อเป็นฐานในการจัดเก็บข้อมูลได้ เนื่องจาก Data Warehouse จะรองรับข้อมูลที่เป็น Srtucture ในขณะที่ Big Data นั้น ข้อมูล Unstructure และยังไม่หยุดนิ่งอีกด้วย ดังนั้นแหล่งที่จะใช้ในการจัดเก็บจึงต้องขยับไปอีกขั้น ซึ่งจะรองรับข้อมูลที่หลากหลายได้มากกว่า

ดูภาพจะเข้าใจง่ายกว่า

เครื่องมือสำหรับทำ Big Data

เครื่องมือสำหรับทำ Big Data ไปจนถึงปลายทาง คือ Data Analytic สามารถใช้ได้หลายเครื่องมือ ขึ้นอยู่กับว่าตัวไหนจะตอบโจทย์ของเรามากกว่ากัน โดยจะขอยกตัวอย่างเครื่องมือคร่าวๆ ดังนี้

  • Data Ingestion/Collection: Kafka, Sqoop, Flume
  • Data Storage: Hadoop HDFS, S3, Google, Azure
  • Data Analyze/Processing: Hadoop Mapreduce, Pig, HIVE, Spark, Cassandra
  • Data Visualization: MS Power BI, Oracle Data virtualization, Tableau, Google Data Studio

สรุป

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

การเริ่มต้น

  1. ควรเริ่มจากการวางโครงสร้างการจัดเก็บข้อมูลให้เป็นระเบียนเสียก่อน เพราะจะช่วยลดความยุ่งยากในการจัดเตรียมข้อมูล (อย่าลืมว่า ยังมีข้อมูล Unstructure จากภายนอกให้ต้องรับมืออีก ดังนั้นเตรียมข้อมูลภายในให้พร้อมไว้ จะได้ไม่เหนื่อยมาก) พร้อมกับหาพื้นที่จัดเก็บที่รองรับการขยายตัว และรองรับการเก็บไฟล์ขนาดใหญ่ (ในแต่ละไฟล์อาจใหญ่ได้เกินกว่าฮาร์ดดิสก์ที่เรามีก็เป็นได้)
  2. จัดเตรียมโครงสร้างข้อมูล Data Lake และ API ที่จะต้องเชื่อมต่อข้อมูลต่างๆ เข้ามาจัดเก็บ
  3. หา Data scientist ไว้ในองค์กร เนื่องจากการตั้งคำถามที่ถูกต้อง เป็นสิ่งสำคัญมาก ไม่อย่างนั้นแล้ว เราจะใช้ประโยชน์จากข้อมูลได้อย่างไม่เต็มที่
  4. ทำระบบวิเคราะห์ข้อมูล จากข้อมูลที่มีอยู่ให้เสร็จเสียก่อน เพื่อเป็นจุดเริ่ม และเป็นกำลังใจในการที่จะไปทำของที่ยากกว่า (คือ การวิเคราะห์ข้อมูลจากภายนอก)