タグ

2012年11月24日のブックマーク (1件)

  • バッチ処理を50倍高速化する - 開発思考実験日記

    DBデータをストリーム処理するを応用するとバッチ処理を高速化できます。SQL Serverに1億件のテストデータを高速に作成するの結果からすると、ストアドプロシージャで作成する場合に比べて50倍高速に処理できることになります。 メインフレーム上の基幹系のバッチの多くはファイルを読み込み、加工処理、出力する処理を繰り返して行います。これをRDBMSでファイルの代わりにテーブルを利用するイメージになります。 さらに、LINQ対応することでLINQで用意されたいろいろな仕組みを利用することができます。以下はAdventureWorksデータベースのSalesOrderDetailを顧客単位に集約して値引きを計算する処理です。AsParallelで並列化(スケールアウト)も簡単にできます。12万超のデータを処理するのに手元のPCで7.8秒です。100万件でも1分ちょいの処理時間ということになります

    バッチ処理を50倍高速化する - 開発思考実験日記
    kahki
    kahki 2012/11/24