Hadoop v / s Spark разъяснение - PullRequest
       22

Hadoop v / s Spark разъяснение

0 голосов
/ 02 октября 2018

Я учусь о Hadoop и Spark и попал в одно сомнение.Пожалуйста, помогите мне уточнить, что.

Hadoop читает из HDFS (жесткий диск), обрабатывает данные в памяти и записывает полученный результат обратно в HDFS (жесткий диск).Поправьте меня, если я ошибаюсь.

Sparks также будет считывать данные с жесткого диска (в другом месте, где это может быть в первый раз?) И заполняет эти данные в RDD (созданный в памяти), а затем выполняет обработку и последующую записьэти данные на жесткий диск, если не требуется дальнейшая обработка.В искре может быть создано несколько СДР для обработки данных различного типа.И эти СДР могут взаимодействовать друг с другом.Поправьте меня, если я ошибаюсь.

Spark рекомендуется для обработки в реальном времени.Зачем ?Hadoop не может сделать то же самое?Потому что в конце источником и местом назначения является жесткий диск (если есть какая-либо другая ситуация, пожалуйста, поделитесь).В Hadoop я не могу создавать RDD, подобные концепции, но я могу расширить свой код, который будет делать то же самое, что и несколько RDD. (Имеет смысл)

Пожалуйста, поделитесь своими взглядами на мои мысли и исправьте меня, где бы я нинеправильно.

Ответы [ 2 ]

0 голосов
/ 02 октября 2018

Потому что в конце источником и местом назначения является жесткий диск.

Конечно, но не обязательно жесткий диск HDFS.Может быть сервер Mysql или Kafka Broker.

Spark рекомендуется для обработки в реальном времени.Зачем ?Hadoop не может сделать то же самое?

Во-первых, Hadoop не является механизмом обработки - YARN обеспечивает абстракцию для обработки заданий, и многие приложения работают на YARN.Включая Flink, Storm / Heron, которые являются реже действующими потоковыми платформами в реальном времени (не уверены почему?) (Обычно загружаются Kafka, а не Hadoop).Spark выполняет «мини-пакеты» с минимальным порядком секунд, где другие фреймворки работают на еще меньших таймфреймах

В Hadoop я не могу создавать RDD, подобные концепции

RDD - это концепция Spark, и Spark использует библиотеки Hadoop для выполнения своих задач, поэтому это утверждение ложно.

Если вы имеете в виду, что не можете создавать лениво вычисляемые действия, то вам может потребоваться посмотреть на Pig, которая также создает план выполнения DAG, который вычисляется только при выполнении действия.Очень похоже на то, как RDD (или DataFrames) взаимодействуют друг с другом.

Sparks также будет считывать данные с жесткого диска (иначе, где это может быть в первый раз?)

Предполагая, что вы имеете в виду жесткие диски HDFS, альтернативами может быть локальная файловая система,S3, Kafka, как уже упоминалось, или база данных SQL, или Mongo, Elasticsearch и т. Д. Hadoop - это всего лишь одно из возможных мест, где существуют данные, и Spark может их читать.

0 голосов
/ 02 октября 2018

Spark и Hadoop не эквивалентны.RDD - это концепция исключительно из среды Spark, которая может отображать файлы, хранящиеся в HDFS.Spark может обрабатывать и никогда не писать на Диски, просто как средство транзита.

Hadoop соответствует HDFS плюс YARN.HDFS предназначена для обеспечения распределенного хранения с использованием дисков, а YARN позволяет использовать инфраструктуру для обработки оперативной памяти.Spark может получить доступ к ним обоим.

Я думаю, что вам нужно сделать как минимум два примера, чтобы понять, как связаны Spark и Hadoop:

...