Database 我能合理地使用字典(整数、结构)而不是RDBMS数据库吗?
我目前正在开发一个项目,将在一台PC上为一个用户一次使用一个小表(总容量小于10兆字节)。(当然,许多计算机上都会安装) 我说小是因为10MB看起来像是我电脑上当前可用RAM的1/300(!) 在该表中,我将存储XML文档形状的字符串或每个2到4KB的元素 为了避免RDBMS的巨大开销和困难的安装过程,我的问题是: 将表作为字典(键、值)运行是否合理,我将在其中创建、更新和删除项,并对其执行LINQ查询 加载(反序列化)时间是否与连接SQL Server compact edition数据库所需的时间相当 我是否能够通过以下方式LINQ查询项目的值部分:Database 我能合理地使用字典(整数、结构)而不是RDBMS数据库吗?,database,linq,Database,Linq,我目前正在开发一个项目,将在一台PC上为一个用户一次使用一个小表(总容量小于10兆字节)。(当然,许多计算机上都会安装) 我说小是因为10MB看起来像是我电脑上当前可用RAM的1/300(!) 在该表中,我将存储XML文档形状的字符串或每个2到4KB的元素 为了避免RDBMS的巨大开销和困难的安装过程,我的问题是: 将表作为字典(键、值)运行是否合理,我将在其中创建、更新和删除项,并对其执行LINQ查询 加载(反序列化)时间是否与连接SQL Server compact edition数据库所需
Dim Results = from r in myDictionnary
where r.Value like "*mySearchString*"
Select r
for each aChunk in Results
dim xChunk as xElement = xElement.parse(aChunk)
etc...
next
非常感谢您提供的任何线索。提前谢谢这本词典应该很好用。Linq查询也可以工作
如果它比单个表复杂得多,我会考虑像MySQL或SQLServer Cu压这样的嵌入式数据库。
< P>这个解决方案会很好,并且加载时间应该几乎是瞬时的。现在10MB的数据并不多,所以读取时间将非常短,反序列化XML的速度将非常快 但是,请理解,内存中的数据库将缺少RDBMS或noSQL解决方案所带来的一些好处。最重要的是,在用户关闭程序或保存数据库之前,对数据库的更改不会持久化。如果程序崩溃或系统断电,则自上次保存以来对内存中数据库所做的所有更改都将丢失 显然,如果“表”是只读的,这不是问题