Big Data
Google Trends
Worldwide
Thailand
Cloud Computing
Cloud Computing
Big Data
Big Data
Big Data คืออะไร
• Big Data คือ ปริมาณข้อมูลที่มีขนาดใหญ่มหาศาลเกิน
กว่าขีดความสามารถในการประมวลผลของระบบฐานข้อมูล
ธรรมดาจะรองรับได้ ปริมาณข้อมูลที่มีขนาดใหญ่มากๆ จะ
มีอัตราการเพิ่มขึ้นของข้อมูลเป็นไปอย่างรวดเร็วมาก และ
เป็นรูปแบบที่ไม่มีโครงสร้าง (Unstructured) ซึ่งไม่
สามารถที่จะจัดการด้วยเครื่องมือที่มีอยู่ หรือเครื่องมือแบบ
เดิมๆ ได้อีกต่อไป
ลักษณะพิเศษของ Big Data
Volume Velocity Variety
คือข้อมูลมหาศาลขนาด
ใหญ่ มีจำนวนมากเกิน
กว่าระบบฐาน ข้อมูลแบบ
เดิมๆ จะสามารถที่จะ
จัดการได้
ข้อมูลที่มีความหลาก
หลายทั้งที่เป็นแบบ
โครงสร้างหรือรูปแบบที่
ไม่แน่นอน
ข้อมูลที่ต้องวิเคราะห์เข้าสู่
ระบบฐานข้อมูลอย่าง
รวดเร็ว โดยให้ความ
สำคัญกับข้อมูลที่เป็น
Real-time
ตัวอย่างข้อมูล Big Data
• ข้อมูลเครือข่ายสังคม
• ข้อมูลการบริการทางเว็บ
• ข้อมูลธุรกรรมทางธนาคาร
• ข้อมูลการสื่อสารจากโทรศัพท์เคลื่อนที่
• ข้อมูลภาพถ่ายดาวเทียม
• ข้อมูลสภาพอากาศ
ทำไมต้องสนใจ Big Data
• ปัจจุบันเรามีข้อมูลที่หลายหลายรูปแบบ ปริมาณเยอะมาก
ถ้าเราเก็บไว้โดยที่ไม่ทำอะไรก็ไม่เกิดประโยชน์ แต่ถ้านำ
เอาเทคนิคความรู้ในด้าน Big Data เข้ามาช่วย นำข้อมูลที่
มีปริมาณเยอะมาประมวลผล วิเคราะห์ และนำข้อมูลเหล่า
นั้นไปใช้ให้เกิดประโยชน์
Apache Hadoop
• ซอฟแวร์ที่สำคัญที่มีการนำมาใช้กันมากในระบบ Big
data คือ Hadoop เพราะ Hadoop เป็น Open Source
Technology พัฒนาขึ้นด้วยภาษา Java ที่จะทำหน้าที่เป็น
Distributed Storage ที่สามารถเก็บข้อมูลขนาดใหญ่ที่
เป็น Unstructure และนำมาประมวลผลได้ โดยองค์ประ
กอบหลักๆของ Hadoop จะประกอบด้วย Hadoop
Dustributed File System (HDFS) และ MapReduce
ใช้สำหรับประมวลผลข้อมูลที่มีขนาดใหญ่บน cluster ได้
Hadoop Environment
• เป็นการบวนการที่ใช้สำหรับการแบ่ง input data ให้มี
ขนาดเล็กลง แล้วส่งไปประมวลผลยัง node อื่นๆ ที่อยู่ใน
cluster เมื่อประมวลผลเสร็จแล้วจึงนำผลลัพธ์ที่ได้กลับมา
ลดขนาด แล้วส่ง output data กลับมา
MapReduce Flow
• เป็น Distribute File System รูปแบบหนึ่ง ออกแบบมาเพื่อ
ใช้งานกับ Hadoop application โดยเฉพาะ ใช้สำหรับ
ข้อมูลขนาดใหญ่ ระดับ tera byte หรือ petra byte ขึ้นไป
การจัดเก็บข้อมูลจะใช้ “รูปแบบของการกระ
จาย” (distributed storage) คือการการจายไปเก็บยัง
node อื่นๆ จะมีความสามารถในการทำสำเนาเองโดย
อัตโนมัติทำให้มีความน่าเชื่อถือสูง เพราะสามารถป้องกัน
ความผิดพลาดข้อมูลที่จะเกิดขึ้นได้
ตัวอย่างผู้ที่ใช้งาน Hadoop
• Facebook นั้นมี Apache Hadoop Cluster 2 ชุด ชุด
แรกประกอบจาก Server จำนวน 1100 เครื่อง , CPU
8800 Core และพื้นที่ 12PB และชุดที่สองประกอบจาก
Server จำนวน 300 เครื่อง , CPU 2400 Core และพื้นที่
3PB
• Yahoo นั้นใช้ Server มากกว่า 40000 เครื่อง , CPU
มากกว่า 100000 ชุดสำหรับรองรับระบบ Ads และ Web
Search
Lightning-fast cluster computing
Apache Spark
• เริ่มต้นที่ UC Berkeley ในปี คศ. 2009 เป็นระบบประมวล
ผลบน Cluster ซึ่งทำ MapReduce in memory ได้เร็ว ซึ่ง
เร็วกว่า Hadoop MapReduce กว่า 10 เท่าเนื่องจาก
Hadoop ทำงานบน Disk
พื้นฐาน Apache Spark
RDD
• Resilient Distributed Dataset เป็นการกระจายข้อมูล
ข้ามเครื่องไปสู่ worker ต่างๆ โดยระบบสามารถตรวจสอบ
ได้ว่า worker ตัวไหนตายไประหว่างทำงาน Cluster
Manager สามารถโอนงานไปให้ worker ตัวอื่นทำต่อได้
แล้วยังได้ผลลัพธ์ที่ถูกต้องเหมือนเดิม
Spark Shell

