讨论:xml与sql2000(800分讨论) 100jerry_yuan]

发布时间:2016-12-8 10:14:37 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"讨论:xml与sql2000(800分讨论) 100jerry_yuan]",主要涉及到讨论:xml与sql2000(800分讨论) 100jerry_yuan]方面的内容,对于讨论:xml与sql2000(800分讨论) 100jerry_yuan]感兴趣的同学可以参考一下。

我们现在正在做一个收藏夹的项目,因为数据量大考虑以下两种方案不知哪种性能更好,请大家来讨论(此讨论在多个板块开发出,请大家关注)。 问题:我们网站有几十万的注册用户,现在给注册用户开通网页收藏夹的功能,每位用户可以收藏若干个网址(内容包括网址、用户评论等)假如每位用户收藏200条录,那么50万的用户,总共就会有一亿条记录(要对这1亿条记录进行添、删、改、检索的操作)。 方案1:运用xml+sql2000来荐储数据。对第位用户建一个xml,用xml来存储用户的收藏夹,sql2000里只存储标题及关键字(便于搜索)用户每次对自己的收藏夹操作时,只要修改用户的xml文件,只有查询时才对sql2000数据库进行查询操作。 方案2:所有信息全部放在sql2000里,每次操作直接在sql2000中完成。 条件:必须用mssql数据库 请大家讨论看哪种方案更好或有其它的方案,并说明理由。

建议放在数据库里面,在userid上面建立聚集索引(每个用户只会看自己的记录)速度不会慢

不知道你的应用是什么等级的(频繁程度和重要程度)。 如果是做门户或重要的客户应用,你应该做个demo,来实际检验一下。下面的只是简单的看法。 第一个方案。 优点:这种方案的优点是降低了数据库的压力,减少了数据库层和应用层的网络负担。并且在修改过程中避免了事务的竞争,对高并发修改很有好处。 缺点:但是它的缺点也很明显。那就是xml的查询速度如何保障。备份恢复如何做?是否涉及到资料保密。xml的查询过滤速度要比数据库的查询慢很多,如果用户频繁查询(或者在前端页面频繁展现)将会造成一定的性能影响。 解决参考: 1、针对xml查询,你可以考虑你的查询xml的工具性能如何,或你们自己做的遍历算法是否合理。 2、在前端页面展现的时候最好进行懒加载,当用户实际要使用的时候,再加载相应的数据层。数据的层次要规划好。 第二种方案。 优点:精确查询有好处,而且可以对数据加密,保证数据安全。可以备份恢复。 缺点:这要看你的数据库规划和数据库表设计的功底了。如果设计不好(最极端的例子),将所有的数据放在一个表中。那会由于锁的原因,导致你的应用会很慢(无论是查询,还是更新)。 解决参考: 可以考虑使用多个数据库(可以分担I/O)。然后你要在应用层或数据库层建立一个映射,将你的用户对应到相应的数据库和相应的表中进行操作。 例如:你的例子,50万用户,每个用户200条记录。 你可以规划成在一个实例中10个数据库,每个数据库5万用户。每个数据库中建立10个表。 每个表将分得100万记录。这里关键的是你的客户如何划分,必须有一定的规则,如注册日期。然后你可以根据客户分布在哪个数据库、哪个表做一个映射表(存放记录的范围和数据库、表的映射要100条记录)。当需要查询或更新的时候,先通过映射表找到需要操作的表,然后再到那个表中进行操作。这个方案在规划的时候可能比较麻烦,但是运行效率会很高。你可以参考。

用XML性能也好不起来

斑竹所言极是 顶! XML应该不行 缺点很多 1 不好维护 (需要额外维护众多XML文件) 2 性能低下 (需要磁盘额外访问XML文件,读取并加工) 3 系统扩展差

顶,学习~

顶吧

第二种方案要安全和高效一些,对XML的解析需要大量的内存,并且在第一次调入内存时是比较慢的.方案2的关键是如何平衡数据冗余和性能,所以表结构的设计非常的关键,而且SQL SEVER对于SQL的脚本优化和数据量有非常大的关系,所以建立测试环境非常重要. 请参考: http://blog.csdn.net/leimin/archive/2004/02/04/12896.aspx ashzs((可以包含中文字符)) 的分区表的方法是非常好的一个解决方案.

用webservice吧

上一篇:sql server 2005 设定job后如法执行task flow 100youngahu]
下一篇:vs2005自带的sql2005 express版怎么用 20dearpanan]

相关文章

相关评论