タグ付けされた質問 「apache-spark」

Apache SparkはScalaで記述されたオープンソースの分散データ処理エンジンであり、統一されたAPIと分散データセットをユーザーに提供します。Apache Sparkの使用例は、多くの場合、機械/深層学習、グラフ処理に関連しています。


12
java.io.IOException:Hadoopバイナリで実行可能なnull \ bin \ winutils.exeが見つかりませんでした。Windows 7でEclipseをスパーク
インストールされている(Maven sparkプロジェクト)sparkで簡単なジョブを実行できませんScala IDEWindows 7 Sparkコアの依存関係が追加されました。 val conf = new SparkConf().setAppName("DemoDF").setMaster("local") val sc = new SparkContext(conf) val logData = sc.textFile("File.txt") logData.count() エラー: 16/02/26 18:29:33 INFO SparkContext: Created broadcast 0 from textFile at FrameDemo.scala:13 16/02/26 18:29:34 ERROR Shell: Failed to locate the winutils binary in the hadoop binary path java.io.IOException: Could not …


18
ドライバーのPythonバージョンをSparkに設定するにはどうすればよいですか?
私はspark1.4.0-rc2を使用しているので、sparkでpython3を使用できます。export PYSPARK_PYTHON=python3.bashrcファイルに追加すると、Python 3を使用してSparkをインタラクティブに実行できます。ただし、スタンドアロンプ​​ログラムをローカルモードで実行すると、エラーが発生します。 Exception: Python in worker has different version 3.4 than that in driver 2.7, PySpark cannot run with different minor versions ドライバーのPythonのバージョンを指定するにはどうすればよいですか?設定export PYSPARK_DRIVER_PYTHON=python3が機能しませんでした。

12
Macのspark-shellSparkContextの初期化中にエラーが発生しました
Mac OS Yosemite10.10.5でspark1.6.0(spark-1.6.0-bin-hadoop2.4)を起動しようとしました。 "./bin/spark-shell". 以下のエラーがあります。また、異なるバージョンのSparkをインストールしようとしましたが、すべて同じエラーが発生します。Sparkを実行するのはこれが2回目です。以前の実行は正常に機能します。 log4j:WARN No appenders could be found for logger (org.apache.hadoop.metrics2.lib.MutableMetricsFactory). log4j:WARN Please initialize the log4j system properly. log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info. Using Spark's repl log4j profile: org/apache/spark/log4j-defaults-repl.properties To adjust logging level use sc.setLogLevel("INFO") Welcome to ____ __ / __/__ ___ _____/ /__ _\ \/ …


10
ApacheSparkのリストとしてデータフレームの列値を抽出します
データフレームの文字列列をリストに変換したい。DataframeAPIからわかるのはRDDなので、まずRDDに変換してtoArrayから、RDDに関数を適用してみました。この場合、長さとSQLは問題なく機能します。ただし、RDDから取得した結果には、このようなすべての要素を角かっこで囲んでいます[A00001]。列をリストに変換する適切な方法や、角かっこを削除する方法があるかどうか疑問に思いました。 任意の提案をいただければ幸いです。ありがとうございました!

