How to handle Data skewness in Apache Spark using Key Salting Technique

preview_player
Показать описание
Handling the Data Skewness using Key Salting Technique. One of the biggest problem in parallel computational systems is data skewness. Data Skewness in Spark happens due to joining on a key that is not evenly distributed across the cluster, causing some partitions to be very large and not allowing Spark to process data in parallel.

Рекомендации по теме
Комментарии
Автор

Hi Sir... Perfect Great Explanation... Thank you for your effort...
I have a doubt :--
After joining The Salting step should be - unsalted and then grouped by has to be applied, Right...?

gurumoorthysivakolunthu
Автор

Well, I must say, thanks a been searching for this kind of explaination.

gautamyadav-cxzx
Автор

This really great and crystal clear explanations....thanks a lot for sharing and spreading knowledge!

someshchandra
Автор

Excellent video..thanks for the explanation and sharing the code

ashwinc
Автор

beautifully explained, thank you very much :)

arunsundar
Автор

Thanks but if we have multiple columns as KEY how to handle it ?

SpiritOfIndiaaa
Автор

Great Explanation, Thanks for sharing this.
I think there is off by 1 error.
You are using (0 to 3) which will have (0, 1, 2, 3)
but random number range will be (0, 1, 2)

MahmoudHanafy
Автор

Good work, its better you show the ourput after the salting dataframes and explain udf more detail.

savage_su
Автор

Amazing video.... How can we use the salting technique in PySpark for data skew?

vijeandran
Автор

amazing video.. however, i don't know scala. So can you please give an example on how to implement the salting technique with Spark SQL queries ? that'll be of great help..

rishigc
Автор

but the join output will not be correct because in previous scenario it would have joined with all the matching ids but with new salting method it will join with only newly slated key, that's weird

akashhudge
Автор

Hey great video, could you also link the associated resources you referred to while making this video?

shwetanandwani
Автор

I have 2 questions:
First one: I think that is wrong on your visual presentation of table 2 after salting. Why don't you have z_2 und z_3 there? Also why are you using capital letters sometimes, that's confusing.
Secone question: I don't get the benefit of Key Salting in general. How is this different from broadcasting you second table? Because you explode it and then you will end up with sending the whole table to every executor anyway? No one can give an answer to this question.

thomashass
Автор

Can u please explain how to take the random number count

aravindkumar
Автор

Hi, are you missing something in code ?? I used your code but its throwing an exception for the below code of lines

//join after elminating data skewness
df3.join(
df4,
df3.col("id")<=> df4.col("id")
)
.show(100, false)

}

NishaKumari-opek