2009-07-10 8 views
1

対私は、SQL CEデータベースに格納されているリアルタイム・データを分析するアプリケーションを作ってるんです。 LINQ to SQLを使用してアプリケーションをテストすると、結果が遅くなり、これを行う方法を再考する必要があります。LINQはSQLCE

私はL2Sは同じくらい速く「古い」SQLCEのmethodesがあったようであることを信頼することができ、私にいくつかの時間を節約するには?私はL2Sが好きで、それにとどまることを好むだろう、とあなたの経験は、それが早く、他のDB接続などだと言うならば、私は昔のSQL文にL2Sを書き換えることで、パフォーマンスを向上させるではないだろうと安心することができます。

答えて

2

SQLCEを使用すると、LINQ to SQLはから生成されたSQLに由来していないボトルネック。覚えておいてください、CEはプロセス内のデータベースであり、したがって制限があります。たとえば、LEFT OUTTER JOINSは、クエリに使用する内容に関係なく、災害です。インサートとアップデートは悪くありませんが、どちらか一方を大量に実行する場合は、重大なパフォーマンス上の問題が発生します。私のポイントは、遅さはLINQ to SQLのためではないということです。過去にベンチマークしたことがあります(まだそのコードがあるかどうかはわかりません)。また、LinqがSQLに覚えていたことから、ADO.NETで直接クエリを実行する速度は遅くなりませんでした。パフォーマンスの問題は、CE自体の制約によるものです。

+0

私はSQL Expressを使用することができますが、アプリを使用するには2〜3人のユーザーが必要ですが、24時間いつでもSQL Expressサーバーを実行するオプションはありません。 SQLCEは、ユーザーが実行中のSQLサーバーなしでデータを共有できる唯一の方法です。 – rozon

+0

私もそれをベンチマークしました。私にとっては、実際にはLINQ to SQL CEの障害です。生の操作は超高速です。 – greenoldman

2

あなたは昨年のPDCからのSQL CE this videoを使用している場合は、非常に情報です。本格的なSQL Serverのクエリを最適化する方法のアイデアは常に適用されるわけではなく、時にはSQL CEのパフォーマンスを損なうこともあります。

プレゼンターが違いを説明し、結果を表示するためにベンチマークがそうであるように私は、あなたがそれを見てお勧めします。 Here彼のブログへのリンクが見つかります。

関連する問題