DataFrame
(例:100GBのテーブル)をキャッシュしようとしていて、キャッシュのクエリを実行すると、フルテーブルスキャンが実行されますか?DataFrame
スパークがどのようにデータをインデックス化するか。スパークのドキュメントは言う:キャッシュクエリのパフォーマンスSpark
スパークSQLはspark.catalog.cacheTable(「tableNameの」)またはdataFrame.cacheを呼び出す ことにより、メモリ内の柱状の形式を使用して表をキャッシュすることができます()。 Spark SQLは必要な列のみをスキャンし、自動的にメモリ使用量とGC圧力を最小限に抑えるように圧縮を調整します( )。 メモリからテーブルを削除するには、spark.catalog.uncacheTable( "tableName")を呼び出します。誰かが声明を下回るについて詳細に説明したり、それが
「次に大きなキャッシュされたデータフレームにクエリを最適化する方法ならば、私は完全に声明の上に理解していなかった
http://spark.apache.org/docs/latest/sql-programming-guide.html#caching-data-in-memory
は、それは本当に参考になりますSpark SQLは必要な列のみをスキャンして自動的に行います。
チューン圧縮 "
.explain()メソッドからクエリプランを提供できますか? – addmeaning