問題タブ [batch-processing]

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 投票する
5 に答える
13221 参照

java - 休止状態を使用して大量のデータを読み取るときの OutOfMemory

データベースから大量のデータをエクスポートする必要があります。私のデータを表すクラスは次のとおりです。

... }

ProductHtmlSource- 実際にエクスポートする必要がある大きな文字列が含まれています。

エクスポートされたデータのサイズが JVM メモリよりも大きいため、データをチャンク単位で読み取っています。このような:

}

のコードgetProductIterator:

問題は、各データチャンクオブジェクトの読み取り後にセッションをクリアしても、Productどこかに蓄積され、OutOfMemory 例外が発生することです。問題は、メモリエラーが発生しなくてもコードのブロックを処理することではありません。1000 個のオブジェクトがメモリに簡単に収まるため、バッチのサイズも問題ではありません。

プロファイラーは、オブジェクトがorg.hibernate.engine.StatefulPersistenceContextクラスに蓄積することを示しました。

スタックトレース:

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

excel - フォトショップ、Excel、外部画像に関する難しい質問

そうです、私はフォトショップのPSDファイル、カスタムデータで満たされたスプレッドシート、そして画像でいっぱいのフォルダを持っています。スプレッドシートのエントリごとに一意の画像を作成する方法が必要です。スプレッドシートには、PSDのテキスト要素に入力する必要のあるデータが含まれ、フォトショップに貼り付ける必要のある画像を参照します。

通常は手動でこれを行いますが、400以上の画像に対して行う必要があるため、スクリプトまたはその他の方法でこれを自動化する方法を分析しています。

何かアイデアはありますか?必死です!

0 投票する
4 に答える
8894 参照

java - Log4j: リクエストごとに 1 つのログ ファイル

コンシューマーからの複数のリクエストを同時に処理する weblogic バッチ アプリケーションがあります。ロギングの目的には log4j を使用します。現在、複数のリクエストに対して 1 つのログ ファイルにログインしています。すべてのリクエストのログが 1 つのファイルにあるため、特定のリクエストの問題をデバッグするのは面倒です。

そのため、リクエストごとに 1 つのログ ファイルを作成する予定です。コンシューマーは、処理を実行する必要があるリクエスト ID を送信します。実際には、リクエスト ID をアプリケーションに送信する複数のコンシューマーが存在する可能性があります。問題は、リクエストに基づいてログ ファイルを分離する方法です。

本番サーバーを毎回起動および停止することはできないため、日時スタンプまたはリクエスト ID でオーバーライドされたファイル アペンダーを使用するポイントは除外されます。これについては、以下の記事で説明されています: http://veerasundar.com/blog/2009/08/how-to-create-a-new-log-file-for-each-time-the-application-runs/

私はまた、これらの代替手段で遊んでみました:

http://cognitivecache.blogspot.com/2008/08/log4j-writing-to-dynamic-log-file-for.html

http://www.mail-archive.com/log4j-user@logging.apache.org/msg05099.html

このアプローチでは望ましい結果が得られますが、複数のリクエストが同時に送信されると正しく機能しません。いくつかの並行性の問題により、ログがあちこちに移動します。

皆さんからの助けを期待しています。前もって感謝します....

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

sql - hibernateTemplate、JdbcTemplate を使用した春のバッチ挿入

Spring のバッチ挿入に関していくつか質問があります。

私がそのようなことをするとき:

mysqlログファイルに次のように表示されます:

したがって、3 つの挿入ステートメント (および 3 つのネットワーク呼び出し) があります。

ログファイルで使用するgetJdbcTemplate().batchUpdate(tab)と、次のことがわかります。

