1

スケジュールされた Web ジョブを介してデータのインポートを処理するための最良の方法について、アドバイスを探しています。JSONシリアライザーを使用してFTPクライアント経由で5時間ごとにインポートされる8つのjsonファイルがあり、これらのJSONオブジェクトが処理され、EF6を使用してAzure SQLに挿入されます。Parallel ForEach を使用しようとしたときに一部のデータが関連テーブルに挿入されていなかったため、すべてのデータが正しく挿入されていることを確認したかったため、各ファイルはループで順次処理されます。したがって、WebJob が失敗した場合、エラーが発生したことがわかり、再度実行できます。問題は、大量のデータがあるため、完了するまでに 2 時間近くかかることです。各ファイルには 500 の場所があり、各場所には 11 の場所があります。日と 24 時間のデータ。

データが常に正しく挿入されるようにするか、エラーを処理することを保証しながら、これをより迅速に行う方法についてのアイデアは誰にでもあります。ストレージ キューの使用を検討していましたが、将来的には他のデータベースを参照する必要があるかもしれません。または、ファイルごとに 1 つの Web ジョブを使用して、ファイルごとに 8 つの Web ジョブを 5 時間ごとにスケジュールすることはできますか? 1 日に実行できる Web ジョブの数。

または、スケジュール可能な Azure SQL にデータをインポートする別の方法はありますか。

4

1 に答える 1

2

Azure Web ジョブ ( Web ジョブ SDK 経由) は、BLOB を監視および処理できます。スケジュールされたジョブを作成する必要はありません。SDK は、新しい BLOB を監視し、作成時に処理できます。処理を小さなファイルに分割し、作成時にロードすることができます。

Azure Stream Analytics にも同様の機能があります。

于 2016-03-28T16:36:07.253 に答える