8
Sparkジョブがorg.apache.spark.shuffle.MetadataFetchFailedExceptionで失敗するのはなぜですか:投機モードでシャッフル0の出力場所がありませんか?
投機モードでSparkジョブを実行しています。私は約500のタスクと1GBgzの約500のファイルを圧縮しています。私は各ジョブに、1〜2のタスクで、その後数十回再実行される添付エラーを取得し続けます(ジョブが完了しないようにします)。 org.apache.spark.shuffle.MetadataFetchFailedException:シャッフル0の出力場所がありません 問題の意味とそれを克服する方法について何か考えはありますか? org.apache.spark.shuffle.MetadataFetchFailedException: Missing an output location for shuffle 0 at org.apache.spark.MapOutputTracker$$anonfun$org$apache$spark$MapOutputTracker$$convertMapStatuses$1.apply(MapOutputTracker.scala:384) at org.apache.spark.MapOutputTracker$$anonfun$org$apache$spark$MapOutputTracker$$convertMapStatuses$1.apply(MapOutputTracker.scala:381) at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244) at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244) at scala.collection.IndexedSeqOptimized$class.foreach(IndexedSeqOptimized.scala:33) at scala.collection.mutable.ArrayOps$ofRef.foreach(ArrayOps.scala:108) at scala.collection.TraversableLike$class.map(TraversableLike.scala:244) at scala.collection.mutable.ArrayOps$ofRef.map(ArrayOps.scala:108) at org.apache.spark.MapOutputTracker$.org$apache$spark$MapOutputTracker$$convertMapStatuses(MapOutputTracker.scala:380) at org.apache.spark.MapOutputTracker.getServerStatuses(MapOutputTracker.scala:176) at org.apache.spark.shuffle.hash.BlockStoreShuffleFetcher$.fetch(BlockStoreShuffleFetcher.scala:42) at org.apache.spark.shuffle.hash.HashShuffleReader.read(HashShuffleReader.scala:40) at org.apache.spark.rdd.ShuffledRDD.compute(ShuffledRDD.scala:92) at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:263) at org.apache.spark.rdd.RDD.iterator(RDD.scala:230) at org.apache.spark.rdd.MappedRDD.compute(MappedRDD.scala:31) at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:263) at org.apache.spark.rdd.RDD.iterator(RDD.scala:230) at org.apache.spark.rdd.FlatMappedRDD.compute(FlatMappedRDD.scala:33) at …


2
Sparkエグゼキュータ番号、コア、エグゼキュータメモリを調整する方法は?
上記のパラメータの調整はどこから始めますか。エグゼキュータメモリから始めてエグゼキュータの数を取得しますか、それともコアから始めてエグゼキュータ番号を取得しますか。リンクをたどった。しかし、高レベルのアイデアを得ましたが、どのように、どこから始めて最終的な結論に到達するかはまだわかりません。

8
-Dパラメーターまたは環境変数をSparkジョブに渡す方法は?
dev / prod環境でSparkジョブのTypesafe構成を変更したい。これを達成する最も簡単な方法は-Dconfig.resource=ENVNAME、仕事に転職することだと私には思えます。その後、Typesafe構成ライブラリが私のために仕事をします。 そのオプションを直接ジョブに渡す方法はありますか?または、実行時にジョブ構成を変更するためのより良い方法がありますか? 編集: spark-submitコマンドに--conf "spark.executor.extraJavaOptions=-Dconfig.resource=dev"オプションを追加しても何も起こりません。 spark-submitコマンドError: Unrecognized option '-Dconfig.resource=dev'.に渡し-Dconfig.resource=devたときに取得しました。

8
pysparkデータフレームの列を削除する方法
>>> a DataFrame[id: bigint, julian_date: string, user_id: bigint] >>> b DataFrame[id: bigint, quan_created_money: decimal(10,0), quan_created_cnt: bigint] >>> a.join(b, a.id==b.id, 'outer') DataFrame[id: bigint, julian_date: string, user_id: bigint, id: bigint, quan_created_money: decimal(10,0), quan_created_cnt: bigint] 2つid: bigintあり、1つ削除したい。どのようにできるのか?

1
バッチ処理でSpark / FlinkよりもApacheBeamの利点は何ですか?
Apache Beamは、ApacheSparkやFlinkなどの複数のランナーバックエンドをサポートしています。私はSpark / Flinkに精通しており、バッチ処理のBeamの長所/短所を確認しようとしています。 Beamの単語数の例を見ると、ネイティブのSpark / Flinkの同等のものと非常に似ているように感じますが、構文が少し冗長になっている可能性があります。 私は現在、そのようなタスクにSpark / FlinkよりもBeamを選択することに大きなメリットは見られません。私がこれまでに行うことができる唯一の観察: 長所:さまざまな実行バックエンドの抽象化。 短所:この抽象化には、Spark / Flinkで実行される内容を正確に制御できないという代償が伴います。 ビームモデルの他の長所/短所を強調するより良い例はありますか?制御の喪失がパフォーマンスにどのように影響するかについての情報はありますか? この質問で部分的にカバーされ、この記事で要約されているストリーミングの側面の違いを求めていないことに注意してください(Spark 1.Xのために古くなっています)。

