假设有一个桌面应用程序 - 可以最好地描述为用户插入/查看记录的记录 - 依赖于DB后端,该后端将包含对象的层次结构和属性大。如何处理数据检索?带数据库的桌面应用程序 - 如何处理数据检索?
如果所有的数据是在启动时加载并存储在以后的操作还是应该将数据只需要检索相应的类/结构,存储在模拟式类/结构,再后来重用而不是再次被要求到数据库?
就我所见,前一种方法需要使用更大的存储器部分,并且可能在启动时等待时间(如果显示启动画面,则不会太差),而后者可能会使用户延迟在处理期间由于数据检索而需要在数据库上执行一些昂贵的查询,其结果和/或支持数据结构一旦被使用就很可能无用*。
有些东西告诉我,解决方案在于深入分析,这将导致上面列出的两种方法基于最常用的数据的混合,但我非常有兴趣阅读您的想法,技巧和现实生活关于这个话题的经验。
为了讨论的缘故,我正在考虑C++和SQLite。
谢谢!
* 假设您可以对类/对象执行更快的操作,而不必对数据库执行复杂的查询。
编辑
一些额外的细节:
- 没有并发访问数据,这意味着只有1个用户工作在其本地存储的数据。
- 根据所做的更改发回数据人为地 - 即低频率。这对于从数据库读取数据来说并不一定是正确的,在那里我可以预计有几个高峰期的大量读取,我希望快速。
- 我最害怕的是用户在显示一个复杂的记录时(因为必须从数据库中读入)才会感觉到缓慢。
书中只有87页!你怎么能得到第165页? – 2013-03-21 00:46:34
书中有500多页。 – bancer 2013-03-21 00:52:10