Database 这些嵌入式/快速DBs的4GB限制足够好吗?什么';如果达到限制,下一步是什么?

Database 这些嵌入式/快速DBs的4GB限制足够好吗?什么';如果达到限制,下一步是什么?,database,database-design,desktop-application,embedded-database,Database,Database Design,Desktop Application,Embedded Database,我想知道一个桌面应用程序(理论上)能消耗这些express/嵌入式数据库产品(SQL Server express、Oracle express、SQLite3等)的全部4GB限制多长时间,前提是大的blob将存储在文件系统中 另外,当它达到4GB时,您的策略是什么 归档旧数据库 将1-3个月的数据复制到新数据库(将此视为缓存策略?) 从此开始使用新数据库(如何访问旧数据?) 我知道答案可能因表/列中存储的数据量而异。但是请根据你的经验描述一下(什么样的桌面应用,写/读重,根据你的猜测它能达

我想知道一个桌面应用程序(理论上)能消耗这些express/嵌入式数据库产品(SQL Server express、Oracle express、SQLite3等)的全部4GB限制多长时间,前提是大的blob将存储在文件系统中

另外,当它达到4GB时,您的策略是什么

  • 归档旧数据库
  • 将1-3个月的数据复制到新数据库(将此视为缓存策略?)
  • 从此开始使用新数据库(如何访问旧数据?)
我知道答案可能因表/列中存储的数据量而异。但是请根据你的经验描述一下(什么样的桌面应用,写/读重,根据你的猜测它能达到多长时间)

我对“当它达到4GB时会发生什么”的策略通常是“安装一个成熟的数据库”

4GB是非常多的文本;对于单个开发人员应用程序来说,它几乎是无限的。 假设文件系统中存在blob,将用户的映像限制为每个映像100kb,每个用户一个配置文件映像,并且这些映像不超过数据库的四分之一;1GB。这仍然是一万个用户

4GB通常是很多,除非你正在做一些不寻常的事情。

我关于“当它达到4GB时会发生什么”的策略通常是“安装一个完整的数据库”

4GB是非常多的文本;对于单个开发人员应用程序来说,它几乎是无限的。 假设文件系统中存在blob,将用户的映像限制为每个映像100kb,每个用户一个配置文件映像,并且这些映像不超过数据库的四分之一;1GB。这仍然是一万个用户


4GB通常很高,除非你正在做一些不寻常的事情。

除了建议升级到“真实”数据库之外,真的没有办法回答这个问题。这就是说,如果一个单用户数据库达到4GB而没有容纳大的
blob
s,那么您正在做一些不同寻常的事情


编辑

很多人忽视的一个问题是SQL Server的快速版本中的RAM和CPU限制。虽然2008年及以前版本的数据库大小限制为4GB(如本问题评论中所指出的,2008 R2的数据库大小限制为10GB),但1GB RAM和单CPU限制更可能对您造成负面影响,尤其是对于如此大的数据集


存档(几乎)从来都不是一个简单的解决方案,因为这通常涉及破坏现有关系或复制数据。例如,考虑到我有一个数据库<代码>客户>代码> s和<代码>订单 S.

                Order
Customer        ----------
---------       OrderID
CustomerID <--- CustomerID
...             ...
顺序
顾客----------
---------医嘱ID

CustomerID除了建议升级到“真实”数据库之外,实在没有办法回答这个问题。这就是说,如果一个单用户数据库达到4GB而没有容纳大的
blob
s,那么您正在做一些不同寻常的事情


编辑

很多人忽视的一个问题是SQL Server的快速版本中的RAM和CPU限制。虽然2008年及以前版本的数据库大小限制为4GB(如本问题评论中所指出的,2008 R2的数据库大小限制为10GB),但1GB RAM和单CPU限制更可能对您造成负面影响,尤其是对于如此大的数据集


存档(几乎)从来都不是一个简单的解决方案,因为这通常涉及破坏现有关系或复制数据。例如,考虑到我有一个数据库<代码>客户>代码> s和<代码>订单 S.

                Order
Customer        ----------
---------       OrderID
CustomerID <--- CustomerID
...             ...
顺序
顾客----------
---------医嘱ID
CustomerID“如果达到限制,下一步怎么办?”

这个号码:18446744073709551615。如果您没有得到它,那就是16 EB(减1)。

如果达到限制,下一步怎么办


这个号码:18446744073709551615。如果您没有得到它,那就是16 EB(减去1)。

如果达到了限制,那么使用没有该限制的DBMS。另外,请始终记住,自由软件是不存在的。

如果达到了限制,请使用没有该限制的DBMS。另外,请始终记住,自由软件是不存在的。

SQLite没有大小限制SQL Server 2008 R2 Express已将该限制提高到10 GB,即使是要求很高的应用程序,也应该足够了@marc_s:虽然提高了数据库大小限制,但1GB RAM和单CPU限制没有改变。SQLite没有大小限制SQL Server 2008 R2 Express已将该限制提高到10GB,即使对于要求很高的应用程序也应该足够了@marc_s:虽然提高了数据库大小限制,但1GB RAM和单CPU限制没有改变。