pyspark-window-functions-row-wise-ordering-ranking-and-cumulative-sum-with-real-world-examples-and-use-cases