数据库 读写分离 为什么提高性能 2009-04-12 vic732 请教 大家,数据库读写分离为什么能够提高性能,难道在数据库同步的时候,就不需要资源,不产生事务么?网上找资料 也没有解释原理的[该贴被admin于2009-04-26 08:32修改过]
usejava 2009-04-20 13:23 是不是指单独复制一份数据到另外的报表服务器。报表服务器只做查询?数据库提高读取效率的第一选择不是缓存,而是索引。但是维护索引有开销,会降低增删改性能。所以,为提高修改和读取性能所做的优化是冲突的,分开可以单独优化。
fireflyc 2009-04-22 23:13 问题在文件系统上,数据库的读写最终要压在文件系统上的。而操作系统对文件块的操作是加锁的。所以假如在一个文件块上既有数据读取也有写入,那么就没有办法并发了。。所以就自然慢咯。。。
beepbug 2009-04-24 17:34 目前大多数数据库是不通过系统访问的。通过系统访问,确实效率极低。大体上说,就是数据库系统向操作系统申请一块连续的硬盘空间建立一个大文件,然后在里面建立数据库。当记录增加到不能容纳时,就再建立一个文件。这个就是数据库的物理结构。而我们平时打交道的,叫数据库的逻辑结构。[该贴被beepbug于2009-04-25 20:14修改过]
beepbug 2009-04-27 07:21 你可以去看看如何访问一般文件,Oracle又是如何访问数据的。至于>>>裸设备是数据库自己管理硬盘,和操作系统无关,可是使用起来很麻烦。 那是不行的。你至少得告诉系统,我占了这块一亩三分地。Oracle实际上是自己在管理物理空间。但是,它必须告诉系统,我用了这块。[该贴被beepbug于2009-04-27 07:37修改过]
usejava 2009-04-27 11:33 同意裸设备也要在系统中登记一下,但是操作系统不再负责其它管理,没有文件系统,没有数据缓存,这些都要应用程序自己来管理。所以裸设备不是通过操作系统建立文件。因为不使用系统管理,没有文件系统,常用的备份工具都不能用,所以我说管理比较麻烦。另外,直接基于磁盘,不太清楚是否还可以使用RAID,有哪位兄弟可以讲一下。
ACoder 2009-04-28 10:16 对于数据库的备份难道你用COPY文件的方式??数据库本身提供了镜像、在线备份、离线备份,增量备份、日志备份这些方式难道还不够你使用??备份可以直接备份到文件系统的,对于备份文件你可以正常的使用文件系统管理,也可以进行备带处理。裸设备跟RAID无关,RAID是是纯硬件级别的。