問題タブ [notserializableexception]
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.
scala - spark scalaブロードキャスト変数が機能しない:タスクがシリアル化されていません
次のようなデータフレームが 1 つあります。
次の配列と交差する行を選択したい:
そして、このudfを試したとき、
悪名高いエラーが発生しました: Task not Serializable
奇妙なことに、これは以前はうまく機能していました。何が変わったのかわかりません..本当に助けていただければ幸いです。
編集: 実際には、上記のコードだけで通常は問題なく動作するはずです。さらに、ここではブロードキャスト変数は必要ありません。「値の 1 つがシリアライズ可能でない Scala クラス内にある」と言う人もいましたが、これが問題であることには同意しますが、解決方法がわかりません..
背景情報は次のとおりです。コーパスでトピック分析を実行するために、潜在的なディリクレ割り当て(LDA)を使用しています。
dfVectorizer は、元のデータセットをベクトル化したバージョンです。この LDA モデルを使用して、次のデータセットを生成します。
したがって、最終的なデータ フレーム「topicDF」は次のようになります。
ただし、次のような単純なフィルターを実行しようとしている場合:
エラーが発生し"task not Serializable"
ます。エラーメッセージでは、これが「原因」であることを非常に明確に示しています
java.io.NotSerializableException: org.apache.spark.mllib.clustering.DistributedLDAModel.
エラー メッセージは次のようになります。
どうもありがとう!
scala - scala hadoop のオブジェクトでの NotSerializableException
https://github.com/anathan90/SparkSMOTE (scala のライブラリ) を使用して、データ内のマイノリティ クラスのオーバーサンプリングを調整しています。
シリアル化に問題があり、その理由がわかりません。
このエラーについて何か読みましたが、理解できませんでした
もう 1 つは、scala hadoop で smote スクリプトを実行していて、smote という他のスクリプト内でこのオブジェクトを呼び出していることです。
エラーは次のとおりです。
java - カスタム DataPackage での Java NotSerializableException
私は現在、将来のプロジェクトのための単純なサーバー - クライアント構造に取り組んでいます。ローカル/パブリックIP、タイムスタンプなどのカスタムヘッダー情報を使用して独自のデータパッケージを作成するのが最善であると判断しました。以下は、私が思いついたクラスです:
(ゲッターとセッターを削除しました)
クラスで何でも送信できるように、オブジェクトを使用することにしました。コンパイルはうまくいきますが、クラスにパッケージ化された単純な文字列を送信しようとすると、NotSerializableException が発生します。ストリームに変換できない属性またはフィールドはありますか、またはクラスをジェネリックに変更する必要がありますか? 私はストリームとネットワーキングの専門家ではないので、私が得ることができるあらゆる助けと説明に感謝しています.
注: 私は英語のネイティブ スピーカーではありませんが、つづりや文法の問題はご容赦ください。
java - インターフェイス化された列挙型はソケットを介してどのように送信されますか?
インターフェイス (Face) を実装する 2 つの列挙型 (Enum1 と Enum2) があります。
両方の列挙型にもフィールドがあります (Image img)。
インターフェイスの実装方法は、列挙型ごとに異なります。
次に、Face であるペイロードと呼ばれるフィールドを持つシリアル化可能なクラス (メッセージ) があります。
ペイロードの値が Enum1 であるソケットを介してメッセージを送信すると、すべて正常に動作します。しかし、Enum2 で同じことを行うと、その Enum のイメージ フィールドに対してシリアル化できない例外が発生します。
このすべてに関連するコードがたくさんあり、間違いがその中に隠されている可能性があることはわかっていますが、それは明らかな例外なので、私の質問は次のとおりです。実際に何を送信し、何を受信し、受信したペイロードを何にキャストできますか?