Я слышал о многих инструментах / платформах, помогающих людям обрабатывать свои данные (среда больших данных).
Один называется Hadoop, а другой - концепцией noSQL. Какая разница в точке обработки?
Они дополняют друг друга?
Я слышал о многих инструментах / платформах, помогающих людям обрабатывать свои данные (среда больших данных).
Один называется Hadoop, а другой - концепцией noSQL. Какая разница в точке обработки?
Они дополняют друг друга?
Ответы:
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]]
...
Теперь Hadoop будет сделано со всем. Теперь вы можете загрузить результат в HDFS (распределенную файловую систему hadoop) или в любую СУБД или файл.
Вот лишь один очень простой и простой пример того, что может сделать hadoop. Вы можете выполнять намного более сложные задачи в hadoop.
Как вы уже упоминали в своем вопросе, hadoop и noSQL дополняют друг друга. Я знаю несколько установок, где, например, миллиарды наборов данных от датчиков хранятся в HBase и затем передаются через hadoop для окончательного хранения в СУБД.
NoSQL - это способ хранения данных, который не требует каких-либо отношений. Простота конструкции и возможность горизонтального масштабирования - один из способов хранения данных - key : value
парная конструкция. Это поддается обработке, аналогичной Hadoop. Использование базы данных NoSQL на самом деле зависит от типа проблемы, за которой он следует.
Вот хорошая ссылка на Википедию NoSQL
Hadoop - это система, предназначенная для хранения и обработки огромных кусков данных. Это распределенная файловая система DFS. Это объясняется тем, что в основе его конструкции лежит предположение о том, что аппаратные сбои являются обычным явлением, что делает несколько копий одного и того же фрагмента информации и распределяет его по нескольким машинам и стойкам, поэтому, если один из них выходит из строя, нет проблем, мы есть еще две копии. Вот отличная ссылка на Hadoop из Википедии, и вы увидите, что это, на мой взгляд, больше, чем просто хранение, но и обработка: Hadoop