そうそう、C++でクライアントを作成しているには意味があります。SQL Serverにデータ格納しているのなら「SQLで統計とったりしながら取り出せばいい」という話はもちろんあります。SQL側で統計とるようなASP.NET上のServer Side ScriptをVBなにC#なりで実装すればクライアントえらばないやんw ということもあるんですよね。
まぁ、そこらは統計の取り方とかいろいろあるわけなんですが、個人的な持論として「データストア部分はいじるべきではない」と思っているのです。なぜなら、いじればいじるほど壊れる確率はどれだけ低くても増えるというわけで・・・
なので、データストアとして使用しているSQL Serverのデータの安全性を確保するためにも、クライアントをC++で作成しSQL Serverから必要な分をダウンロードしてきて各種統計データを生成するのが私の好みなわけです。ちゃんと「レプリカとってればいい」とかいうのは、贅沢なのですよ・・・w
あともう一つの理由が「必要となる統計データの使用やリレーションが頻繁に変わる」ということもあるのです。そうしたときに、たちまちアルゴリズム変更したりするのが、私的にC++が楽・・・w という感じです。もちろん、内部キャッシュや「テキスト>バイナり化」、CSV出力でExcelグラフ化なども、基本ライブラリ化されてますからあとあと使いまわすデータに仕上げやすいという理由もあったりします。ストアドにしてしまったら、ここの通信はやくなるだろうなぁ・・・とかおもっても、一度キャッシュすればいいやんとか。。これはこれで力技か(´・ω・`)
ぶっちゃけ、VISTAの開発中にはなしのあったWinFSの将来像のように、データベースレベルでファイルなどが管理され、簡単にレプリカとることでバックアップができて、スケジューリングや検索、部分バックアップの自動化などが実現すれば・・・w