多个SQL db对于单个应用程序来说是个坏主意吗?

时间:2012-02-27 23:38:28

标签: sql ios sqlite titanium titanium-mobile

我正在设计一个iOS应用程序,并决定将持久性需求分成三个独立的SQL数据库。

  • 静态数据 - 只读但从外部源下载
  • 客户请求数据 - 客户端排队发送到外部源的数据
  • 应用程序元数据 - 保存有关其他两个数据库和应用程序整体状态的元信息。这可能是但不限于表/应用版本信息,即应用最后与外部源进行通信的时间。

这种分离背后的想法是第一个DB是可以有效替换的,第二个是事务源,而元信息不应该增长。

这种方法是否有任何警告,当然我知道我无法加入,但我不打算这样做。

3 个答案:

答案 0 :(得分:3)

对于这种方法,当然不是任何固有的“坏”。事实上,这通常是一个好主意,在你的情况下听起来可能是这样。根据您创建和打开各种数据库的方式,您可以获得性能提升。

一些具体的指示:

  • 静态数据:由于此数据库是只读的,因此将其以只读方式打开
  • 您可以实际连接跨数据库,例如:使用ATTACH DATABASE SQL语句并从那里开始。

答案 1 :(得分:0)

在使用两个数据库之前,我会考虑拥有一个或两个JSON文件。您的静态数据可能没问题,对于元数据可能就足够了。

显然,这取决于数据的数量和组织,以及是否进行了CRUD操作。

答案 2 :(得分:0)

我不熟悉iOS,但我从空间角度考虑它。 SQL DB的最小大小与您要存储在其中的数据大小有什么关系?如果数据库没有增加大量开销,那么应该没问题。但是,如果您要存储1K数据而空数据库是16K,我会重新考虑。