始める無料で始める

キャッシュの練習:パート1

次のいくつかの演習では、2つのDataFrameをキャッシュするさまざまな方法を試します。

DataFrame df1 は csv ファイルから読み込まれ、いくつかの処理ステップが実行されています。df1 は複数回利用するため、キャッシュの候補です。

2つ目の DataFrame df2 は、df1 に対してさらに計算負荷の高い処理を行って作成されます。これもキャッシュの候補です。

df2df1 に依存しているため、df1 をキャッシュすべきか、df2 をキャッシュすべきか、という疑問が生じます。

この演習では、まず df1 をキャッシュしてみます。各アクションにかかった時間に注目してください。次の演習でこれらを比較します。

この演習はコースの一部です

Pythonで学ぶ Spark SQL 入門

コースを見る

演習の手順

  • df1 のみをキャッシュしてください。
  • df1 に対して最初のアクションを実行してから繰り返し、次に df2 に対してアクションを実行してから繰り返します。これはすでに用意されています。
  • df1 がキャッシュされているかどうかを確認してください。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Unpersists df1 and df2 and initializes a timer
prep(df1, df2) 

# Cache df1
____

# Run actions on both dataframes
run(df1, "df1_1st") 
run(df1, "df1_2nd")
run(df2, "df2_1st")
run(df2, "df2_2nd", elapsed=True)

# Prove df1 is cached
print(____)
コードを編集して実行