2011-06-20 21 views
-1

大量のレコードを取得しているレポートツールがあります。時には100万レコードになることもあります。これをデーターベースに保管しています。私は、これを格納するためのより良いオブジェクトがあるかどうかを知りたいと思っていました。私はさまざまな方法でデータを集約できる必要があります。Datatableよりも効率的

更新: はい。個人的には、それは多くのレコードを取得するべきではないと考えています。これは私が行きたい方向ではありません。

また、私はOracleの

アップデートアップデート

遅れて申し訳ありませんを使用していますが、いつもここ出しが発射されています。主な問題は、メモリが不足してメモリエラーが発生していたことでした。彼らは、メモリから解放されたdatatableとの問題、およびdatagridviewへのバインディングも持っていました。私が探していたものは、より多くのスペースを取らない軽量の物体でした。

もう少し考えてみたら、実際に言及されているように、多くのデータを取得するのは意味がありません。さらに、これらの問題で少数の人々がそれを使用しているならば。それはどのように拡大するでしょうか。

残念ながら、私は聞いていない上司と、あまりにも「はい」のタイプの態度であるオフショアチームを持っています。彼らは、生データ(XMLファイルとして)をシリアル化していると私は良い方向ではないと思う生データDatatableを解放しています。

@diagonalbatman - 好奇心のうち、あなたがこの

+2

ボトルネックが実際にどこにあるかを確認するためにテストを実行しましたか? –

+0

この質問が現在の状態で答えることができるかどうかはわかりません。詳細をもっと詳しく記述してください。データは保存した他のデータに関連していますか?等 –

+0

あなたはデータテーブルに問題がありますか?あなたは何を克服しようとしていますか?詳細は、私たちがあなたをより良く助けるのに役立ちます。 – Bueller

答えて

2

なぜあなたは、あなたのアプリに1つのMilionレコードをドローダウンする必要がありますかの例がありますか?

DBでレポート統合/集計を実行できませんか?これにより、DBのリソースをより有効に活用することができます(これがRDBMSの目的です)。

+0

私はそれに同意しますが、私が望む方向はデータを入手できることです。 – H20rider

+0

これは問題ありませんが、必要な時だけデータを取得するようにアプリケーションを設計することはできませんか? – diagonalbatman

+0

Yah。同意する。ユーザーが多くのデータを必要とすると思うのはばかげている。 – H20rider

1

特に、さまざまな方法でデータを集約するために必要な能力に照らして、いくつかのオプションを検証することをお勧めします。

1)データ側で適切なクエリを集約することができますか?これはおそらく最良の解決策です。

2)POCOを使用すると、LINQは現在のメモリとパフォーマンスの特性を改善します。 LINQを使用すると、必要な集計を行うことができます。

気になる特性を測定し、さまざまなオプションを試してみてください。

1

データキューブが必要です。あなたが持っているデータベースのタイプに応じて、いくつかのキューブを構築する必要があります。

関連する問題