SlideShare a Scribd company logo
PySpark を使用して
パフォーマンスを最適化するには
自己紹介
名前は Holden Karau です
She / Her と呼ばれることを好みます
IBM Spark テクノロジー・センターで、プリンシパル・ソフトウェア・エンジニアを務めています
Alpine、Databricks、Google、Foursquare、および Amazon での勤務経験があります
「Learning Spark & Fast Data processing with Spark」の共著者
来年出版される Spark のパフォーマンスに関する最新の書籍*の共著者
@holdenkarau
Slideshare http://www.slideshare.net/hkarau
本日の説明内容
皆さんについて
PySpark の機能の概要を簡単に説明
RDD の再利用 (キャッシング、永続化レベル、およびチェックポイント機能)
キー・バリュー・データの処理
キーによるグループ化の使用が危険な理由と対処方法
Spark SQL がすばらしい理由
データセットについて (Spark 1.6 の新機能)
Spark 環境の Python から Scala のコードを呼び出す
Torsten Reuschling
Spark のさまざまなコンポーネント
Apache Spark
SQL と
DataFrame
ストリーミング
言語の
API
Scala、
Java、
Python、
および R
グラフ・
ツール
Spark ML Bagel と
Graph X
MLLib
コミュニティー・
パッケージ
Jon
Ross
本日参加されたすばらしい皆さんについて
すばらしい*人々
ネコの写真については気にしないてください
Apache Spark に関する知識がある
Apache Spak のジョブをスケールアップしたい
さまざまなトピックについて説明しますが、詳細にとらわれる必要はありません
Lori Erickson
PySpark の内部構造の説明
Photo by Bill Ward
Scala で Spark の開発を行うと、PySpark は
どのような機能を実現するのか
Py4J + データ変換 + 卓越した手法
これを実施すると、処理スピードが下がる場合があります
RDD は、通常変換したオブジェクトの RDD を指します
Spark SQL (および DataFrame) ではこれらを使用しない
場合があります
処理のプロセスについて
ドライバー
py4j
ワーカー 1
ワーカー K
パイプ
パイプ
これにより、PySpak にどのような影響が発生するのか
Spark のワーカーが提供するデータがシリアライズされ、Python の
ワーカーに渡される
反復子と反復子の間で何度もデータ変換が実施される
シリアライゼーションを二重で実施するため、すべての処理の負荷が
増大する
Python のワーカーを起動するために多少時間がかかる
JVM が Python のメモリーを制御しないため、YARN などを実装
すると、コンテナの上限を簡単に超えてしまう
エラー・メッセージがわかりにくい
その他
猫の写真は以下から取ったものです。 http://galato901.deviantart.com/art/Cat-on-Work-Break-173043455
Photo from Cocoa Dream
従来からあるスタンバイ機能
words = rdd.flatMap(lambda x: x.split(" "))
wordPairs = words.map(lambda w:(w, 1))
grouped = wordPairs.groupByKey()
grouped.mapValues(lambda counts:sum(counts))
warnings = rdd.filter(lambda x: x.lower.find("warning") != -1).count()
Tomomi
RDD の再利用について (標準機能として利用
できるようになりました)
RDD を再利用する予定がある場合は、どうすべきか
メモリーにうまく収まる場合は、メモリー上にキャッシングする
別のレベルで永続化する
「MEMORY」、「MEMORY_AND_DISK」
チェックポイント機能を使用
ノイズを多く含むデータのクラスター
「_2 & checkpointing」が役立つ場合があります
チェックポイント機能のためにまず永続化を行う
Richard Gillin
キーの不均衡とその問題点
キーが均等に分散していない
郵便番号ごとの売上データや都市ごとのレコードなど
groupByKey によって大量の処理が発生する (簡単に処理が中断する)
非常にアンバランスなパーティションが発生することがある
かなりのキーの不均衡が発生すると、sortByKey であっても障害が発生することがある
遅延ノード (不均衡なシャーディングによって一部のタスクの処理時間が他に比べてずっと長くなる場合がある)
Mitchell
Joyce
groupByKey によって発生する問題
非常に大きな問題を引き起こす
同じキーを持つすべてのレコードを単一のレコードにグループ化
すぐに Reduce 演算 (集計処理など) を行った場合でも、上記が発生
データのサイズが大きすぎてメモリーに収まらないため、ジョブで障害が発生する
SQL 使用しなければ、Pandas で処理を効率化できる
PROgeckoam
処理のプロセスについて
(94110, A, B)
(94110, A, C)
(10003, D, E)
(94110, E, F)
(94110, A, R)
(10003, A, R)
(94110, D, R)
(94110, E, R)
(94110, E, R)
(67843, T, R)
(94110, T, R)
(94110, T, R)
(67843, T, R)(10003, A, R)
(94110, [(A, B), (A, C), (E, F), (A, R), (D, R), (E, R), (E, R), (T, R) (T, R)]
Tomomi
RDD を使用した「通常の」ワードカウント・プログラム
lines = sc.textFile(src)
words = lines.flatMap(lambda x: x.split(" "))
word_count =
(words.map(lambda x:(x, 1))
.reduceByKey(lambda x, y: x+y))
word_count.saveAsTextFile(output)
この行より後では、
データの読み取りと処理は
一切行われない
この「アクション」により、
Spark は RDD を
評価する
このようなプログラムは、
同じ Python の
実行プログラム内で
実行される
GroupByKey
reduceByKey
では、どのような対応を行ったのか
reduceByKey
データ型が同じ場合にうまく機能する (この集計を行うプログラムの場合など)
aggregateByKey
データ型が同じである必要がない (統計情報のモデルを計算する場合など)
Spark が Reduce 演算を実施し、リストの作成をスキップすることができる
Map サイドで Reduce 演算を実施することもできる (シャッフルによる読み取り処理の違いに
注意が必要)
問題を引き起こすのはシャッフルだけなのか
キー順にソートすると、すべてのレコードが同じパーティションに配置される場合がある
パーティション・サイズの制限 (2 GB 程度) の問題が発生することがある
または、パフォーマンスが悪化する
そのため、上記のとおりデータを処理し、キーに無意味な値を追加することが可能
(94110, A, B)
(94110, A, C)
(10003, D, E)
(94110, E, F)
(94110, A, R)
(10003, A, R)
(94110, D, R)
(94110, E, R)
(94110, E, R)
(67843, T, R)
(94110, T, R)
(94110, T, R)
PROTodd
Klassy
シャッフルの大量発生
(94110, A, B)
(94110, A, C)
(10003, D, E)
(94110, E, F)
(94110, A, R)
(10003, A, R)
(94110, D, R)
(94110, E, R)
(94110, E, R)
(67843, T, R)
(94110, T, R)
(94110, T, R)
(94110, A, B)
(94110, A, C)
(94110, E, F)
(94110, A, R)
(94110, D, R)
(94110, E, R)
(94110, E, R)
(94110, T, R)
(94110, T, R)
(67843, T, R)(10003, A, R)
(10003, D, E)
javier_artiles
シャッフルの大量発生を排除
(94110, A, B)
(94110, A, C)
(10003, D, E)
(94110, E, F)
(94110, A, R)
(10003, A, R)
(94110, D, R)
(94110, E, R)
(94110, E, R)
(67843, T, R)
(94110, T, R)
(94110, T, R)
(94110_A, A, B)
(94110_A, A, C)
(94110_A, A, R)
(94110_D, D, R)
(94110_T, T, R)
(10003_A, A, R)
(10003_D, D, E)
(67843_T, T, R)
(94110_E, E, R)
(94110_E, E, R)
(94110_E, E, F)
(94110_T, T, R)
シャッフルに関する留意点
シャッフル・ファイルは再利用できる
しかし、データが大量発生する場合がある*
Sculpture by Flaming Lotus Girls
Photo by Zaskoda
シリアライゼーションの救世主: DataFrame
ほとんどのデータを JVM 内に保存する
この例外となるのが、Python で作成した UDF
Python による呼び出しをクエリー・プランに変換する
Spark の DataFrame でネイティブの処理以外の処理が
必要な場合は、
分散システムにより使いやすさで問題が発生することに
注意してください
SPARK DATAFRAME とは何か
SQL テーブルを超える機能を提供
PANDAS や R DATAFRAME とは異なる
半構造化データ (スキーマ情報を持つ)
テーブル・データ
ラムダではなく式を処理する
例: RDD.FILTER(LAMBDA X: X.HAPPY == TRUE)) ではなく、
DF.FILTER(DF.COL(“HAPPY”) == TRUE) を実行
Spark SQL によってパフォーマンスが改善するケースとは
構造化データまたは半構造化データを処理する場合
それほど複雑でない*処理が利用できれば、それでも構わない場合
データのサブセットに対してのみ処理を行う必要がある場合
処理対象の最も高速なデータでさえ読み取りが行われない
この手法については標準の手法であると説明しましたが、一部卓越した手法**が
利用できるようになりました。
内部機能を活用することで実現
JVM (Python および R) を使用しないユーザーの場合: 二重のシリアライゼーションの
問題を解決可能
** この卓越した手法を活用すると、スタックのオーバーフローが発生することがあります。すべての状態でこの手法が有効とは
限りません。この手法を試す前には、最寄りの Spark の担当部門までご相談ください。
Matti Mattila
このようなケースで Spark SQL を活用するメリット
スペースを効率的に使用するカラムナー処理とキャッシングによってデータの表示が可能
処理をデータ・ストアにプッシュダウン可能
オプティマイザーが処理の内部を検証することが可能
通常の Spark では、処理の内部を検証することで (min(_, _)) と (append(_, _)) の違いを検出することは
できない
Matti Mattila
処理スピードはどれだけ速くなるのか
Andrew Skudder
処理スピードはどれだけ速くなるのか
Andrew Skudder
DataFrame を使用したワード・カウントプログラム
df = sqlCtx.read.load(src)
# Returns an RDD
words = df.select("text").flatMap(lambda x: x.text.split(" "))
words_df = words.map(
lambda x:Row(word=x, cnt=1)).toDF()
word_count = words_df.groupBy("word").sum()
word_count.write.format("parquet").save("wc.parquet")
このプログラムでは、二重の
シリアライゼーションの
問題は引き続き存在
UDF を作成することもできます
def function(x):
卓越した機能を実現
sqlContext.registerFunction(“name”, function,
IntegerType())
しかし、以下に注意が必要
UDF では処理スピードが遅くなる (実行プログラムとの間で
データのコピーの送受信を行う必要がある)
Python と JVM のコード (FTW) を組み合わせる
DataFrame は、処理を JVM にプッシュするための 1 つの方法
Python の UDF とマップでは、このメリットを活用できない
しかし、Scala で UDF を作成し、Python から呼び出すことができる
py4j のエラー・メッセージがわかりにくいことがある
RDD は変換されたオブジェクトを保存するため、
RDD では処理が困難になる
Python から呼び出し可能な関数を提供する
// Python から呼び出し可能な関数名
object functions {
def kurtosis(e:Column):Column = new
Column(Kurtosis(EvilSqlTools.getExpr(e)))
def registerUdfs(sqlCtx:SQLContext):Unit = {
sqlCtx.udf.register("rowKurtosis", helpers.rowKurtosis _)
}
}
py4j* を使用して関数を呼び出す
SparkContext は JVM (_jvm) を参照する
JVM オブジェクトのラッパーとして機能する Python オブジェクト
多くは、「_j[objtype] 」を使用して JVM オブジェクトを取得する
rdd._jrdd
df._jdf
sc._jsc
上記はすべて確定したものではなく、変更される可能性があります
* py4j ブリッジはドライバー**上にのみ存在する
** 厳密には正しくないものの、かなり正しい
例
def register_sql_extensions(sql_ctx):
scala_sql_context = sql_ctx._ssql_ctx
spark_ctx = sql_ctx._sc
(spark_ctx._jvm.com.sparklingpandas.functions
.registerUdfs(scala_sql_context))
Python で DataFrame を使用する際の留意事項
JVM から Pandas に JSON としてシリアライズされるスキーマは
基本的にデータ収集のためのスキーマ
データ結合によりさまざまな製品が必要になる
ビッグデータにより、メモリー不足が発生
バージョン 2.0 より前: HiveContext を使用
Hive のインストールは不要
より強力な UDF や ウィンドウ関数
DATAFRAME が提供する強力な機能
スキーマ情報を管理する
JSON データをロードする際に、データを検証する
以前は、存在しないデータをロードしてもすぐに障害は
発生しなかったものの、今ではすぐに障害が発生する
PHOTO BY DAN G
将来構想*: 卓越した UDF を提供
Scala の世界では、シンプルな Scala を SQL 式に変換する
プロジェクトが進行中
Python でも同じようなアプローチを取ることが可能かもしれない
Jython を使用してシンプルな UDF を作成するプロジェクトの初期
段階にある (バージョン 2.7 と互換性を持ち、ネイティブのライブラ
リーを持たない): SPARK-15369
初期のベンチマーク結果では、ワードカウント処理のスピードがネイティブの Scala
UDF に比べて 5% 遅くなり、通常の Python よりも 65% 近く速くなっています
ベンチマークのために、自社で開発した Python UDF をぜひ
シェアしてください: http://bit.ly/pySparkUDF
* 将来において現在よりもパフォーマンスを改善することを保証するものではありません。しかし、その他のメリットは実現できる予定
です。
PySparkによるジョブを、より速く、よりスケーラブルに実行するための最善の方法  ※講演は翻訳資料にて行います。 - Getting the Best Performance with PySpark -  JPN Datapalooza Tokyo
Spark のテスト・リソース
ライブラリー
Scala: Spark のテスト・ベース (Scala のチェックと単体テスト)、Scala のチェック
(Scala のチェック)、Spark の例 (単体テスト)
Java: Spark のテスト・ベース (単体テスト)
Python: Spark のテスト・ベース (単体テスト 2)、 PySpark のテスト (PySpark のテスト)
サンノゼで開催された Strata でのプレゼンテーション (YouTube に掲載)
ブログ
Java を使用した Spark の単体テスト スピーカー: Jesse Anderson
Making Apache Spark Testing Easy with Spark Testing Base
Unit testing Apache Spark with py.test
raider of gin
Spark に関する追加のリソース
プログラミング・ガイド (Java、Python、Scala に関する資料もあります)
http://spark.apache.org/docs/latest/
Kay Ousterhout の Web サイト
http://www.eecs.berkeley.edu/~keo/
書籍
ビデオ
Spark に関する情報提供
いつもは西海岸から情報を提供しているものの、近日中に Google ハングアウトで
情報を提供予定
今後のイベントを確認するには、Twitter で私をフォローしてください:
https://twitter.com/holdenkarau
raider of gin
Learning Spark
Fast Data
Processing with
Spark
(内容は多少古い)
Fast Data
Processing with
Spark
(第 2 版)
Advanced
Analytics with
Spark
Learning Spark
Fast Data
Processing with
Spark
(内容は多少古い)
Fast Data
Processing with
Spark
(第 2 版)
Advanced
Analytics with
Spark
近日中に発売:
Spark in Action
近日中に発売:
High Performance Spark
次に出版予定の書籍
「初期リリース*」を通じて、最初の 4 つの章を提供します
O’Reilly のサイトから購入可能: http://bit.ly/highPerfSpark
現時点では英語版のみ提供
最新情報については以下を参照してください
http://www.highperformancespark.com
https://twitter.com/highperfspark
* 初期リリースには間違いもいくつか含まれるものの、この内容に基づいて書籍の内容をよりよいものすることが
できます。
Spark に関するビデオ
Apache Spark の Youtube チャンネル
YouTube 上の Spark のビデオ:
http://bit.ly/holdenSparkVideos
Spark Summit 2014 のトレーニング
Paco の Introduction to Apache Spark
ありがとうございました!
Spark のテストを現在実施中です。
以下からぜひアンケートにご協力ください。
http://bit.ly/holdenTestingSpark
最終的な結果は、
@holdenkarau からツイートします
。
PySpark ユーザーの場合: 高速な処理を
実現するシンプルな UDF があれば、ぜひ
シェアしてください。
http://bit.ly/pySparkUDF