1094 [main] DEBUG org.springframework.jdbc.core.JdbcTemplate - 3文のSQL一括更新を実行 1110 [main] DEBUG org.springframework.jdbc.datasource.DataSourceUtils - DataSourceからJDBC接続を取得 1110 [main] DEBUG org.springframework .jdbc.datasource.DriverManagerDataSource - [jdbc:mysql://localhost:3306/test?useServerPrepStmts=true] 1610 への新しい JDBC DriverManager 接続の作成 [main] DEBUG org.springframework.jdbc.support.JdbcUtils - JDBC ドライバーはバッチ更新をサポートします

そしてmysqlログで:

バックグラウンドでaddBatchメソッドがステートメントオブジェクトで呼び出され、これらすべての操作が同時に実行されることを理解しています。追加の利点は、ネットワーク コールの削減です。私の推論は正しいですか?

HibernateTemplate で似たようなものを探しています。私はこのようにそれを行うことができます:

その場合、ログ ファイルに次の内容が表示されます。

したがって、 getJdbcTemplate().updateBatch(...) の場合と同様に、すべてが一発で行われるようです。

私が間違っている場合は、私を修正してください。

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

hadoop - MapReduce タスクが互いに独立していることを確認するにはどうすればよいですか?

興味深いのですが、MapReduce や Hadoop などでは、データのチャンクを独立して操作されるタスクにどのように分割するのでしょうか? タスク間の状態条件などと非常に相互に関連しているデータを持つことが一般的であることを考えると、それがどのようになるか想像するのに苦労しています.

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

java - ディレクトリ ポーリングのベスト プラクティス

ビジネスプロセスを自動化するためにバッチ処理を行う必要があります。新しいファイルを検出して処理を行うために、定期的にディレクトリをポーリングする必要があります。古いファイルが処理されている間に、新しいファイルが入ってきます。今のところ、Quartz スケジューラとスレッド同期を使用して、1 つのスレッドだけがファイルを処理できるようにしています。

コードの一部は次のとおりです。

アプリケーションコンテキスト.xml

DocumentProcessor
.....

現在のコードでは、1 つのスレッドが処理しているときに他のスレッドがファイルを処理できないようにする必要があります。それは良い考えですか?または、マルチスレッド処理をサポートしています。その場合、どのファイルが処理中で、どのファイルが到着したかをどのように知ることができますか? どんなアイデアでも大歓迎です。

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

batch-processing - LINQPad を使用してバッチ ジョブを実行するにはどうすればよいですか?

最近、LINQPad がシェル コマンドを実行できることがわかりました。LINQPad クエリを使用してバッチ ジョブを実行する方法の例を教えてもらえますか?


申し訳ありませんが、質問を明確にしませんでした。つまり、.linq ファイルをバッチ ファイルにするということです。つまり、.linq ファイルに記述されたバッチ ジョブをスケジュールし、それを実行するコマンドとして LINQPad を使用します。

0 投票する
14 に答える
190593 参照

sql - ディレクトリ内のすべての SQL ファイルを実行する

他の開発者が SQL Server 2005 データベースに加えた変更を適用するために実行しなければならない .sql ファイルがいくつかあります。ファイルは、次のパターンに従って名前が付けられます。

それらすべてを一度に実行する方法はありますか?

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

database - バッチファイルを作成し、C#スレッドを使用して同時に実行する方法

私は約4000行のデータベースのコードを持っています。所要時間は約30〜40分です。実行するため。

スレッドを使用して同時に開始できるように、同じコマンド行を含む20個のバッチファイルを作成したいと思います。

バッチファイルはどれも他に依存していません。すべてが独立しています。依存関係のみがすべて同じデータベースで実行されます。

通常の実行にかかる時間を短縮するために、どのように進めればよいか教えていただけますか。

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

sql-server - DBCC CheckIdent を使用した一括コピー挿入

私たちのチームは、SQL Server 2008 データベースに大量のデータを挿入する必要があります。私たちは良い解決策を探しています。今、私たちはそれを思いつきましたが、私はそれに疑問を持っています. それで、これが良い解決策のように思えるかどうかをここで尋ねています。追加の課題は、それが 4 つのサーバーを介してピアツーピアで複製されたデータベースであることです! :)

挿入する行が 100 万行あるとします。

  1. 取引開始
  2. 100 万のテーブルの現在の ident 値を増やします
  3. 100 万行と正しい ID を備えた DataSet/DataTable を用意する
  4. データをデータベースに一括コピーする
  5. トランザクションをコミットする

これは良い解決策でしょうか。同時実行の問題が発生したり、トランザクションが大きすぎたりする可能性があります。