按照我的理解,你的数据一旦采集,就成为历史数据。而且,在采集的时候,并不需要打开历史数据。你的问题是不是可以描述成:因为某种需要,只保留一个历史文件,而且要绝对的安全,还要保证实时性?那么我的建议是:1、用足够大的内存,把部分内存做成虚拟硬盘;2、采集系统把数据写到这个虚拟硬盘上;3、启动一个后台程序,把虚拟硬盘上的数据写入历史数据文件。这样避免了采集时打开巨大的历史文件,同时保证了查阅历史文件的程序的简单化。因为采集时不操作历史文件,也减少了该文件的损坏程度。如果你还觉得不够绝对安全,建议你再买一块硬盘,那个后台进程同时写两个历史文件。你说的那种access打开临时文件的方法不适合你这样大的文件,更不适合你要求的实时性。粗浅的看法,希望对你有帮助。
解决方案 »
- 拜求:想用webbrowser来navigate有道和必应,但是网址带中文关键词时会变成乱码,要怎么解决呢?谢谢!!
- VB中怎样获得一个二维数组末维的数值
- 用户控件的所有者是什么,怎么表示呢。谢谢了,急急...
- 安装了VS6.0,首次打开VSS的时候要求用户和密码,请问这个有没有初始的默认用户和密码的?
- 请问listview控件中的表头中的列怎么用
- 高分求购学生成绩管理系统
- 【求助】关于VB如何利用Excel的加载宏(水蒸气热力性质)
- 关于combo控件的问题,解决后现场给分
- 哪有水晶报表下截,急!
- 如何修改文件夹属性
- 谁做过药房管理得程序
- 请高手指点:为什么不能给.DBF数据库的字段附值,程序如下:
说实话,我真的想哭!!!
http://google.yahoo.com/bin/query_gb?p=%ca%fd%be%dd%bf%e2+%c1%d9%ca%b1+%b1%b8%b7%dd+vb&hc=0&hs=0
我原先想把当前采集的数据先保存到一个临时的文件中,然后再定期的导入那一个自定义的数据库大文件中。不知道这样做是否合理?
其实,我觉得你应该很不错的。人有其长亦有其短,舍其短而取其长者也。
同样是1G的数据库,商业数据库的速度比你自己写的数据引擎快的多。而且速度也快,如果进行适当的优化对于系统的开销并不算大。我问一下,1G的数据如何做分类查询?全部读到内存里吗?分块读取运算又是一个很麻烦的事情。Access数据库超过300MB就动不了了。使用文件数据库是铁定不行的。我推荐使用MSDE桌面数据引擎,小巧、强大而且价格低廉(VisualStudio6、SQLServer7、SQLServer2000光盘都有附带赠送)。对于商业系统来说,1个月的数据就可能有1G,而访问的数据量绝对比你的系统要大的多(注意:是指访问的数据量、而不是次数)。使用SQLServer或者Oracle应付绰绰有余。
省事又稳定!
FIX独特的数据库格式很省空间,速度也快!
我所存贮的历史数据不过是一种时间顺序的记录,
不需要查询和排序的。没有通用数据库的那么多功能?
TO 001chb(chb):
不知道你用各种组态软件有什么感想?我的感想是通用性太强,所以处理一些细节时很不得力。
你的论述比较有见地,不知道给你50分够了没有?如果不够请说话,还可以加。