問題タブ [aws-glue-spark]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
pyspark - 配列または構造体としての AWS Glue Resolve 列の選択
次の問題を解決する方法についてのアイデアが不足しています。Glue データ カタログのテーブルには、次のスキーマがあります。
ref
を使用して選択を解決しようとすると
私は記録を失います。
私がどのようにできるかについてのアイデア:
- またはで
_field.ref
あるかどうかでDataFrameをフィルタリングしますarray
struct
struct
レコードを に、array
またはその逆に変換する
apache-spark - 遅い AWS Glue + PySpark 実行ステージを解決するためのより体系的な方法はありますか?
100 レコードのみを使用してスタンドアロン モードでローカルに実行したこのコード スニペットがあります。
スキーマには、構造体データ型の配列を持つ 5 つの列を除いて、すべて文字列データ型を持つ 89 個の列が含まれています。データサイズは3.1MB。
また、コードの実行に使用される環境に関する情報は次のとおりです。
- spark.executor.cores: 2
- spark.executor.id: ドライバー
- spark.driver.memory: 1000M
問題は、ステージ 1 が 100 レコードしか数えられないのに、終了するのに 12 分かかった理由がわからないことです。次の図に示すように、"Scan parquet" および "Exchange" タスクの意味がわかりません: ステージ 1 DAG の視覚化
私の質問は、これらのタスクの意味を理解するためのより体系的な方法があるかどうかです。初心者として、私は Spark UI に大きく依存していましたが、実行されたタスクに関する情報はあまり得られません。どのタスクが最も時間がかかったかを見つけることができましたが、その理由とそれを体系的に解決する方法がわかりません。