免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: eye_onme
打印 上一主题 下一主题

读写文件不是效率很低的嘛,那么数据库为何效率高呢 [复制链接]

论坛徽章:
0
121 [报告]
发表于 2007-01-30 03:05 |只看该作者
现在的文件系统都朝数据库方向迈进了。

论坛徽章:
0
122 [报告]
发表于 2007-01-30 08:46 |只看该作者
原帖由 longshort 于 2006-11-12 18:49 发表

描述得太复杂了,其实事情本来并没这么乱。很简单:

write 是操作系统提供的系统调用,用不用到缓冲其实并不重要。数据库系统在写硬盘时也调用write,当查询处于事务处理方式时,write之后再调用一下另一个系 ...



数据库要维护自己的buffer. 字典表会一直保存在数据库维护的buffer, 还有表的索引. 数据的缓存策略数据库间又不同. 数据库的缓存策略还要和SQL语句优化相结合, 会影响buffer分配, 进而影响到哪些文件会写回磁盘

[ 本帖最后由 Edengundam 于 2007-1-30 08:56 编辑 ]

论坛徽章:
0
123 [报告]
发表于 2007-01-30 08:54 |只看该作者
原帖由 hubertCD 于 2005-11-28 10:44 发表
write/read 过程实际上就是操作系统调用某个中断的过程int 13
所以读写文件的过程可以看成:          操作系统fs -> int 13中断

数据库系统在没有使用裸设备的时候,   数据库系统 -> 操作系统fs -> ...


DB的目标应该是ACID. 为什么就是数据库让应用开发人可以摆脱对数据的管理, 并提供并发, 可靠性还有一致的数据操作, 定义接口.
操作系统的文件系统对于数据库来说粒度太粗了. 数据库经常用的heap file. 就是为了细粒度的进行管理. ORACLE的裸设备也是为了能绕过OS, 自己管理文件系统.

论坛徽章:
0
124 [报告]
发表于 2007-01-30 13:19 |只看该作者
多简单一个问题,如果数据库比不上文件,那数据库卖给谁?
还有informix的数据库就有建立在裸设备上的(裸设备就是连文件分配表都没有的分区),你怎么read?
还一套一套的

论坛徽章:
0
125 [报告]
发表于 2007-01-30 13:21 |只看该作者
我只看了前面几页,中间得没看,不知道有没有人说到这个

论坛徽章:
0
126 [报告]
发表于 2007-02-06 23:28 |只看该作者
B+树的结构,CACHE+I/O

论坛徽章:
0
127 [报告]
发表于 2007-07-26 23:13 |只看该作者
好帖子收藏了

论坛徽章:
0
128 [报告]
发表于 2007-07-27 16:28 |只看该作者
内存数据库速度比较快~

论坛徽章:
0
129 [报告]
发表于 2007-11-10 22:10 |只看该作者
很多人都没自己建过裸设备就在这儿乱说,裸设备对于操作系统的文件系统来讲是不可见的,
操作系统可以看到这个设备,但没有把这块设备用来存放文件,你想用操作系统的命令来在这个设备上建文件是不可能的。
有人说用read,write来操作裸设备,read,write是操作系统的文件操作指令,连裸设备在哪儿都找不到,怎么可能把数据
写到裸设备上,真是可笑。

论坛徽章:
0
130 [报告]
发表于 2008-02-06 17:33 |只看该作者
单纯读写一个字符文件系统更快没问题吧?有人非得要用什么海量数据的读写来比较他们的速度,不是这么比的。你用你自己写的读写算法来和成熟的数据库厂商花了若干亿做出来的数据库系统比,可能比得过吗?问哪个快,是文件读写快,说海量数据读写,那设计高效的文件读写算法(包括算法、缓存思想等)来比,数据库还是比不过的。
还有人说数据库慢为什么还要用数据库?因为数据库管理大量的数据比较方便。去找一本数据库书,看看,在从文件存储到数据库存储转变的时候没有人说是因为发现了速度更快的方法而去用数据库的,一直都是说数据库在管理数据方面的优势才去用数据库的。

就算再爱数据库这东东也不能认为数据库都是好的啊。搜索引擎有用数据库系统的吗?
如果GOOGLE、百度的数据服务器用哪个数据库来存储,可能你现在用GOOGLE得慢死。按一个网页的内容10K来算,五亿个页面来多少G的数据量?用数据库?每天几百万上千万的用户查询不同的关键字,用数据库来在五亿或十亿条数据里查找,数据库的速度远远达不到,所以他们开发了自己的存储系统,做大量的索引文件。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP