問題タブ [luigi]

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 に答える
1411 参照

postgresql - luigi を使用して Postgre テーブルを更新する

luigi図書館を利用し始めたばかりです。私は定期的にウェブサイトをスクレイピングし、新しいレコードを Postgres データベースに挿入しています。を使用するようにスクリプトの一部を書き直そうとしているので、 「マーカー テーブル」luigiがどのように使用されることになっているのかが明確ではありません。

ワークフロー:

  1. スクレイプデータ
  2. DB にクエリを実行して、新しいデータが古いデータと異なるかどうかを確認します。
  3. その場合は、新しいデータを同じテーブルに保存します。

ただし、luigi の を使用postgres.CopyToTableすると、テーブルが既に存在する場合、新しいデータは挿入されません。insertedテーブルの列を使用して、table_updatesどの新しいデータを挿入する必要があるかを判断する必要があると思いますが、そのプロセスがどのように見えるかは不明であり、オンラインで明確な例を見つけることができません.

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

python - Python Luigi Pipeline でグローバル変数がデフォルト値に戻る

次のようなpython luigiパイプラインコードがあります。端末を調べてみると、プログラムはクラス A を呼び出して dosHave = false を設定しているように見えますが、クラス B を実行する前に、dosHave は true に戻ります。

基本的に、「bar」を実行したいのですが、グローバル変数が true に戻り続けるため、「foo」を実行し続けます。

なぜこれが起こっているのか誰か説明できますか?これは、Python 自体ではなく、Luigi Pipeline と関係があるとほぼ確信しています。

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

python - luigi タスクのスループットを制限できますか?

サードパーティのサービスから情報を要求する Luigi タスクがあります。その API 呼び出しに対して 1 分間に実行できる呼び出しリクエストの数は制限されています。

スケジューラが単位時間あたりに実行する必要があるこの種のタスクの数をタスクごとに指定する方法はありますか?

0 投票する
0 に答える
133 参照

apache-spark - SparkSubmitTask を実行する前に HdfsTarget を削除する

HdfsTargetコミュニティ、実行する前にフォルダを削除したいのですがSparkSubmitTask。ベストプラクティスは何ですか? これまでのところ、添付のコードに記載されている 2 つのオプションを試してみましたが、成功しませんでした。

  1. HdfsTarget依存/必須ジョブが既に存在する場合、実行されません
  2. で呼び出された場合、タスクは並行して実行されますyield
0 投票する
2 に答える
939 参照

python-3.5 - ルイージ タスク メソッドの実行順序

Luigi がメソッドを実行する順序は何ですか (run、output、require)。タスク DAG の有効性をチェックするための最初のチェックとして require が実行されることは理解していますが、run() の後に出力を実行するべきではありませんか?

私は実際に実行中のkafkaメッセージを待ち、それに基づいて他のタスクの束をトリガーし、LocalTargetを返そうとしています。このような:

ただし、次のエラーが表示されます。

例外: path または is_tmp を設定する必要があります

return LocalTarget(self.path)行。def run() が完了するまで luigi が def output() メソッドを実行しようとするのはなぜですか?