100分求:经常更新的数据表用什么数据结构效率高?Dictionary、Linq、数据库还是DataTabel之类?

Felomeng
博客专家认证
2008-12-12 09:02:25
数据量不大,存储体积总共也就是10M量级,所以想通过把它全部放进内存里面提高操作效率。
数据表结构为一个关键字段+三到五个数据字段(当然,可以定义为结构体,不需要对其进行查询操作)。

操作主要是通过关键字查找到相应的字段,对字段内的数据字段进行添加和更新(insert和update),更新频率非常高,不知道用哪个方法效率高?谁做过给我说一下。



...全文
249 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangping_li 2008-12-13
  • 打赏
  • 举报
回复
[Quote=引用楼主 Felomeng 的帖子:]
数据量不大,存储体积总共也就是10M量级,所以想通过把它全部放进内存里面提高操作效率。
数据表结构为一个关键字段+三到五个数据字段(当然,可以定义为结构体,不需要对其进行查询操作)。

操作主要是通过关键字查找到相应的字段,对字段内的数据字段进行添加和更新(insert和update),更新频率非常高,不知道用哪个方法效率高?谁做过给我说一下。 [/Quote]
你的数据量不大,主要是在你取数据的时候,用存储过程+索引取
内存中更新数据很快的,哪种都可以
不管你用Dictionary还是DataTable可以使用linq来操作,建议使用Dictionary,或者你所理解的linq
royal1 2008-12-12
  • 打赏
  • 举报
回复
LZ用的数据库如果是oracle的话,可以用Times Ten作为数据库的前端Cache,这种内存数据库效率极高!
jackyren007 2008-12-12
  • 打赏
  • 举报
回复
不管用那种方法.

在经常执行insert update delete 的表或者数据库上.

可以利用batch晚上自动执行VOCUUM FULL ANANYZE

这样数据库,表的速度会好很多的.

特别是数据库数据量特别大的情况.

zhnzzy 2008-12-12
  • 打赏
  • 举报
回复
用数据库更新很方便直接放到表里面,你数据量不大,怎么更新都可以
CloneCenter 2008-12-12
  • 打赏
  • 举报
回复
在内存中速度差不了多少的,用 DataTable 吧,简单方便。
cpio 2008-12-12
  • 打赏
  • 举报
回复
只要有主键,查询、更新通过主键进行,应该很快

内存中更新很快
wuyq11 2008-12-12
  • 打赏
  • 举报
回复
通过存储过程和索引实现,优化SQL语句。
yueyebohe 2008-12-12
  • 打赏
  • 举报
回复
呵呵,和我现在要做的东西很像,有人建议我用LINQ,不过我用的是.net05,还不能用LINQ,帮你顶吧,等着高手来解答~
wjl0303 2008-12-12
  • 打赏
  • 举报
回复
在C#里用电子字典,也就是把他放在缓存中,在用一个timer定时更新,同时释放内存,如果是插入就直接操作数据库,这个方法就是不够实时,而且是针对一个操作的时候,多个人操作就有问题

110,571

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