Size: a a a

2020 February 08

АЖ

Андрей Жуков... in Moscow Spark
☭ ⤳ λ Shinkevich
Оно уживается с 2.1? Если в сторонке развернуть? Я просто не делал ни разу, надо бы изучить вопрос... Там ещё может и хадуп и хбейз новее потребуются...
дык какая разница контейнерам спарка 2.1, чо там в других контейнерах - хоть тез, хоть мапредюс хоть другой спарк
У нас так на хортоне уживался 2.4 с 2.3
Да и хортон, и клаудера долгое время с двумя ветками спарка жили - 1 и 2
источник

☭S

☭ ⤳ λ Shinkevich... in Moscow Spark
Андрей Жуков
дык какая разница контейнерам спарка 2.1, чо там в других контейнерах - хоть тез, хоть мапредюс хоть другой спарк
У нас так на хортоне уживался 2.4 с 2.3
Да и хортон, и клаудера долгое время с двумя ветками спарка жили - 1 и 2
У нас хортон перелицованный, как я понимаю, тот что в амбари - его оставить без изменений, а где-то на одной из нод развернуть новый, и настроить сабмит...
источник

АЖ

Андрей Жуков... in Moscow Spark
☭ ⤳ λ Shinkevich
У нас хортон перелицованный, как я понимаю, тот что в амбари - его оставить без изменений, а где-то на одной из нод развернуть новый, и настроить сабмит...
можно вообще снаружи

но тут  все зависит от злобности админов хадупа
источник

☭S

☭ ⤳ λ Shinkevich... in Moscow Spark
Ну, скажем, на ноды есть рут, а вот в сам амбари, только рестартануть чего...
источник

АЖ

Андрей Жуков... in Moscow Spark
☭ ⤳ λ Shinkevich
Ну, скажем, на ноды есть рут, а вот в сам амбари, только рестартануть чего...
да не нужна тебе амбарь, тебе ярн нужен
источник

☭S

☭ ⤳ λ Shinkevich... in Moscow Spark
Ок
источник

АЖ

Андрей Жуков... in Moscow Spark
главное - правильно спарк снарядить в дорогу, с конфигами и либами
фэтжар или венв, например
источник

☭S

☭ ⤳ λ Shinkevich... in Moscow Spark
Андрей Жуков
главное - правильно спарк снарядить в дорогу, с конфигами и либами
фэтжар или венв, например
Понял, спасибо!
источник
2020 February 09

K

KGM in Moscow Spark
Приветы!

Простите, если подобный вопрос не раз уже задавали, но очень интересны мнения, касаемо актуальности, в 2020 году, и конечно же, пользы следующих сертификаций:

1) https://academy.databricks.com/exam/crt020-scala

2) https://www.cloudera.com/about/training/certification/cca-spark.html,

помогают ли они систематизировать знания?
источник
2020 February 11

SS

Svetlana Skorikova in Moscow Spark
Добрый день!
Есть pandas df, он весит более 1GB.
Я хочу записать его в табличку в Hive.
Я создаю spark df
sqlContext.createDataFrame(df, schema=schema)
Далее пишу в Hive
df_spark.write.insertInto выдаёт ошибку:

Job aborted due to stage failure: Serialized task 16:0 was 673361498 bytes, which exceeds max allowed: spark.rpc.message.maxSize (134217728 bytes). Consider increasing spark.rpc.message.maxSize or using broadcast variables for large values.

Попробовала поменять в конфигурации спарк сессии параметры

.config("spark.default.parallelism", '300'),
.config("spark.rpc.message.maxSize", '1024')

Не помогло. repartition spark df тоже не помог.

Подскажите, пожалуйста, где узкое место? Почему не получается писать в табличку?

PS: Что интересно, когда бью пандас df на батчи и записываю в табличку описанным выше методом. В hdfs файликов столько, сколько указан параметр default parallelism.
источник

AS

Andrey Sutugin in Moscow Spark
Svetlana Skorikova
Добрый день!
Есть pandas df, он весит более 1GB.
Я хочу записать его в табличку в Hive.
Я создаю spark df
sqlContext.createDataFrame(df, schema=schema)
Далее пишу в Hive
df_spark.write.insertInto выдаёт ошибку:

Job aborted due to stage failure: Serialized task 16:0 was 673361498 bytes, which exceeds max allowed: spark.rpc.message.maxSize (134217728 bytes). Consider increasing spark.rpc.message.maxSize or using broadcast variables for large values.

Попробовала поменять в конфигурации спарк сессии параметры

.config("spark.default.parallelism", '300'),
.config("spark.rpc.message.maxSize", '1024')

Не помогло. repartition spark df тоже не помог.

Подскажите, пожалуйста, где узкое место? Почему не получается писать в табличку?

PS: Что интересно, когда бью пандас df на батчи и записываю в табличку описанным выше методом. В hdfs файликов столько, сколько указан параметр default parallelism.
В какаой момент вы устанавливаете
config("spark.rpc.message.maxSize", '1024')
?
Может проблема в том что сессия уже стартовала и параметр не применяется?
источник

SS

Svetlana Skorikova in Moscow Spark
Возможно, вы правы. В первый раз этот параметр точно не примерился. Как получится, напишу! Спасибо
источник

AS

Andrey Sutugin in Moscow Spark
Svetlana Skorikova
Возможно, вы правы. В первый раз этот параметр точно не примерился. Как получится, напишу! Спасибо
Можно попробовать так:
pyspark  --conf spark.rpc.message.maxSize=1024

Или, если сессия уже есть в ноутбуке или консоли, то вот так:
sc.stop()
configura=SparkConf().set('spark.rpc.message.maxSize','256')
sc=SparkContext.getOrCreate(conf=configura)
spark = SparkSession.builder.getOrCreate()
источник

NN

Nazar Niyazov in Moscow Spark
В спарке есть возможность читать из паркета часть данных по условию типа where? 650 Гб читать очень долго, нужна только часть.
источник

SA

Sergey Akopyan in Moscow Spark
Nazar Niyazov
В спарке есть возможность читать из паркета часть данных по условию типа where? 650 Гб читать очень долго, нужна только часть.
Если данные разбиты по партициям и условие на партицию - то да умеет.
источник

NN

Nazar Niyazov in Moscow Spark
Не разбиты
источник

NN

No Name in Moscow Spark
Sergey Akopyan
Если данные разбиты по партициям и условие на партицию - то да умеет.
Ну или на бакеты ещё, если spark >= 2.4
источник

NN

No Name in Moscow Spark
Nazar Niyazov
Не разбиты
Тогда нет, все прочитает, а фильтровать потом будет.
источник
2020 February 12

SS

Svetlana Skorikova in Moscow Spark
Andrey Sutugin
Можно попробовать так:
pyspark  --conf spark.rpc.message.maxSize=1024

Или, если сессия уже есть в ноутбуке или консоли, то вот так:
sc.stop()
configura=SparkConf().set('spark.rpc.message.maxSize','256')
sc=SparkContext.getOrCreate(conf=configura)
spark = SparkSession.builder.getOrCreate()
Помогло! Спасибо большое. Действительно, сначала конфиг не подтянулся.
источник
2020 February 14

M

Mikhail in Moscow Spark
Всем привет! Возник вопрос по оптимизации. Как можно повлиять на план запроса, который строит Spark, а именно указать правильный порядок джойна? Знаю, что есть хинты для broadcast join, но у меня ситуация другая. Джойнятся две большие таблицы факта (условно F1 и F2) + каждая из них джойнится на календарь для фильтрации (D). Spark строит план ((F1 broadcast join D) sortmerge join F2) broadcast join D). Вместо того, что вторую таблицу фактов так же предварительно фильтрануть по календарю. Сталкивался кто с таким?
источник