我是Android开发的新手。
目前,我正在处理一个拥有大量数据的Android应用程序。
所以我认为我应该在本地存储一些数据。
我有一个有2个表的数据库。
表-1的大小是:4.5 MB 表-2的大小是:目前3.5 MB。
即。总共约8.0 MB,但未来的数据库大小可以增加,可能达到10 MB。
表-1:行(14927)和列(17) 表-2:行(9903)和列(38)
我怀疑的是,我可以在Android应用程序中本地存储这么多数据,或者应用程序的速度可以受其影响。
我不想将这些数据存储在外部存储中。我无法将其存储在服务器数据库中,因为我必须在应用程序中多次使用这些数据。而其他数据在服务器上,因为它必须集中使用。
这是我的观点。但请告诉我你的建议。
如果有这么大的数据库该怎么办。
请帮帮我。在此先感谢... :)
答案 0 :(得分:6)
最大数据库大小可以是大约1.4e + 14字节(140太字节,或140,000千兆字节)。
参考:The Official SQLite Documentation and limits
14。最大数据库大小
每个数据库都包含一个或多个"页面"。在单个数据库中,每个页面的大小相同,但不同的数据库的页面大小可以是512到65536之间的两个页面大小。数据库文件的最大大小为2147483646页。在最大页面大小为65536字节时,这意味着最大数据库大小约为1.4e + 14字节(140太字节,或128 tebibytes,或140,000千兆字节或128,000 gibibytes)。
答案 1 :(得分:1)
我不想将这些数据存储在外部存储中。我不能 将它存储在服务器数据库中,因为我必须多次使用这些数据 申请。
因此,如果您不想使用外部存储,您唯一的方法是使用内部存储(您也不想使用远程服务器)。通常,当数据库具有更大的大小时,通常使用外部存储来优化应用程序。但它也取决于数据的特征e.q.如果他们是敏感的或不是,所以外部存储并不总是赢。
但在您的情况下,我认为您的应用程序性能不会降低。只有对数据库的查询才能持续超过10-100行的查询(通过创建适当的索引可以优化查询)。
但提高绩效的一些建议:
答案 2 :(得分:1)
你可以毫无问题地存储这么多数据,我正在研究数据库。它的大小约为35MB。 您应该使用缓存来加速获取数据。
我不喜欢内部存储,它很小。
答案 3 :(得分:0)
您可以在sqlite中存储这么多数据。这可能会影响您的表上的查询搜索而不是您的应用程序,您应该始终在单独的线程而不是主线程上与数据库进行交互。 但是您应该考虑从用户不再需要的表中删除行,这可能会从数据库中释放一些负载。