More Related Content

PDF
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
PDF
Marp Tutorial
PPTX
Apache Sparkの基本と最新バージョン3.2のアップデート(Open Source Conference 2021 Online/Fukuoka ...
PDF
研究効率化Tips Ver.2
PPTX
分散システムについて語らせてくれ
PDF
【論文紹介】ProtoMF: Prototype-based Matrix Factorization for Effective and Explain...
PPTX
Redisの特徴と活用方法について
PDF
機械学習で泣かないためのコード設計
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
Marp Tutorial
Apache Sparkの基本と最新バージョン3.2のアップデート(Open Source Conference 2021 Online/Fukuoka ...
研究効率化Tips Ver.2
分散システムについて語らせてくれ
【論文紹介】ProtoMF: Prototype-based Matrix Factorization for Effective and Explain...
Redisの特徴と活用方法について
機械学習で泣かないためのコード設計

What's hot (20)

PDF
Rustに触れて私のPythonはどう変わったか
PDF
アーキテクチャから理解するPostgreSQLのレプリケーション
PPTX
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
PDF
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
PDF
Surveyから始まる研究者への道 - Stand on the shoulders of giants -
PPTX
DockerコンテナでGitを使う
PDF
Rの高速化
PDF
YugabyteDBを使ってみよう(NewSQL/分散SQLデータベースよろず勉強会 #1 発表資料)
PPTX
初心者向けMongoDBのキホン!
PDF
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
PDF
Kaggle Happywhaleコンペ優勝解法でのOptuna使用事例 - 2022/12/10 Optuna Meetup #2
PPTX
大量のデータ処理や分析に使えるOSS Apache Spark入門(Open Source Conference 2021 Online/Kyoto 発表資料)
PDF
DockerとPodmanの比較
PDF
機械学習で泣かないためのコード設計 2018
PPTX
大規模データ活用向けストレージレイヤソフトのこれまでとこれから(NTTデータ テクノロジーカンファレンス 2019 講演資料、2019/09/05)
PPTX
近年のHierarchical Vision Transformer
PPTX
ポスト・ラムダアーキテクチャの切り札? Apache Hudi(NTTデータ テクノロジーカンファレンス 2020 発表資料)
PDF
Hive on Tezのベストプラクティス
PDF
40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料)
PDF
いまさら聞けない!CUDA高速化入門
Rustに触れて私のPythonはどう変わったか
アーキテクチャから理解するPostgreSQLのレプリケーション
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
Surveyから始まる研究者への道 - Stand on the shoulders of giants -
DockerコンテナでGitを使う
Rの高速化
YugabyteDBを使ってみよう(NewSQL/分散SQLデータベースよろず勉強会 #1 発表資料)
初心者向けMongoDBのキホン!
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
Kaggle Happywhaleコンペ優勝解法でのOptuna使用事例 - 2022/12/10 Optuna Meetup #2
大量のデータ処理や分析に使えるOSS Apache Spark入門(Open Source Conference 2021 Online/Kyoto 発表資料)
DockerとPodmanの比較
機械学習で泣かないためのコード設計 2018
大規模データ活用向けストレージレイヤソフトのこれまでとこれから(NTTデータ テクノロジーカンファレンス 2019 講演資料、2019/09/05)
近年のHierarchical Vision Transformer
ポスト・ラムダアーキテクチャの切り札? Apache Hudi(NTTデータ テクノロジーカンファレンス 2020 発表資料)
Hive on Tezのベストプラクティス
40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料)
いまさら聞けない!CUDA高速化入門
Ad

Viewers also liked (20)

PDF
Streaming & Scaling Spark - London Spark Meetup 2016
PDF
Getting started contributing to Apache Spark
PDF
Introducing Apache Spark's Data Frames and Dataset APIs workshop series
PDF
Beyond Shuffling and Streaming Preview - Salt Lake City Spark Meetup
PDF
Extending spark ML for custom models now with python!
PDF
Scaling with apache spark (a lesson in unintended consequences) strange loo...
PPTX
Beyond shuffling - Strata London 2016
PDF
Introduction to Spark ML Pipelines Workshop
PDF
Introduction to and Extending Spark ML
PDF
Introduction to Spark Datasets - Functional and relational together at last
PDF
Getting started with Apache Spark in Python - PyLadies Toronto 2016
PDF
Spark ML for custom models - FOSDEM HPC 2017
PDF
Improving PySpark Performance - Spark Beyond the JVM @ PyData DC 2016
PDF
Getting the best performance with PySpark - Spark Summit West 2016
PDF
A really really fast introduction to PySpark - lightning fast cluster computi...
PDF
Apache Spark Super Happy Funtimes - CHUG 2016
PDF
Apache Spark Structured Streaming for Machine Learning - StrataConf 2016
PDF
Debugging PySpark - Spark Summit East 2017
PDF
Beyond shuffling - Scala Days Berlin 2016
PDF
Debugging Apache Spark - Scala & Python super happy fun times 2017
Streaming & Scaling Spark - London Spark Meetup 2016
Getting started contributing to Apache Spark
Introducing Apache Spark's Data Frames and Dataset APIs workshop series
Beyond Shuffling and Streaming Preview - Salt Lake City Spark Meetup
Extending spark ML for custom models now with python!
Scaling with apache spark (a lesson in unintended consequences) strange loo...
Beyond shuffling - Strata London 2016
Introduction to Spark ML Pipelines Workshop
Introduction to and Extending Spark ML
Introduction to Spark Datasets - Functional and relational together at last
Getting started with Apache Spark in Python - PyLadies Toronto 2016
Spark ML for custom models - FOSDEM HPC 2017
Improving PySpark Performance - Spark Beyond the JVM @ PyData DC 2016
Getting the best performance with PySpark - Spark Summit West 2016
A really really fast introduction to PySpark - lightning fast cluster computi...
Apache Spark Super Happy Funtimes - CHUG 2016
Apache Spark Structured Streaming for Machine Learning - StrataConf 2016
Debugging PySpark - Spark Summit East 2017
Beyond shuffling - Scala Days Berlin 2016
Debugging Apache Spark - Scala & Python super happy fun times 2017
Ad

Similar to PySparkによるジョブを、より速く、よりスケーラブルに実行するための最善の方法 ※講演は翻訳資料にて行います。 - Getting the Best Performance with PySpark - JPN Datapalooza Tokyo (20)

PPTX
2015 03-12 道玄坂LT祭り第2回 Spark DataFrame Introduction
PDF
Taming Distributed/Parallel Query Execution Engine of Apache Spark
PPTX
SQL Server 使いのための Azure Synapse Analytics - Spark 入門
PDF
hscj2019_ishizaki_public
PDF
Spark Analytics - スケーラブルな分散処理
PDF
Yifeng spark-final-public
PPTX
Pythonで入門するApache Spark at PyCon2016
PDF
Apache spark 2.3 and beyond
PPTX
JP version - Beyond Shuffling - Apache Spark のスケールアップのためのヒントとコツ
PPTX
大量のデータ処理や分析に使えるOSS Apache Sparkのご紹介(Open Source Conference 2020 Online/Kyoto ...
PPTX
大量のデータ処理や分析に使えるOSS Apache Spark入門 - Open Source Conference2020 Online/Fukuoka...
PPTX
Pysparkで始めるデータ分析
PPTX
Apache Spark チュートリアル
PDF
Sparkのクエリ処理系と周辺の話題
PPTX
SparkとJupyterNotebookを使った分析処理 [Html5 conference]
PPTX
Apache Sparkを使った感情極性分析
PDF
Rユーザのためのspark入門
PDF
Spark徹底入門 #cwt2015
PDF
DAIS2024参加報告 ~Spark中心にしらべてみた~ (JEDAI DAIS Recap 講演資料)
PDF
Apache Spark超入門 (Hadoop / Spark Conference Japan 2016 講演資料)
2015 03-12 道玄坂LT祭り第2回 Spark DataFrame Introduction
Taming Distributed/Parallel Query Execution Engine of Apache Spark
SQL Server 使いのための Azure Synapse Analytics - Spark 入門
hscj2019_ishizaki_public
Spark Analytics - スケーラブルな分散処理
Yifeng spark-final-public
Pythonで入門するApache Spark at PyCon2016
Apache spark 2.3 and beyond
JP version - Beyond Shuffling - Apache Spark のスケールアップのためのヒントとコツ
大量のデータ処理や分析に使えるOSS Apache Sparkのご紹介(Open Source Conference 2020 Online/Kyoto ...
大量のデータ処理や分析に使えるOSS Apache Spark入門 - Open Source Conference2020 Online/Fukuoka...
Pysparkで始めるデータ分析
Apache Spark チュートリアル
Sparkのクエリ処理系と周辺の話題
SparkとJupyterNotebookを使った分析処理 [Html5 conference]
Apache Sparkを使った感情極性分析
Rユーザのためのspark入門
Spark徹底入門 #cwt2015
DAIS2024参加報告 ~Spark中心にしらべてみた~ (JEDAI DAIS Recap 講演資料)
Apache Spark超入門 (Hadoop / Spark Conference Japan 2016 講演資料)

Recently uploaded (9)

PDF
口腔内スキャナー市場:世界の産業現状、競合分析、シェア、規模、動向2025-2031年の予測
PDF
【QYResearch】人形ロボット産業の市場構造と今後の発展方向に関する分析レポート
PDF
商用ウェブカメラ市場:世界の産業現状、競合分析、シェア、規模、動向2025-2031年の予測
PDF
液体クラトム抽出物供給側分析:世界の生産能力・販売量・平均価格動向(2025-2031)
PDF
XCMSを用いた質量分析データ処理_BioCAsia2021_yamamoto.pdf
PDF
グローバルロープウェイ用スチールワイヤーロープ市場2025:主要企業のシェア、売上動向、競争戦略
PDF
限外ろ過膜調査レポート:市場規模、シェア、産業分析データ、最新動向2025-2031 YH Research
PDF
世界半導体用酸化ハフニウム市場のサプライチェーン解析:上流、下流、収益モデル分析2025-2031
PDF
Qlik TECH TALK セミナー:What's New In Qlik ~ 2025年7月リリース最新機能のご紹介
口腔内スキャナー市場:世界の産業現状、競合分析、シェア、規模、動向2025-2031年の予測
【QYResearch】人形ロボット産業の市場構造と今後の発展方向に関する分析レポート
商用ウェブカメラ市場:世界の産業現状、競合分析、シェア、規模、動向2025-2031年の予測
液体クラトム抽出物供給側分析:世界の生産能力・販売量・平均価格動向(2025-2031)
XCMSを用いた質量分析データ処理_BioCAsia2021_yamamoto.pdf
グローバルロープウェイ用スチールワイヤーロープ市場2025:主要企業のシェア、売上動向、競争戦略
限外ろ過膜調査レポート:市場規模、シェア、産業分析データ、最新動向2025-2031 YH Research
世界半導体用酸化ハフニウム市場のサプライチェーン解析:上流、下流、収益モデル分析2025-2031
Qlik TECH TALK セミナー:What's New In Qlik ~ 2025年7月リリース最新機能のご紹介

PySparkによるジョブを、より速く、よりスケーラブルに実行するための最善の方法 ※講演は翻訳資料にて行います。 - Getting the Best Performance with PySpark - JPN Datapalooza Tokyo