2016-12-19 7 views
1

私はC#/ ASP.NETとSQL Serverを使用してアプリケーションを開発しました。私は今、自分のアプリケーションのチャート作成ツールを使うことができる位置にいます。アプリケーションは、1〜30分の時系列で12ヶ月以上かかる可能性がある顧客データを示すチャートを表示するので、多くのデータ(時には)が必要になります。私の質問は、グラフのデータを取得して準備するための最も効率的で安全な方法は何ですか。つまり、顧客がログインしたときにデータを準備しておき、顧客がチャートを表示するためにログインしたときにできるだけ遅れを取りたいと思っています。これは時系列データを使った簡単なグラフですが、多くの場合があります。チャートのデータ検索に最適な方法

パフォーマンスが優れていることを確認したいと思っています。数百人のユーザーがすべてデータを取得している場合は、DBに遅れをとっていきます。

私は、SQLサーバーを使用してグラフデータ用のXMLファイルを作成し、これを顧客フォルダにドロップし、これを定期的に更新することに留意しました。それから、グラフはXMLファイルを使用して、グラフに直接挿入できます。

もう1つは、クエリまたはストアドプロシージャを使用したデータへの直接アクセスでした。

あなたは同様の問題を解決するために何を使用しますか?

+2

SSRS(https://msdn.microsoft.com/en-us/library/ms159106.aspx)ここでお手伝いします。レポートをあらかじめ生成し、キャッシュし、さまざまな形で配布することができます。 – TToni

+0

うわー、それは私が最後にそれを使用して以来、多くの変更されました! –

答えて

0

あなたは、私は、1回のラウンドトリップで、複雑な構造化データをフェッチするためにそれをして使用しているSQL Serverの2012 https://msdn.microsoft.com/en-gb/library/ms178107.aspx

に追加されたSQL Serverのバージョン、使用しているが、FOR XML指定しませんLINQ-to-SQLまたはEFを使用して同じデータをフェッチするには、多くのラウンドトリップが必要です。

チャーティングツールで必要とされる構造にデータを直接選択するのは困難または非効率的ですが、ファイルをディスクに保存する前にXSLTを使用してデータを再構成できます。

+1

FOR XMLはSQL 2012よりもずっと古いです。https://msdn.microsoft.com/en-us/library/bb985944.aspx –

+0

通常使用する「パスモード」のように見えますが、SQL Server 2005に追加されました2012年にはドキュメントがすべて再構成されました: -/ – Emyr

+0

古いバージョンはサポートされなくなったため、アクティブなドキュメントは2012年にのみ移動します。 –

関連する問題