0

一部の情報をデータベースから外部ファイルに移動するバッチ プロセスを作成しています。このタスクは簡単に処理できますが、処理する必要があるデータが大量にあり、おそらく 1 か月ほどかかるでしょう。

今月中には新しい情報が継続的にアップロードされます。バッチ処理を行ってから、新しいレコードに戻って処理する方法はありますか (バッチ処理が行われている間、アップロード システムをオフにすることはできません)。

特定の日付までのバッチ処理の大部分は、バッチ処理全体の約 95% になる可能性があると考えていました。残りの 5% は、入力された新しいレコードであり、それらを処理しますか? 何かご意見は?

4

3 に答える 3

0

ジャーナルのアイデアに+1しましたが、プロキシを検討しましたか?

このアプリケーションが独自のスキーマや情報のアップロード ルーチンを自由に変更できるかどうかは示していません。各レコードの最終変更時刻と各レコードの最終バックアップ時刻を追跡できれば、最近変更されたレコードを簡単に照会できます。または、以前のバックアップ手順で変更されたレコードのジャーナルをスキャンし、最後にキャッチアップを実行することもできます。

テーブルが変更される頻度によっては、フローを先に進めて、入力プロセスをデータベースにプロキシすることが理にかなっている場合があります。入力プロキシはすぐに外部ファイルへの保存を実行し、期待どおりにデータベースを更新します。これにより、まだファイルが存在しないレコードをエクスポートする寛大さも得られます。

于 2009-10-29T07:04:55.863 に答える
0

「ジャーナル」テーブルを使用して、「ダウンロード」プロセスで処理された行を追跡してみませんか? 新しい「エントリ」が来たら、後で取り上げるだけですよね?

もちろん、「作成/変更」日付フィールド インデックス フィールドを使用して、バッチを順番に処理します。

あなたの「月」に書かれている新しいレコードから現在のレコードを扱う必要がある理由を私は確信しています。どうか明らかにしてください。区別する必要がある場合は、特定の「停止」日を指定して「ダウンロード」プロセスを開始してください。

于 2009-10-27T18:07:27.517 に答える