【字符串映射】大量的数据映射
VB.NET平台。
有大量数据需要映射。
即 一个ID 对应一个字符串。
如果把所有的字符串都加载都内存中,占内存会很大。
如果从文件中加载,又会影响速度。
各位有什么好的方法么?
主要是速度要快。
描述一下吧。
大约有大约要映射1000个字符串。
txt文本,大约有3.5MB左右(纯字符)
[解决办法]
不大
就放内存
关键是修改操作较频繁,用stringbuilder
[解决办法]
1000个还好意思说大?你想怎么做就怎么做。
[解决办法]
我当你有3.5GB呢?
[解决办法]
如果数据量比较大的话还是使用数据库来存放,这样在定位时会很快(连接虽然耗时间,但经常的读取必然会配上如连接池一类的处理),而且在数据的管理上比TXT有更大的灵活性。
只是要性能的话当然是在内存中进行缓存,但若是数据量并非确定,而且较大时就不可能全部进行缓存。这时你是可以定一些策略,比如在表中加字段来存放最后定位的时间以及总定位次数等。每次缓存时则可以考虑这些规则来进行有限的缓存--例如按最后定位时间取1000笔进行缓存等。
[解决办法]
你的3.5MB是单个3.5MB还是1000个总共1000MB?
[解决办法]
单个3.5MB的话还可以帮你搞一搞,如果总共1000个有3.5M的话 那你就该干嘛干嘛去吧。。。把帖子结了就好了