PySparkとは?
ソース
Sparkは基本的にScalaで記述されており、以降業界での導入が進んだことでPy4Jを用いてPython向けAPI PySparkがリースされました。Py4JはPySpark内でインテグレーションされており、Pythonが動的にJVMオブジェクトとやりとりすることを可能にしているので、PySparkを実行するにはPython、Apache SparkとJavaをインストールする必要があります。
さらに、開発においては、PySparkアプリケーションを実行するために、Spyder IDEやJupyter notebookのような有用なツールを数多く備えている(機械学習コミュニティで広く使われている)Anacondaディストリビューションを使うこともできます。
PySparkの機能
インメモリの計算処理
並列化による分散処理
さまざまなクラスターマネージャ(Spark、Yarn、Mesosなど)で利用可能
フォールトトレラント
イミュータブル
遅延評価
キャッシュ & 永続化
データフレームを使う際のビルトインの最適化処理
ANSI SQLのサポート
PySparkの利点
PySparkは、分散によってデータを効率的に処理できる汎用、インメモリ、分散処理エンジンです。
PySparkで実行するアプリケーションは、従来システムより100倍高速です。
データ取り込みパイプラインにおいてPySparkを用いることで非常に大きな効果を得ることができます。
PySparkを用いることで、Hadoop HDFS、AWS S3など数多くのファイルシステムのデータを処理することができます。
また、PySparkはストリーミングやKafkaを用いてリアルタイムデータを処理することに使うことができます。
PySparkのストリーミングを用いることで、ファイルシステムやソケットからのストリームからファイルをストリーミングすることができます。
PySparkはネイティブで機械学習、グラフライブラリを持っています
よーするにメリットだらけ。
この記事が気に入ったらサポートをしてみませんか?