Я очень новичок во всем мире технологий «больших данных» и недавно начал читать о Spark. Одной вещью, которая продолжает расти, является SparkSQL, но я постоянно не понимал, что это именно так.Что такое SparkSQL?
Предполагается ли преобразовывать SQL-запросы в MapReduce, которые выполняют операции с данными, которые вы им даете? Но не являются ли файлы данных уже по существу таблицами SQL с точки зрения функциональности?
Или это технология, которая позволяет вам подключаться к базе данных SQL и использовать Spark для запроса? В этом случае, в чем смысл Spark здесь вообще - почему бы не использовать SQL напрямую? Или вы можете использовать ваши структурированные данные SQL в сочетании с плоскими данными?
Опять же, я подчеркиваю, что я очень новичок во всем этом и могу или не могу говорить из моего приклада :). Поэтому, пожалуйста, поправьте меня и прощайте, если увидите, что я явно что-то недопонимаю.
Я вижу, имеет смысл сейчас! Я заметил, что Spark, похоже, имеет много избыточности для размещения разных стилей, например, тот факт, что методы filter() и where() являются буквально одним и тем же методом, и единственная причина, по которой where() существует, потому что ее «больше знакомы "людям, которые использовали SQL. Но для того, чтобы быть понятным, SparkSQL не имеет ничего общего с вашими регулярными реляционными базами данных, такими как MySQL и Postgres? Это просто API, который позволяет вам делать ваши запросы очень похожим образом, но на плоских данных, а не на структурированных, правильно? –
Я предполагаю, что это был бы собственный вопрос, но теперь, когда мы на эту тему, возможно тоже :). В чем разница между Hive и SparkSQL? Я думал, что Hive был инструментом, который вы использовали для написания SQL-подобных запросов на плоских данных, так что SparkSQL является конкурентом? Это лучше? –
Да, это не имеет ничего общего с MySQL и Postres, это всего лишь SQL как язык запросов. HIve также использует синтаксис SQL, но он работает на Hadoop, который делает много дискового ввода-вывода, поэтому может быть довольно медленным, в то время как Spark - это в основном встроенная память (если вы делаете это правильно), так это намного быстрее для многих типов вещей , В особенности, например, специальные запросы на ваши данные, SparkSQL должен возвращаться за считанные секунды, хотя для Hive может потребоваться несколько минут. – maxymoo