2012-02-27 9 views
2

私はiOSアプリケーションを設計しており、永続性要件を3つの別々のSQLデータベースに分離することに決めました。複数のSQLデータベースを1つのアプリケーションに使用するのは悪い考えですか?

  • 静的データ - 読み取りだけでなく、外部ソース
  • クライアント要求データからダウンロード - クライアントが外部ソース
  • アプリケーションメタデータを送信するためにキューイングされていることをデータは、 - の状態に関するメタ情報を保持します他の2つのdbとアプリケーション全体として。これは、テーブル/アプリのバージョン情報、アプリが最後に外部ソースと通信した時刻などである可能性があります。

この分離の背後にあるアイデアは、最初のDBが効果的に交換可能であり、2番目がトランザクションソースであり、メタ情報が成長しないという考えです。

このアプローチの注意点はありますか?当然のことながら、私はそれぞれにまたがって参加することはできませんが、私はそうではありません。

+0

これは優れていますが、プロジェクトの時間に合わせて決定する必要があります。このデザインは、DBの小さなサイズで15分ごとなどのリアルタイムバックアップを作成したい場合は、スケジュールバックアップに役立ちます。 –

答えて

3

このアプローチについては、本質的に「悪い」ではありません。実際、それはしばしば良いアイデアであり、あなたのケースではおそらくそうであるように聞こえる。さまざまなデータベースの作成方法やオープン方法によってパフォーマンスが向上する可能性があります。

カップル、特定のポインタ:

  • 静的データ:このデータベースは読み取り専用であるので、読み取り専用として開き
  • あなたが実際のようなデータベース間で参加することができますすることができ
  • ATTACH DATABASE SQLステートメントを使用し、そこから行く。
0

2つのデータベースを使用する前に、1つまたは2つのJSONファイルがあると思います。あなたの静的データは大丈夫かもしれませんが、おそらくメタデータで十分でしょう。

明らかに、データの量と構成、CRUD操作を行うかどうかによって異なります。

0

私はiOSに精通していませんが、私はスペースの観点から考えています。 SQL DBの最小サイズとそれに格納するデータのサイズは何ですか? DBがかなりのオーバーヘッドを追加しない場合は、正常であるはずです。しかし、1Kのデータを格納しようとしていて空のデータベースが16Kであれば、再考したいと思います。

関連する問題