Big data

  • 1.
  • 4.
  • 5.
    Big Data คืออะไร •Big Data คือ ปริมาณข้อมูลที่มีขนาดใหญ่มหาศาลเกิน กว่าขีดความสามารถในการประมวลผลของระบบฐานข้อมูล ธรรมดาจะรองรับได้ ปริมาณข้อมูลที่มีขนาดใหญ่มากๆ จะ มีอัตราการเพิ่มขึ้นของข้อมูลเป็นไปอย่างรวดเร็วมาก และ เป็นรูปแบบที่ไม่มีโครงสร้าง (Unstructured) ซึ่งไม่ สามารถที่จะจัดการด้วยเครื่องมือที่มีอยู่ หรือเครื่องมือแบบ เดิมๆ ได้อีกต่อไป
  • 7.
    ลักษณะพิเศษของ Big Data VolumeVelocity Variety คือข้อมูลมหาศาลขนาด ใหญ่ มีจำนวนมากเกิน กว่าระบบฐาน ข้อมูลแบบ เดิมๆ จะสามารถที่จะ จัดการได้ ข้อมูลที่มีความหลาก หลายทั้งที่เป็นแบบ โครงสร้างหรือรูปแบบที่ ไม่แน่นอน ข้อมูลที่ต้องวิเคราะห์เข้าสู่ ระบบฐานข้อมูลอย่าง รวดเร็ว โดยให้ความ สำคัญกับข้อมูลที่เป็น Real-time
  • 8.
    ตัวอย่างข้อมูล Big Data •ข้อมูลเครือข่ายสังคม • ข้อมูลการบริการทางเว็บ • ข้อมูลธุรกรรมทางธนาคาร • ข้อมูลการสื่อสารจากโทรศัพท์เคลื่อนที่ • ข้อมูลภาพถ่ายดาวเทียม • ข้อมูลสภาพอากาศ
  • 9.
    ทำไมต้องสนใจ Big Data •ปัจจุบันเรามีข้อมูลที่หลายหลายรูปแบบ ปริมาณเยอะมาก ถ้าเราเก็บไว้โดยที่ไม่ทำอะไรก็ไม่เกิดประโยชน์ แต่ถ้านำ เอาเทคนิคความรู้ในด้าน Big Data เข้ามาช่วย นำข้อมูลที่ มีปริมาณเยอะมาประมวลผล วิเคราะห์ และนำข้อมูลเหล่า นั้นไปใช้ให้เกิดประโยชน์
  • 11.
    Apache Hadoop • ซอฟแวร์ที่สำคัญที่มีการนำมาใช้กันมากในระบบBig data คือ Hadoop เพราะ Hadoop เป็น Open Source Technology พัฒนาขึ้นด้วยภาษา Java ที่จะทำหน้าที่เป็น Distributed Storage ที่สามารถเก็บข้อมูลขนาดใหญ่ที่ เป็น Unstructure และนำมาประมวลผลได้ โดยองค์ประ กอบหลักๆของ Hadoop จะประกอบด้วย Hadoop Dustributed File System (HDFS) และ MapReduce ใช้สำหรับประมวลผลข้อมูลที่มีขนาดใหญ่บน cluster ได้
  • 12.
  • 14.
    • เป็นการบวนการที่ใช้สำหรับการแบ่ง inputdata ให้มี ขนาดเล็กลง แล้วส่งไปประมวลผลยัง node อื่นๆ ที่อยู่ใน cluster เมื่อประมวลผลเสร็จแล้วจึงนำผลลัพธ์ที่ได้กลับมา ลดขนาด แล้วส่ง output data กลับมา
  • 15.
  • 16.
    • เป็น DistributeFile System รูปแบบหนึ่ง ออกแบบมาเพื่อ ใช้งานกับ Hadoop application โดยเฉพาะ ใช้สำหรับ ข้อมูลขนาดใหญ่ ระดับ tera byte หรือ petra byte ขึ้นไป การจัดเก็บข้อมูลจะใช้ “รูปแบบของการกระ จาย” (distributed storage) คือการการจายไปเก็บยัง node อื่นๆ จะมีความสามารถในการทำสำเนาเองโดย อัตโนมัติทำให้มีความน่าเชื่อถือสูง เพราะสามารถป้องกัน ความผิดพลาดข้อมูลที่จะเกิดขึ้นได้
  • 18.
    ตัวอย่างผู้ที่ใช้งาน Hadoop • Facebookนั้นมี Apache Hadoop Cluster 2 ชุด ชุด แรกประกอบจาก Server จำนวน 1100 เครื่อง , CPU 8800 Core และพื้นที่ 12PB และชุดที่สองประกอบจาก Server จำนวน 300 เครื่อง , CPU 2400 Core และพื้นที่ 3PB • Yahoo นั้นใช้ Server มากกว่า 40000 เครื่อง , CPU มากกว่า 100000 ชุดสำหรับรองรับระบบ Ads และ Web Search
  • 19.
  • 20.
    Apache Spark • เริ่มต้นที่UC Berkeley ในปี คศ. 2009 เป็นระบบประมวล ผลบน Cluster ซึ่งทำ MapReduce in memory ได้เร็ว ซึ่ง เร็วกว่า Hadoop MapReduce กว่า 10 เท่าเนื่องจาก Hadoop ทำงานบน Disk
  • 21.
  • 22.
    RDD • Resilient DistributedDataset เป็นการกระจายข้อมูล ข้ามเครื่องไปสู่ worker ต่างๆ โดยระบบสามารถตรวจสอบ ได้ว่า worker ตัวไหนตายไประหว่างทำงาน Cluster Manager สามารถโอนงานไปให้ worker ตัวอื่นทำต่อได้ แล้วยังได้ผลลัพธ์ที่ถูกต้องเหมือนเดิม
  • 23.