1
新しいSparkSQL APIでは、もはやRDDは必要ないと思われます。 RDDは高価なので、避けなければならないようです。誰かがSpark2でRDDを使う良い時期はいつ説明できますか?Spark2.0でrddを使用するタイミングは?
新しいSparkSQL APIでは、もはやRDDは必要ないと思われます。 RDDは高価なので、避けなければならないようです。誰かがSpark2でRDDを使う良い時期はいつ説明できますか?Spark2.0でrddを使用するタイミングは?
もはや我々はRDDを必要としないと思われる拡張子の束とRDDのAPIの上に構築されます。それはRDDのAPIは、より一般的であり、実際にはSQLのAPIである
RDDは高価なので、避けるべきだと思われます。
RDD APIは本質的に高価ではありません。 SQL APIと同じ最適化は提供されません。 RDDの上に高性能アプリケーションを構築することもできます(例:org.apache.spark.ml
を確認してください)。
Spark2でRDDを使用する良い時期は誰かが説明できますか?
エンドツーエンド型の安全性が必要な場合や、エンコーダが内蔵されていないタイプで多く動作する場合、RDD APIは当然の選択です。
実行順序が重要な場合(SQLで独自の計画ルールを作成することはできますが、それはもっと手間がかかります)、低レベルの制御(ユーザー定義のPartitioners
など)が必要な場合があります。
RDDがDataset/DataFramesより優れているクリティカルエリアは、spark MLパッケージについて議論するときに微妙に参照されるような反復アルゴリズムです。 Spark ML(元のRDD MLLibではない)APIはデータセットを参照していますが、実際にはRDDを使用する傾向があり、最後にデータセットに変換されます。 Catalystオプティマイザは並列化されないため、反復アルゴリズムの最適化は実用的ではありません。 – Garren