タグ

sparkに関するHHRのブックマーク (12)

  • pyspark dataframe filter or include based on list

    HHR
    HHR 2023/04/12
    Pythonのin構文では無く、pysparkのisinを使おう
  • Spark Option: inferSchema vs header = true

    HHR
    HHR 2023/04/12
    csv inferSchema
  • PySparkデータ操作 - Qiita

    記事は、PySparkの特徴とデータ操作をまとめた記事です。 PySparkについて PySpark(Spark)の特徴 ファイルの入出力 入力:単一ファイルでも可 出力:出力ファイル名は付与が不可(フォルダ名のみ指定可能)。指定したフォルダの直下に複数ファイルで出力。 遅延評価 ファイル出力時 or 結果出力時に処理が実行 通常は実行計画のみが計算 Partitioning と Bucketing PySparkの操作において重要なApache Hiveの概念について。 Partitioning: ファイルの出力先をフォルダごとに分けること。読み込むファイルの範囲を制限できる。 Bucketing: ファイル内にて、ハッシュ関数によりデータを再分割すること。効率的に読み込むことができる。 PartitioningとBucketingの詳細についてはこちら(英語)をご覧ください。 計算リ

    PySparkデータ操作 - Qiita
    HHR
    HHR 2022/04/04
    *でワイルドカード読み込み。リストを渡して複数読み込み。unix_timestamp to_timestamp date_format etc...
  • Adaptive Query Execution : Spark SQLの実行スピードの高速化 - Qiita

    How to Speed up SQL Queries with Adaptive Query Executionの翻訳です。 この記事は、Databricks Apache Sparkエンジニアリングチーム、Wenchen Fan、Herman van Hovell、MaryAnn Xueと、Intelのエンジニアリングチーム、Ke Jia、Haifeng Chen、Carson Wangの共著です。 以下でカバーされているソリューションのデモ用AQEノートブック 数年をかけて、高品質なクエリー実行計画を生成するために、Spark SQLのクエリーオプティマイザとプランナーを改善するための弛まない努力がはらわれてきました。その中でも最大のものが、Sparkが適切な計画を選択できるように、様々な統計データ(行数、固有な値の数、NULL値、最大値、最小値など)を収集、活用するコストベースの最

    Adaptive Query Execution : Spark SQLの実行スピードの高速化 - Qiita
    HHR
    HHR 2022/03/23
    batchのみでstreamingでは使えない
  • How does Spark partition(ing) work on files in HDFS?

    HHR
    HHR 2021/06/02
    基本、HDFSのブロック数=パーティション数だが、色々複雑。
  • Spark and YARN - Qiita

    SparkとYARNについて書きます。テーマ的にインフラストラクチャについての話が多くなると思います。 SparkとHadoopの関係性 SparkはHadoopクラスタへの依存はしていない。(ただし、ややこしいのだがHDFSやYARNのクライアントライブラリへの依存はある)なのでHadoopなしでも動かすことができる。しかしそれでもHadoopと一緒に動作させることが多いのは以下の理由による。 クラスタマネージャとしてのYARN Sparkはアプリケーション(厳密にはSparkアプリケーション)ごとに下記のようなクラスタが構築される。Driver Programと呼ばれる、SparkContextオブジェクトを持ち、アプリケーションコードの主要部分を実行するアプリケーションのマスタコンポーネントと、RDDに対するオペレーションを実行するExecutor群。そして、Driver Progr

    Spark and YARN - Qiita
    HHR
    HHR 2021/05/25
    Dynamic Resource Allocation, External Shuffle Service, spark.shuffle.service.enabled
  • Sparkの性能向上のためのパラメータチューニングとバッチ処理向けの推奨構成

    はじめに 前回は、Sparkで処理を実行したときのボトルネック箇所と、その対策について解説しました。今回は、「検証のシナリオではどのようなクラスタ構成が良いか」検証した結果を解説します。 Spark2.0のパラメータチューニング 最適なクラスタ構成を検討するにあたり、今回はSparkの(設定ファイルspark-defaults.confに記述できる)パラメータのうちいくつかをチューニングします。条件は次の通りです。 Sparkのバージョンは2.0 処理対象のデータは365日分の消費電力量データ Sparkのシャッフルファイル出力先ディスクはHDFSと共用(前回解説したもの) パーティション数のチューニング Sparkはデータを「パーティション」という単位で並列処理します。処理の流れは以下の通りです(図1)。今回はシャッフル処理後の適切なパーティション数を検証します。 (1)データソースか

    Sparkの性能向上のためのパラメータチューニングとバッチ処理向けの推奨構成
    HHR
    HHR 2021/03/23
    “データソースがHDFSの場合、Sparkはブロック単位でHDFS上のファイル群を読み出し、各ブロックをパーティションとして扱います。Sparkのパーティション数はHDFSから読み出したBlock数と同じです。 ”
  • Python: PySpark でサードパーティ製のライブラリを使って分散処理する - CUBE SUGAR CONTAINER

    今回は PySpark でサードパーティ製のライブラリを使って分散処理をする方法について。 サンプルとして、次のような状況を試した。 Apache Spark + Hadoop YARN で構築した分散処理用のクラスタを用いる サードパーティ製のライブラリとして scikit-learn を想定する scikit-learn の学習済みモデルを、あらかじめローカルで用意しておく Iris データセットと学習済みモデルを使った推論を PySpark で分散処理する 使った環境は次の通り。 $ cat /etc/redhat-release CentOS Linux release 7.6.1810 (Core) $ uname -r 3.10.0-957.21.3.el7.x86_64 $ python3 -V Python 3.6.8 $ pyspark --version Welcome

    Python: PySpark でサードパーティ製のライブラリを使って分散処理する - CUBE SUGAR CONTAINER
    HHR
    HHR 2021/02/25
    conda仮想環境をsparkで使う。executorで任意の関数呼び出しが参考になる。モデル作成は済ませており推論をsparkで分散処理する例あり。モデルはbroadcastでばら撒く。パーティション単位で処理するときはmapPartitions()
  • Apache Sparkの概要 - Qiita

    はじめに Apache Sparkはデータの高速な処理能力や、汎用性の高さから、昨今ではクラウドのPaaS型のデータ処理エンジンに搭載されるようになってきた。たとえばAzureのサービスでは従来からAzure HDInsightにPure 100% OSSのSparkが以前から搭載されている。Azure DatabricksはSparkのクラスター管理を大幅にクラウド側に寄せ、Notebookやジョブのインターフェース等を提供する形態も出てきて多くのユーザーに利用されているようである。また、2019年のMicrosoft Igniteで発表されたAzure Synapse Analyticsは従来のAzure SQL Data Warehouseに、Sparkエンジンを搭載してオンデマンドクエリ機能を提供するとの事。さらには、Azure Data Factory内にMapping Data

    Apache Sparkの概要 - Qiita
    HHR
    HHR 2021/02/25
    大作。図の引用が多くて見やすい。用語集としても使えそう。
  • PySparkで任意のライブラリを気軽に入れたい - iMind Developers Blog

    HHR
    HHR 2021/02/25
    conda仮想環境をsparkで使う。clouderaブログに載る程度にはデファクトなやり方。現状ならconda-packでarchive作成の方が良い。deploy-modeがclientとclusterで設定が変わると有るがv2.4.5ではspark.pyspark.pythonだけでイケた
  • Sparkの内部処理を理解する - Qiita

    この記事はOpt Technologies Advent Calendar 2017の17日目です。 概要 11日の記事(Spark on EMRの基礎をおさらいする)にてSpark on EMRの構成はおさらいしましたが、トラブルシュートするためにはSparkの内部処理についても理解しておく必要がある、ということでまとめます。また記事は上記記事を読んでいる方向けの内容となります。 (記事は社内勉強会にて話した内容に修正を加えたものになります。) Sparkの処理の内部構造 概要 Sparkはコードでそれと意識していなくても分散処理が出来るのが強みですが、内部的には割とややこしいことをしています。具体的には、「どのロジック・オブジェクトがどこで実行されているか。またそのデータはどこから渡ってきているか」です。 RDD Sparkでは扱うデータをRDDと呼ばれるコレクションのような入れ物

    Sparkの内部処理を理解する - Qiita
    HHR
    HHR 2021/02/25
    Driverはcluster-modeの場合はApplicationMasterになる。client-modeの場合はローカルになり、ApplicationMasterはコンテナ要求などのみを担うっぽい。Executor=yarnコンテナ
  • Pythonで大量データ処理!�PySparkを用いたデータ処理と分析のきほん

    PyConJP2017の資料 Python Spark PySpark PyConJP 2017 Apache Spark

    Pythonで大量データ処理!�PySparkを用いたデータ処理と分析のきほん
    HHR
    HHR 2019/12/02
  • 1