DataFrame をキャッシュする
あなたは、ある DataFrame に対して複数の分析処理を実行するタスクを任されました。DataFrame を再利用する場合はキャッシュでパフォーマンスを改善できると学んだので、これを適用したいと考えています。
今回扱うのは、航空会社の出発情報からなる新しいデータセットです。重複データが含まれている可能性があり、重複排除が必要です。
DataFrame departures_df は定義済みですが、まだアクションは実行していません。
この演習はコースの一部です
PySpark でデータをクレンジングする
演習の手順
departures_dfDataFrame の重複を取り除いた行をキャッシュしてください。departures_dfに対して件数を数えるクエリを実行し、処理時間を記録してください。- 再度行数を数え、キャッシュ後の DataFrame で時間の違いを確認してください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
start_time = time.time()
# Add caching to the unique rows in departures_df
departures_df = departures_df.____.____
# Count the unique rows in departures_df, noting how long the operation takes
print("Counting %d rows took %f seconds" % (departures_df.____, time.time() - start_time))
# Count the rows again, noting the variance in time of a cached DataFrame
start_time = time.time()
print("Counting %d rows again took %f seconds" % (____, time.time() - start_time))