問題タブ [spark-dataframe]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
807 参照

apache-spark - Apache ignite コンテキストの sharedRDD からデータを取得しようとしています

Apache ignite を spark と統合しようとしていますが、Apache ignite は初めてです。分散キャッシュにデータを保存して取得したい。

Spark でファイルをロードし、Apache Ignite の sharedRDD.savePairs(key,value) でキャッシュに保存しようとして、データフレームを作成しました。キーは文字列型で、値は Spark データフレーム型です。次に、保存されたデータを取得して印刷したいと思います。実際にデータフレーム型で保存されているかどうかさえわかりません。

0 投票する
1 に答える
8791 参照

python - PySparkのDataFrame内で合計で注文するにはどうすればよいですか?

同様に:

私が試してみました:

しかし、これはエラーになります:

Py4JJavaError: o501.sort の呼び出し中にエラーが発生しました。: org.apache.spark.sql.AnalysisException: 指定された入力列 order_item_order_id, SUM(order_item_subtotal#429) で「合計」を解決できません。

私も試しました:

しかし、私は同じエラーが発生します:

Py4JJavaError: o512.sort の呼び出し中にエラーが発生しました。: org.apache.spark.sql.AnalysisException: 指定された入力列 order_item_order_id、SUM(order_item_subtotal#429) の 'SUM(order_item_subtotal)' を解決できません。

実行すると正しい結果が得られます:

しかし、これは、Spark が合計列名に追加する番号、つまり#429を見た後、事後的に行われました。

どの番号が追加されるかを知らずに、アプリオリに同じ結果を得る方法はありますか?

0 投票する
1 に答える
3453 参照

python - Spark 1.5.2 で HiveContext を使用して作成された PySpark DataFrame を取得するにはどうすればよいですか?

更新: 私のエラーはおそらく、Spark や Hive のインストール方法が原因のようです。ウィンドウ関数の操作は、Databricks (ホストされている) ノートブックでは非常に簡単に見えます。これをローカルで設定する方法を理解する必要があります。

Window 関数を使用する必要がある Spark DataFrame があります。*ここの手順に従ってみましたが、いくつかの問題が発生しました。

環境のセットアップ:

データの設定:

そのjsonをDataFrameに変換する関数:

データフレームを取得し、中身を見てみましょう:

それは私にこれを示しています:

そして、ここで私が何をしているのかわからなくなり、すべてがうまくいかなくなり始めます。

それは私にこのエラーを与えます:

Py4JJavaError: o59.select の呼び出し中にエラーが発生しました。: org.apache.spark.sql.AnalysisException: ウィンドウ関数 'lead' を解決できませんでした。現在、ウィンドウ関数を使用するには HiveContext が必要であることに注意してください。

HiveContext が必要なようですね。HiveContext を使用して DataFrame を作成する必要がありますか? 次に、HiveContext を使用して明示的に DataFrame を作成してみましょう。

しかし、それは私にこのエラーを与えます:

TypeError: 'JavaPackage' オブジェクトは呼び出し可能ではありません

では、ウィンドウ関数を使用するにはどうすればよいでしょうか。HiveContext を使用して DataFrame を作成する必要がありますか? もしそうなら、どうすればいいですか?誰かが私が間違っていることを教えてもらえますか?

*データにギャップがあるかどうかを知る必要があります。「日付」列があり、日付順に並べられた各行について、次の行にあるものを知りたいのですが、欠落している日やデータが悪い場合は、その行で最後の日のデータを使用したいと考えています。それを行うためのより良い方法を知っている場合は、お知らせください。しかし、これらのウィンドウ関数を機能させる方法を知りたいです。

0 投票する
2 に答える
867 参照

apache-spark - 1 回の実行で複数のクエリを取得する方法

たとえば、以下のようなデータフレームがあります。

私が2つのチェックをしなければならない場合。以下のようにデータを 2 回調べます。

通常のコードでは、2 つのカウント変数を持ち、True でインクリメントします。Sparkデータフレームをどのように使用しますか? 誰かが適切なドキュメントにもリンクできるかどうかに感謝します。python または scala を見てうれしいです。