問題タブ [apache-storm]
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.
hadoop - ツール同期ログ ファイル配布システム
複数の Linux ノードで分散ジョブを実行しています。各ノードは、データを 1 つのファイルに記録します。ssh を使用して接続し、各ログを個別に表示するのに多くの時間を費やしています。
複数のシステムからファイルを統合するツールはありますか? または複数のログを一度に表示する別の方法はありますか?
php - リアルタイム地理データ ストリームの分析
次の位置ストリームがあり、Web インターフェイス経由でアクセスできます。
車両が現在どこにいるかという情報(緯度・経度)を配信します。10hzのレートでリフレッシュします。
XML ファイルで定義されているジオフェンスがあります。たとえば、次の測定値を持つ四角形です。
1.) このデータ ストリームを分析して、車両がこのジオフェンスの内側にあるか外側にあるかをオンラインで検出するための適切な方法/アプリケーションはありますか?
最後に、この情報 (ジオフェンス内の車両の内外) をデータベースに保存して、他のアプリケーションで処理できるようにする必要があります。
Storm リアルタイム計算システムについて読みました: http://storm-project.net/
このツールでそのようなジオフェンシング機能を実装することは可能ですか? それとも、この仕事を行うために C++ ソフトウェアを作成する必要がありますか?
これまでのところ、PHP や JS などの Web テクノロジの経験しかありません。どうすればこの問題を解決できますか? このデータ ストリームをオンラインで効率的に分析するにはどうすればよいですか?
さらに、複雑なイベントについてこのストリームを分析できればいいと思います。
oracle - Oracle から HDFS にデータを移動し、処理して HDFS から Teradata に移動します。
私の要件は
- Oracle から HDFS にデータを移動する
- HDFS でデータを処理する
- 処理されたデータを Teradata に移動します。
また、この処理全体を 15 分ごとに実行する必要があります。ソース データの量は 50 GB 近くになる可能性があり、処理されるデータも同じである可能性があります。
インターネットでいろいろ調べた結果、たどり着いたのが
- Oracle から HDFS にデータを移動するための ORAOOP (シェル スクリプト内のコードを用意し、必要な間隔で実行するようにスケジュールします)。
- カスタム MapReduce または Hive または PIG のいずれかによって大規模な処理を行います。
- SQOOP - HDFS から Teradata にデータを移動するための Teradata コネクタ (ここでも、コードを含むシェル スクリプトを用意してスケジュールします)。
これはそもそも正しいオプションであり、必要な期間に実行可能ですか (これは毎日のバッチなどではないことに注意してください)。
私が見つけた他のオプションは次のとおりです
- STORM (リアルタイム データ処理用)。しかし、箱から出してすぐにオラクルのスパウトまたはテラデータのボルトを見つけることができません。
- Talend や Pentaho などのオープン ソース ETL ツール。
これらのオプションやその他の可能性について、ご意見をお聞かせください。
apache-storm - ストーム クラスター内の処理チェーン (ボルトとスパウト) を表示する視覚化ツールはありますか?
環境:
ローカルで生成されたストム クラスターで実行される統合テストの 1 つに null ポインターが表示されます。ログ レベルを上げて、実際に何が起こっているのか把握できませんでした。どんな助けでも大歓迎です。
java - タスク フックは JSON シリアル化できないようです
タスクフックを追加して微調整した動作中の Storm トポロジがありましたが、構成が json シリアル化できないというエラーが表示されます。このエラーは、トポロジが LocalCluster に送信されるときに発生します。
私の問題は、タスクフックを適切に構成していないことだと思います。トポロジ ドライバ クラスでは、トポロジを送信する直前に次のようにします。
config のタイプは backtype.storm.Config で、RubeGoldbergTaskHook は BaseTaskHook を拡張します。
config.TOPOLOGY_AUTO_TASK_HOOKS プロパティを正しく設定していませんか、それとも RubeGoldbergTaskHook クラスを JSON シリアライズ可能に変更する必要がありますか?
java - 単純なアグリゲーション ストーム トポロジでのグループ化
次のことを行うトポロジを作成しようとしています。
- Twitter フィードをサブスクライブするスパウト (キーワードに基づく)
- コレクション内の多数のツイート (N とします) を集約し、それらをプリンター ボルトに送信する集約ボルト
- コレクションを一度にコンソールに出力する単純なボルト。
実際には、コレクションに対してさらに処理を行いたいと考えています。
ローカルでテストしたところ、動作しているようです。ただし、ボルトにグループを正しく設定したかどうか、および実際のストーム クラスターに展開したときにこれが正しく機能するかどうかはわかりません。誰かがこのトポロジのレビューを手伝ってくれて、エラー、変更、または改善を提案してくれれば幸いです。
ありがとう。
これが私のトポロジの外観です。
凝集ボルト
プリンターボルト
push - プッシュ式ストームスパウト
私は Storm の初心者であり、CEP の要件に合わせてその機能を調査してきました。私がつまずいたさまざまな例は、メッセージブローカー、データベースからのポーリングサービスとしてスパウトを実装しています。プッシュ ベースのスパウト、つまりスパウト内で実行される Thrift サーバーを実装する方法は? スパウトが実行されている場所をクライアントに知らせて、スパウトにデータをプッシュできるようにするにはどうすればよいですか?