ความแตกต่างระหว่าง Hadoop และ noSQL คืออะไร


15

ฉันได้ยินเกี่ยวกับเครื่องมือ / กรอบการทำงานมากมายสำหรับช่วยเหลือผู้คนในการประมวลผลข้อมูล (สภาพแวดล้อมของข้อมูลขนาดใหญ่)

หนึ่งเรียกว่า Hadoop และอื่น ๆ เป็นแนวคิด noSQL ความแตกต่างของการประมวลผลคืออะไร?

พวกเขาเสริมหรือไม่


3
โหวตให้เพราะขาดความพยายามวิจัย Hadoop และ noSQL มีการกำหนดที่อื่น
Spacedman

@ Spacerman ฉันเห็นด้วย แต่นั่นเป็นตัวอย่างของคำถามจากArea51ถ้ามันไม่ถูกลบออกก่อนที่ฉันจะเดาว่ามันถูกต้องและแม้ว่าฉันจะรู้คำตอบเมื่อฉันโพสต์คำถาม (อย่างน้อยโดยทั่วไป)
рüффп

คำตอบ:


16

Hadoop ไม่ได้เป็นฐานข้อมูล hadoop เป็นระบบนิเวศทั้งหมด

ระบบนิเวศน์หะรอบ

คนส่วนใหญ่จะอ้างถึงงานmapreduceในขณะที่พูดคุยเกี่ยวกับ hadoop งาน mapreduce จะแยกชุดข้อมูลขนาดใหญ่ในชุดข้อมูลขนาดเล็กและกระจายไปยังกลุ่มของโหนดเพื่อดำเนินการต่อ ในที่สุดผลลัพธ์จากแต่ละโหนดจะรวมกันอีกครั้งเป็นหนึ่งชุดข้อมูล


สมมติว่าคุณโหลดเป็นชุดของ<String, Integer>ประชากรบางละแวกใกล้เคียงภายในเมืองและคุณต้องการให้ประชากรเฉลี่ยทั่วทั้งย่านใกล้เคียงของแต่ละเมือง (รูปที่ 1)

รูปที่ 1

    [new york, 40394]
    [new york, 134]
    [la, 44]
    [la, 647]
    ...

ตอนนี้ Hadoop จะทำการแมปแต่ละค่าโดยใช้ปุ่ม (รูปที่ 2)

รูปที่ 2

[new york, [40394,134]]
[la, [44,647]]
...

หลังจากการแมปมันจะลดค่าของแต่ละคีย์ให้เป็นค่าใหม่ (ในตัวอย่างนี้ค่าเฉลี่ยมากกว่าชุดค่าของแต่ละคีย์) (รูปที่ 3)

รูปที่ 3

[new york, [20264]]
[la, [346]]
...

ตอนนี้ก็จะทำทุกอย่างให้เรียบร้อย ตอนนี้คุณสามารถโหลดผลลัพธ์ลงใน HDFS (ระบบไฟล์แบบกระจาย hadoop) หรือลงใน DBMS หรือไฟล์ใด ๆ

นั่นเป็นเพียงตัวอย่างขั้นพื้นฐานและเรียบง่ายอย่างหนึ่งของสิ่งที่ฮาสุปเปอร์สามารถทำได้ คุณสามารถทำงานที่ซับซ้อนมากขึ้นใน hadoop

ดังที่คุณได้กล่าวถึงไปแล้วในคำถามของคุณ hadoop และ noSQL นั้นเสริม ฉันรู้ว่ามีการตั้งค่าบางอย่างเช่นชุดข้อมูลนับพันจากเซ็นเซอร์ถูกเก็บไว้ใน HBase และจากนั้นก็ผ่าน hadoop ไปจนถูกเก็บไว้ใน DBMS


5

NoSQL เป็นวิธีการจัดเก็บข้อมูลที่ไม่จำเป็นต้องมีความสัมพันธ์บางอย่าง ความเรียบง่ายของการออกแบบและความสามารถในระดับแนวนอนวิธีหนึ่งในการจัดเก็บข้อมูลคือการkey : valueออกแบบคู่ สิ่งนี้ให้ตัวเองกับการประมวลผลที่คล้ายกับ Hadoop การใช้ NoSQL db นั้นขึ้นอยู่กับประเภทของปัญหาที่เกิดขึ้นหลังจากนั้น

นี่คือลิงค์วิกิพีเดียที่ดีNoSQL

Hadoop เป็นระบบที่มีไว้เพื่อจัดเก็บและประมวลผลข้อมูลจำนวนมหาศาล มันเป็นระบบไฟล์แบบกระจาย dfs เหตุผลก็คือสิ่งนี้เป็นศูนย์กลางในการออกแบบทำให้ข้อสันนิษฐานว่าความล้มเหลวของฮาร์ดแวร์เป็นเรื่องปกติดังนั้นการทำสำเนาของข้อมูลชิ้นเดียวกันหลายชุดและกระจายไปทั่วเครื่องและแร็คดังนั้นหากไม่มีปัญหาเราก็ทำได้ มีอีกสองชุด นี่คือลิงค์ที่ยอดเยี่ยมสำหรับ Hadoop จากวิกิพีเดียเช่นกันคุณจะเห็นว่าในความคิดของฉันเป็นมากกว่าเพียงแค่การจัดเก็บ แต่ยังประมวลผล: Hadoop

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.