Оболочка импалы или искра для ETL? - PullRequest
0 голосов
/ 02 февраля 2019

Я недавно начал работать в среде Hadoop.Мне нужно было сделать несколько базовых ETL, чтобы заполнить несколько таблиц.В настоящее время я импортирую данные в Hadoop, используя sqoop и используя команду оболочки Impala для написания SQL-запросов для преобразований.

Но сейчас я много слышу об Spark.В моей ситуации будет ли у меня какое-либо преимущество в написании ETL в Spark вместо оболочки Impala?

Спасибо S

Ответы [ 2 ]

0 голосов
/ 07 февраля 2019

Я бы добавил, что Impala - это не инструмент ETL, это механизм запросов SQL, который позволяет выполнять запросы SQL для очень больших наборов данных после очистки данных в процессе ETL.

Исторически Pig иУлей были использованы для ETL до Spark.Hive по-прежнему актуален, если вы предпочитаете SQL-подобный синтаксис, и есть много вариантов, которые предлагают лучшую производительность, таких как Hive на Tez и Hive на Spark, который заменяет MapReduce на Spark.

Ссылки

0 голосов
/ 02 февраля 2019

Многие люди в прошлом использовали либо A) SQL-скрипты (например, Impala) со сценариями UNIX, либо использовали B) инструменты ETL для ETL.

Однако вопрос состоит в том, чтобы: 1) больше масштаба imo и 2) стандартизация технологий.

Поскольку Spark используется, то почему бы не стандартизировать Spark?

Я прошел этот цикл, и обработка в Kimball DWH вполне может быть выполнена с помощью Spark.Это означает меньшие затраты с точки зрения платных инструментов ETL, таких как Informatica.Но существуют выпуски сообщества.

Некоторые моменты, на которые следует обратить внимание:

  • Сохранение файла в различные форматы HDFS проще и более прямолинейно с Data Frame Writer и т. Д.
  • Но Informatica-подобные отображения с ветвями немного отличаются.
  • Производительность в масштабе будет лучше при использовании Spark, как только данные будут получены из внешних источников.
  • Управление файлами проще в сценариях UNIX, чем в Spark imo, но в этом случае нужно привыкнуть, если это сделатьвнутри искры.
  • Sqoop можно избежать, и вы можете использовать JDBC DF Reader of Spark, но нет причин отказываться от sqoop, хотя я бы вместо этого использовал Confluent Kafka Connect с более высокой задержкой, но тогда мы получим Zen Вопросы какKafka предназначена для большего количества аспектов в реальном времени.
  • В целом я не убежден в преимуществах инструментов ETL.

Благодаря сокращению затрат, которое требуется ИТ-специалистам, Spark является хорошимвариант.Но это не для слабонервных, нужно быть хорошим программистом.Это то, что я слышу от многих людей.

...