MapReduce คืออะไร เกี่ยวข้องกับ Hadoop หรือ Big Data ยังไง  สร้างคำถาม

 12,848 view  หมวดหมู่ : สำหรับโปรแกรมเมอร์  วันที่สร้าง : 07/02/2017

MapReduce คืออะไร เกี่ยวข้องกับ Hadoop หรือ Big Data ยังไง

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

โดยที่ผู้ใช้งานนั้นไม่ต้องสนใจเบื้องหลังการทำงานเช่น
parallelization, data distribution, loads balancing และ fault tolerance
ในการทำงานแล้วผู้ใช้งาน MapReduce จะสนใจแค่ส่วนของ Map และส่วนของ Reduce เท่านั้น

ซึ่ง Map จะทำการจับคู่ของ Key/Value ที่เราต้องการ แล้วก็จะส่งไปให้ Reduce ทำการประมวลผลเพื่อให้ได้ผลลัพธ์ที่ต้องการ
อ่านดูแล้วก็มี งงๆ บ้างอ่ะนะ มาดูตัวอย่างการทำ Map/Reduce กันเลยละกัน ยกตัวอย่างเช่นเรามี ข้อมูล เป็น text ลักษณะแบบนี้

1001201220 1002201230 1003201310 100420139

Function Map ทำหน้าที่ในการจัดเตรียมข้อมูลก่อนที่จะทำการ Reduce โดยขั้นตอนแรกจะหาคู่ Key กับ Value ก่อน
Input เข้า function Map จะเป็ดังนี้
1:1001201220
2:1002201230
3:1003201310
4:1004201309


Function Map ทำการ Map Key กับ Value ได้ดังนี้
2012:20
2012:30
2013:10
2013:9
จากนั้น Function ของ Framework จะทำการ จัดเรียงให้เป็นหน้า Output แบบนี้
2012:[20,30]
2013:[9,10]


จากนั้นก็จะเข้าสู่ขั้นตอนของการทำ Reduce โดยมี Input ตามนี้
2012:[20,30]
2013:[9,10]


สมมุติเราจะหาค่าต่ำสุดของแต่ละปี ตอนนี้ก็ไม่ยากแระเพราะขั้นตอนการ Map
ได้ช่วยเราไว้เยอะแระ Output ที่ได้ก็จะเป็น
2012:20
2013:9

อย่าลืมว่านี่คือแค่ตัวอย่างอ่ะนะครับ ความจริงแล้ว Data ที่เข้ามานั้นมัน มหาศาลมากๆ
ตอนนี้มี Frame work ที่ทำงานด้านนี้โดยเฉพาะหลายตัวเช่น
Hadoop ทำหน้าที่จัดการข้อมูล Big Data
มีจุดเด่นที่การกระจายการทำงาน Map , Reduce


ถ้าชอบบทความนี้ กด Like เลย :MapReduce คืออะไร เกี่ยวข้องกับ Hadoop หรือ Big Data ยังไง
TAGS : Big Data   Hadoop   Map Reduce   เขียนโปรแกรม   Java  
 12,848 view  หมวดหมู่ : สำหรับโปรแกรมเมอร์  วันที่สร้าง : 07/02/2017



SOA,Java,XSLT

 ร่วมแสดงความคิดเห็นได้ที่นี่

#1.    I'am The Flash
@ บ่ดี

...............................................
#2.    Hadoop
@ ขอบคุณครับ

...............................................



× แจ้งเตือน! เราสนับสนุนทุกความคิดเห็น ที่ ใช้ถ้อยคำสุภาพ ไม่ละเมิดผู้อื่น ไม่ก่อให้เกิดความขัดแย้ง

เนื้อหาที่เกี่ยวช้อง

  true_homewifii love you ถามเมื่อ (2012-09-12)   2,663 views  (ดูล่าสุดเมื่อ 20 นาที)

  SOA คืออะไร Service Oriented Architecture เรื่องเก่ามาเล่าใหม่ ถามเมื่อ (2015-08-28)   3,386 views  (ดูล่าสุดเมื่อ 89 นาที)

  การเขียนเว็บ แบบ SPA หรือ Single Page Applications ทำอย่างไร ถามเมื่อ (2015-09-21)   3,146 views  (ดูล่าสุดเมื่อ 89 นาที)

  Oracle วิธีเก็บข้อมูล String ยาวๆ ลงใน CLOB ถามเมื่อ (2018-09-07)   1,774 views  (ดูล่าสุดเมื่อ 91 นาที)

  แนะนำ Scala ภาษาที่ Run บน JVM ได้เหมือน Java ถามเมื่อ (2017-03-08)   27,889 views  (ดูล่าสุดเมื่อ 96 นาที)

  HTTP Request แบบ POST รับได้มากสุดกี่ตัว ถามเมื่อ (2016-07-27)   1,961 views  (ดูล่าสุดเมื่อ 100 นาที)

  jQuery file upload ด้วย AJAX บน Semantic UI ถามเมื่อ (2019-06-01)   2,431 views  (ดูล่าสุดเมื่อ 100 นาที)

  Hashmap กับ Hashtable ใน Java ต่างกันยังไงครับ ถามเมื่อ (2017-11-15)   3,991 views  (ดูล่าสุดเมื่อ 101 นาที)

  Oracle SQL วิธี query field CLOB แปลงเป็น String ถามเมื่อ (2018-09-07)   4,946 views  (ดูล่าสุดเมื่อ 108 นาที)

  ng model ใน AngularJS คือ อะไร ถามเมื่อ (2015-06-18)   2,406 views  (ดูล่าสุดเมื่อ 149 นาที)


 

บ้านเดียวกันดอทคอม เว็บถามตอบ รวมทุกเรื่องที่คุณอยากรู้ ให้ความรู้ ความบันเทิง มีสาระ
www.ban1gun.com