PySparkを使用した特徴の抽出

この章では、アジャイルデータサイエンスにおけるPySparkを使用した抽出機能のアプリケーションについて学習します。

Sparkの概要

Apache Sparkは、高速なリアルタイム処理フレームワークとして定義できます。リアルタイムでデータを分析するための計算を行います。Apache Sparkは、リアルタイムのストリーム処理システムとして導入されており、バッチ処理も処理できます。Apache Sparkは、インタラクティブなクエリと反復アルゴリズムをサポートしています。

Sparkは「Scalaプログラミング言語」で書かれています。

PySparkは、PythonとSparkの組み合わせと見なすことができます。PySparkは、Python APIをSparkコアにリンクし、Sparkコンテキストを初期化するPySparkシェルを提供します。前の章で説明したように、ほとんどのデータサイエンティストは、機能の追跡にPySparkを使用しています。

この例では、countsというデータセットを作成し、それを特定のファイルに保存するための変換に焦点を当てます。

text_file = sc.textFile("hdfs://...")
counts = text_file.flatMap(lambda line: line.split(" ")) \
   .map(lambda word: (word, 1)) \
   .reduceByKey(lambda a, b: a + b)
counts.saveAsTextFile("hdfs://...")

PySparkを使用すると、ユーザーはPythonプログラミング言語でRDDを操作できます。データドリブンドキュメントとコンポーネントの基本をカバーする組み込みライブラリは、これに役立ちます。