您的位置:程序门 -> .net技术 -> c#



c#  搜索的时候 读xml文件快 ,还是数据库快


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


c# 搜索的时候 读xml文件快 ,还是数据库快
发表于:2008-01-22 11:05:21 楼主
数据库有张视图   牵连很多表

如果我一次把所有数据都读出来,做成   xml文件,然后用程序在xml里找     会不会更快

如果xml快的话

      再比较下

把视图单条数据做成xml文件   (就大概有几万个xml文件)     这样的话会怎的

@常规读很复杂的sql视图         @读视图做成的单个xml文件       @读单条数据做成的xml文件群(直接文件名配比)

那个快

发表于:2008-01-22 11:09:121楼 得分:0
理論上   xml   會更快,因爲vs非常支持xml   內部機制有   特別優化.但是   在   讀   xml的時候   會卡,慢一些.尤其是大數據量
发表于:2008-01-22 11:10:142楼 得分:0
霸王举顶
发表于:2008-01-22 11:11:063楼 得分:0
程序启动时全部读出来,放到一个服务器端的数据结构里(几万个记录,数据量不大),每次要读的时候,直接在在服务器里读。
发表于:2008-01-22 11:11:554楼 得分:0
我感觉数据库好一点
发表于:2008-01-22 11:24:195楼 得分:0
那么基本就是   xml快了

再往下看呢


@读视图做成的整张表的xml文件               @读单条数据做成的xml文件群(直接文件名配比)  
发表于:2008-01-22 11:31:466楼 得分:0
up
发表于:2008-01-22 11:32:377楼 得分:0
理論上讀數據庫性能會好一些。具體速度會受實際情況影響。比如數據庫是否與程序在同一服務器還有硬件配置等
发表于:2008-01-22 11:36:328楼 得分:0
哈哈,我的东西是做成活的,到时想咋整就咋整。
现在暂时是用xml,配置文件下也好几千个xml了,当然这些xml我们专门写了配置工具,要改是很容易的。
今后实在是感觉太多文件难管理时就直接导入到数据库,改用数据库引擎。数据库维护及更新会方便些。
发表于:2008-01-22 11:44:259楼 得分:0
服务器么   双通   6300esb   p4   2.8g   2g内存

数据假设是10000条
发表于:2008-01-22 12:53:1110楼 得分:0
up
发表于:2008-01-22 12:58:0111楼 得分:0
搜索用lucene啊
发表于:2008-01-22 13:05:5712楼 得分:0
毫无疑问,当然是sqlserver快.
发表于:2008-01-22 14:25:3813楼 得分:0
我就是来看看
发表于:2008-01-22 15:51:5314楼 得分:0
up
发表于:2008-01-22 16:04:0615楼 得分:0
没有研究做基础   !不知道!
发表于:2008-01-22 16:29:3016楼 得分:0
感觉数据量小的时候xml快,上了百万条就一定是数据库快了,数据库有索引嘛。

你那10000条直接放在内存里读,最快了。不需要做成文件。
发表于:2008-01-22 16:30:3417楼 得分:0
自己在内存里弄一个自定义的数组或者dataset读起来很方便的,又快。
发表于:2008-01-22 17:24:0518楼 得分:0
数据量比较小的时候xml快,数据量大时肯定数据库快。
xml没有任何索引等等机制。又是文本文件。xml文本更快的话,就没必要有数据库了。呵呵。
发表于:2008-01-22 17:39:0919楼 得分:0
帮顶!!
发表于:2008-01-22 20:37:5020楼 得分:0
数据量大当然直接读数据库快啦...
发表于:2008-01-22 22:37:2421楼 得分:0
当然数据库快乐,特别是大数据量的时候,
因为数据库可以加索引,进行优化,但xml不可以,只是文本
发表于:2008-01-22 23:41:3122楼 得分:0
这种问题自己动手测试一下就知道了

路过蹭分。
发表于:2008-01-22 23:47:4423楼 得分:0
如果xml数据少当然是xml快,如果数据多的话还是数据库好一点!
发表于:2008-01-23 00:19:3124楼 得分:0
举双脚赞成数据库快.数据库是2进制,xml是文本,是多少进制?65k进制,哈哈.你存10000个int,看看数据库多大,然后看看xml多大.哈哈,结果吓死你.
要更快,就要建索引了.或者采用别的暂存技术.
发表于:2008-01-23 00:49:3025楼 得分:0
如果数据相对比较少的话,应该是xml快点
但是访问大数据的话,数据库肯定快了
发表于:2008-01-23 00:56:5126楼 得分:0
读到内存里,从内存里面读,这样是最快的.表其实就一2维的数组.
发表于:2008-01-23 09:06:3227楼 得分:0
xml快,数据库的读取是xml的格式进行的
发表于:2008-01-23 09:22:0328楼 得分:0
数据相对较少的话,xml快  
大量数据的话,数据库快
发表于:2008-01-23 10:35:0429楼 得分:0
数据量大的话用数据库快,数据量小的话没有必要用xml,不用考虑更新数据的问题,如果追求性能的话可以在数据库表中通过建索引、表空间分区、物化试图(数据量变动小时使用)等方式实现!
对于数据变动少或不会变动的可以考虑用xml。
发表于:2008-01-23 10:38:3830楼 得分:0
这个事情肯定是这样的:

xml适合数据少的情况;
db适合数据多的情况。

由于lz并没有说他想在什么情况下操作数据,比如数据量、列数、表现形式等,所以以上各位所说的都是一些标准的解释。
发表于:2008-01-23 10:42:0131楼 得分:0
在数据量小的时间的话用xml比较快的

但是如果数据量大的时候用数据量更快

视具体情况而定的
发表于:2008-01-23 11:24:4632楼 得分:0
这个应该看数据量吧,数据量越大用数据库越好
发表于:2008-01-23 11:28:0933楼 得分:0
看数据量,和你是否需要数据库的特性
发表于:2008-01-23 13:39:0234楼 得分:0
个人认为数据库会快一些
读到xml里面的话,写入和提取的时间也是个问题。
发表于:2008-01-23 13:42:2635楼 得分:0
数据量比较小的时候xml快,数据量大时肯定数据库快
发表于:2008-01-23 13:44:4436楼 得分:0
一堆人都在胡说八道,什么数据量不数据量的,不管是读什么文件,只要是读文件的,都没有读数据库快!
发表于:2008-01-23 13:51:0037楼 得分:0
看数据量的大小了   大的用数据库     小的用xml
发表于:2008-01-23 14:07:2638楼 得分:0
一堆人都在胡说八道,什么数据量不数据量的,不管是读什么文件,只要是读文件的,都没有读数据库快!

没错。呵呵。。但居然有人说理论上xml快。。不知怎么得到这结论的。。呵呵。。
发表于:2008-01-23 15:03:2039楼 得分:0
说数据库快的给点依据吧,我们也学习一下


快速检索

最新资讯
热门点击