2011-07-09 10 views
0

私は.NET 4 Winformsアプリケーションで作業しており、データベースを処理する最適な方法を決定する際に問題が発生しています。アプリケーションがWCFサービスを介して "クラウド"と通信できるクラウドデータベースシステムを提供し、ローカルデータベース(SQL Expressローカル、サーバー上のSQL Server 2008 R2)への接続と基本的に同じことをしたい。クラウドデータベース(WCF)または時折接続されたアーキテクチャとMicrosoft Sync?

は、我々の2つのオプションを参照してください。クラウドに

1)を使用するWCFとするすべてのコールデータベース 2)ローカルデータベースを使用して同期して雲を維持するには、Microsoft Sync Frameworkのを使用し

我々は最終的になりますクラウドデータをユーザーの別のフロントエンドとしても使用するWebアプリケーションがあります。

ジレンマは明らかに使用するものです。オプション1を使用すると、公共の場所やユーザーのデータがそのDBにダウンロードされるなど、ソフトウェアが使用されるあらゆる場所でSQL Expressをインストールする必要はありません。 WCFオプションを使用すると、すべてのデータを中央に置くことができます。

私たちは最終的にモバイルで折りたたんで、iPhone、iPad、Androidをクラウドと同期させることもできます。

厳密にクラウドデータベースオプションと、時折接続されるオプション、つまりデータベースがローカルであり、クラウドに同期しているというあなたの意見に興味があります。

ありがとうございます。

答えて

0

オフライン/偶発的接続シナリオを許可する場合は、必要に応じてオプション1)と2)の両方を実行しないでください。どこにあるか(クラウドまたはローカルdb)に関係なく、データベースにアクセスするためにWCFを介して同じn層アーキテクチャを使用すると、コードは常に同じになりますが、偶発的に接続されたアプリケーションがデータを同期するWCF経由)。

シンクとダイレクトアクセスの問題はリアルタイムではないことです。つまり、他のユーザーがデータにアクセスしてデータを更新するため、通常は競合の処理方法などを考慮する必要があります。主な理由です)私はちょうど1)に行くだろうオフライン機能のためです。また、あなたが格納しているデータの種類は、ユーザー固有でデータの量が大きい場合でも上から明らかではありませんが、セキュリティとパフォーマンスに関して特に同期を使用する場合は非常に大きな問題です。

解決策が何をしようとしているかについてより多くの情報を提供できるのであれば、それも役立ちます。

関連する問題