問題タブ [apache-nifi]
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.
apache-nifi - Flowfile はどのようにクラスタ ノードに分散されますか?
たとえば、分離するように指定した GetFile プロセッサがある場合、そのプロセッサからのフロー ファイルはどのようにクラスタ ノードに分散されますか?
追加する必要がある追加の作業/プロセッサはありますか?
apache-nifi - nifi を使用した MergeContent - 一貫性のない長さ
MergeContent プロセッサを使用してディスクにファイルを書き込もうとしていますが、ファイル サイズが 1 行から 806 行まで大きく異なります。Apache NIFi MergeContentプロセッサで対処されているように改行区切り記号を見つけようとして、このプロセスを何度も繰り返しました-区切り記号を改行として設定すると、本当にランダムなサイズのファイルが得られました。
次のロジックに準拠するには、どのパラメーターを設定する必要がありますか?
- 単一のビンを確立する
- すべてのフローファイルをビンにルーティングします
- len(bin)>X またはビンの年齢が Max Bin Age より大きい場合、ビンを解放します。
ご覧のとおり、 https://github.com/apache/nifi/blob/31fba6b3332978ca2f6a1d693f6053d719fb9daa/nifi-nar-bundles/nifi-standard-bundleの構文に従って、「Max Bin Age」を「10 秒」に設定しました。 /nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestMergeContent.java#L219 (この値の例を見つけることができた唯一の場所です。ドキュメントは不完全なようですこのパラメーターで)
「エントリの最大数」を 5000 に、「ビンの最大数」を 1 に設定しました。
上記のロジックに従ってレコードを集計するにはどうすればよいですか? また、この時点に到達するすべてのドキュメントで同一であることが保証されている属性を持つ「相関属性名」パラメーターを使用してみましたが、同じことがわかりました
java - Apache NIFI: ファイルがディレクトリに追加された直後に Java プロセスを実行する
私はApache NIFIにかなり慣れていません。
「ホットフォルダー」に入れられるファイルがあるフローを設定したいと思います。このフォルダーにファイルが配置されていることを検出すると、このファイルは「input」という別のフォルダーに配置されます。ファイルが入力フォルダーにコピーされたら、Java プログラムをトリガーして実行したいと思います。
私がこれにアプローチした方法は、「GETFILE」プロセッサを作成して、ホット フォルダからファイルを取得することです。次に、PUTFILE プロセッサを作成して入力フォルダに配置します。したがって、「GETFILE」プロセッサと「PUTFILE」プロセッサの間に接続リンクがあることが想像できます。これは期待どおりに機能します。
ただし、私が直面している課題は、ファイルが INPUT フォルダーにコピーされたとき (つまり、PUTFILE プロセッサが実行された後) に Java プロセスを実行することです。PUTFILE と EXECUTEPROCESS プロセッサ間のリンクを作成できません (ファイルがホット フォルダから入力フォルダにコピーされた後に Java プロセスを実行するよう NIFI に指示する手段として)。PUTFILE プロセッサと EXECUTEPROCESS プロセッサの間をリンクするための接続矢印を取得できないようです (NIFI では許可されないため)。
上記の説明に基づいて、入力フォルダーに追加されているファイルを検出した後に、NIFI に Java アプリケーションの実行をトリガーするように指示するアプローチを推奨できる人はいますか?
ありがとう。
solr - SolrRecord が Nutch から Index に追加された時間
Solr 5.4.1 と Nutch 1.11 を実行しています。また、Apache Nifi、特に GetSolr プロセッサも使用しています。
私の SolrRecord の tstamp は、インデックスの値がフェッチされた時刻であることを理解しています。
私が抱えている課題は、GetSolr プロセスが NiFi 無人で動作することです。フィルターする日付フィールドを提供する必要があります。tstamp を使用すると、初めてデータフローに入力されます。その後、tstamp フィルターは、レコードが Solr に取り込まれた時間ではなく、インデックス時間を参照しているため、将来の値を除外します。
私の質問は、クローラーによるフェッチではなく、Solr への挿入のタイムスタンプを含む bin\nutch インデックスの時点で SolrRecord にフィールドを含めるにはどうすればよいかということです。
java - ローカルの Maven 依存関係 jar の java.lang.NoClassDefFoundError による Apache Nifi の失敗。
maven を使用するのはこれが初めてです。apache-nifi 用のプロセッサを実装したいと考えています。このために、SDK である独自の jar ファイルを使用しています。リポジトリにはありません。したがってpom.xml
、次のように入れました。
intelliJ
この依存関係のインポートに問題がないように見えるものを使用しています。Maven ビルド手順も同様です。
このチュートリアルmvn clean install
で説明されているように使用します。これにより、出力としてパッケージが得られます。(ビルドエラーなし)nar
これnar
は、ディレクトリに配置されるはずですが$NIFI_HOME/lib
、前述のローカル jar をバンドルしていません。
この nar ファイルを必要なディレクトリに配置して起動するapache-nifi
と、
によってロードされているNarClassLoaders
ようですが、その後例外が発生nifi
して起動しません。
上記のSubscriptionInterface
ローカル jar のクラスです。
nar
ファイルのフォルダー構造を見ると、内部META-INF/bundled-dependencies/
には、pom で定義されている他のすべての依存 jar ファイルが表示されますが、使用したこのローカル jar ファイルは表示されません。
これを克服する方法は?
apache-nifi - コマンドラインからnifi dataflowを実行する方法
nifiでデータフローを用意しました。コマンドラインからそれを実行する方法はありますか?
ありがとう、スルジャナ