3
HashPartitionerはどのように機能しますか?
のドキュメントを読みましたHashPartitioner。残念ながら、API呼び出し以外は何も説明されていませんでした。私はHashPartitioner、キーのハッシュに基づいて分散セットを分割することを前提としています。たとえば、私のデータが次のような場合 (1,1), (1,2), (1,3), (2,1), (2,2), (2,3) したがって、パーティショナーはこれを異なるパーティションに配置し、同じキーが同じパーティションに分類されます。しかし、コンストラクター引数の意味がわかりません new HashPartitoner(numPartitions) //What does numPartitions do? 上記のデータセットの場合、私が行った場合、結果はどのように異なりますか new HashPartitoner(1) new HashPartitoner(2) new HashPartitoner(10) では、HashPartitioner実際にはどのように機能しますか?

1
どのような状況で、Apache Sparkの代わりにDaskを使用できますか?[閉まっている]
クローズ。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 4年前に閉鎖されました。 この質問を改善する 私は現在、データ分析にPandasとSparkを使用しています。Daskが並列化されたNumPy配列とPandasDataFrameを提供していることがわかりました。 Pandasは、Pythonでデータ分析を行うのに簡単で直感的です。しかし、システムメモリが限られているため、パンダで複数の大きなデータフレームを処理するのは困難です。 簡単な答え: Apache Sparkは、分散コンピューティング、SQLクエリ、機械学習などを組み合わせた包括的なフレームワークであり、JVMで実行され、通常、Hadoopなどの他のビッグデータフレームワークと共同でデプロイされます。...一般的に、DaskはSparkよりも小型で軽量です。 http://dask.pydata.org/en/latest/spark.htmlから以下の詳細を知ることができます Daskは軽量です Daskは通常、単一のマシンで使用されますが、分散クラスターでも適切に実行されます。 Daskは、並列配列、データフレーム、機械学習、カスタムアルゴリズムを提供します Daskはそれ自体がPythonライブラリであるため、Pythonユーザーにとって利点があります。そのため、問題が発生した場合のシリアル化とデバッグがよりスムーズに行われます。 Daskは、ユーザーがより複雑な並列アルゴリズムを表現できるように、高度な理解を放棄します。 Daskは軽量で、既存のコードやハードウェアに簡単に統合できます。 すべてを実行する単一のプロジェクトが必要で、すでにビッグデータハードウェアを使用している場合は、Sparkが安全です。 Sparkは通常、中小規模のクラスターで使用されますが、単一のマシンでも正常に動作します。 以下のリンクからDaskについて詳しく理解しています https://www.continuum.io/blog/developer-blog/high-performance-hadoop-anaconda-and-dask-your-cluster Pandas、NumPy、またはPythonで他の計算を使用しているときに、単一のマシンでメモリの問題、ストレージの制限、またはCPUの境界に遭遇した場合、Daskは単一のマシンのすべてのコアでスケールアップまたはスケールアウトするのに役立ちますクラスタ全体のすべてのコアとメモリで。 Daskは、単一のマシンでうまく機能し、ラップトップのすべてのコアを利用して、メモリよりも大きいデータを処理します 数百のノードを持つクラスターで弾力的かつ弾力的にスケールアップします。 Daskは、Hadoop分散ファイルシステム(HDFS)やAmazon S3など、さまざまな形式やストレージシステムのデータを使用してPythonからネイティブに動作します。AnacondaとDaskは、ClouderaCDHやHortonworksHDPなどの既存のエンタープライズHadoopディストリビューションと連携できます。 http://dask.pydata.org/en/latest/dataframe-overview.html 制限事項 Dask.DataFrameは、Pandasインターフェース全体を実装しているわけではありません。これを期待しているユーザーはがっかりするでしょう。特に、dask.dataframeには次の制限があります。 ソートされていない列から新しいインデックスを設定するにはコストがかかります groupby-applyやソートされていない列での結合などの多くの操作では、インデックスを設定する必要がありますが、前述のようにコストがかかります PandasAPIは非常に大きいです。Dask.dataframeは、多くのパンダ機能やNDFrameのようなよりエキゾチックなデータ構造の実装を試みません。 Dask開発者に感謝します。非常に有望な技術のようです。 全体として、Daskはsparkよりも使いやすいことがわかります。DaskはPandasと同じくらい柔軟性があり、より多くのCPUの並列処理で計算する能力があります。 Daskに関する上記の事実をすべて理解しています。 では、Daskで処理できるデータの量(テラバイト単位)はおおよそどれくらいですか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.