Size: a a a

2020 April 21

PK

Pavel Klemenkov in Moscow Spark
Andrey Smirnov
в документации это так и написано, просто без тех. деталей
Йеп
источник

А

Алексей in Moscow Spark
Подскажите, создал таблицу с кластеризацией
CLUSTERED BY(col1) SORTED BY(col1, col2) INTO 4 BUCKETS
делаю insert через spark sql, но данные вставляются не кластеризованно (файлов создается значительно больше 4)
как spark sql принудить делать кластеризацию, так же как это делается в хайве (hive.enforce.bucketing, hive.enforce.sorting ) ?
источник

ИК

Иван Калининский... in Moscow Spark
Алексей
Подскажите, создал таблицу с кластеризацией
CLUSTERED BY(col1) SORTED BY(col1, col2) INTO 4 BUCKETS
делаю insert через spark sql, но данные вставляются не кластеризованно (файлов создается значительно больше 4)
как spark sql принудить делать кластеризацию, так же как это делается в хайве (hive.enforce.bucketing, hive.enforce.sorting ) ?
Если не путаю, то spark будет создавать по четыре файла для каждой партиции RDD. Если сделать df.Coalesce(1),тогда будет 4 файла. Собственно, из-за такого поведения я и не стал использовать бакетинг as is. Пришлось наколхозить repartition по некоторым выражениям, но hive про это ничего не знает (
источник

ИК

Иван Калининский... in Moscow Spark
источник

ИК

Иван Калининский... in Moscow Spark
И вот ещё неоднозначный материал: https://stackoverflow.com/questions/51654842/hive-bucketing-through-sparksql
источник

А

Алексей in Moscow Spark
спасиб, я короче пока забил на эту тему. Попробовал еще без sparksql, просто через апи сделать bucketBy + sortBy и записать в папку партиции таблицы, а спарк сказал, что пока это не поддерживается
источник

ИК

Иван Калининский... in Moscow Spark
Алексей
спасиб, я короче пока забил на эту тему. Попробовал еще без sparksql, просто через апи сделать bucketBy + sortBy и записать в папку партиции таблицы, а спарк сказал, что пока это не поддерживается
И не будет, походу (
источник

А

Алексей in Moscow Spark
почему? это так удобно, в хайве постоянно пользовался
источник

А

Алексей in Moscow Spark
удобно в плане, что эти бакеты потом при селектах используются, или если 2 таблицы одинаково порезаны и отсортированы, то можно сделать чисто мап-джойн
источник

ИК

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

А

Алексей in Moscow Spark
+ в сторону холивара: хайв - спаркскл)
источник

Sa

Salam andra in Moscow Spark
Всем привет) подскажите плиз можно как нибудь выключить валидацию spark.sql(...), при "неверном" выражении оно бросает исключение
источник

АЖ

Андрей Жуков... in Moscow Spark
не лучше ли обрабатывать эксепшен? 🙂
источник

ЕГ

Евгений Глотов... in Moscow Spark
Андрей Жуков
не лучше ли обрабатывать эксепшен? 🙂
try:
...
except Exception as e:
...
источник

ЕГ

Евгений Глотов... in Moscow Spark
источник

АЖ

Андрей Жуков... in Moscow Spark
Чот не похоже на скалу
источник

ЕГ

Евгений Глотов... in Moscow Spark
На скале тоже так можно)
источник

PK

Pavel Klemenkov in Moscow Spark
Андрей Жуков
Чот не похоже на скалу
Блин, ты прям как @tenKe разговариваешь )
источник

PK

Pavel Klemenkov in Moscow Spark
Точнее так Андрюха делает код ревью программ на pyspark
источник

Sa

Salam andra in Moscow Spark
Андрей Жуков
не лучше ли обрабатывать эксепшен? 🙂
Слишком просто) у spark sql ограниченный функционал, в хайв не все запросы провалидируются правильно
источник