sqlserver的并发处理能力到底如何呀?高手都说说?

好记忆不如烂笔头abc 2010-12-21 03:28:41
希望对比一下oracle数据库介绍一下。
听说的oracle的并发处理能力比sqlserver强很多哦。
...全文
1051 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
huhyb 2010-12-22
  • 打赏
  • 举报
回复
说的太好了
lcw321321 2010-12-22
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 ohfox 的回复:]
而且oracle中是不管理锁的,锁不是一种开销,与sqlserver中类似的锁概念的东西是保留在块里面的,oracle并不维护一个锁的列表,处理数据就是到达这一行,看是否被锁定(信息保存在块里面),如果没锁定,读取,如果锁定了,找数据的上一个版本.

sqlserver会管理锁的,锁是一种资源,多了的话开销很大,因此会锁升级.
[/Quote]
SQL 2005 已经解决了读写锁分离了,如快照隔离等级
但像反向索引 等,其它因素也会影响到并发.不过只要MS SQL 设计的好,一般应用应该不是问题,如果设计不好,就算ORACLE更加也会痛苦万分的.因为ORACLE 管理的更细,对技术细节要求更加严格.
ohfox 2010-12-21
  • 打赏
  • 举报
回复
在并行插入方面,oracle管理一个freelist的结构,可以为表配置不同的并行级别
旅行者I号 2010-12-21
  • 打赏
  • 举报
回复
oracle只使用行锁,mssql是混合粒度锁,混合锁在并发时更容易产生死锁,所以mssql的并发能力低一些
guguda2008 2010-12-21
  • 打赏
  • 举报
回复
ORACLE的定位本来就是在MSSQL之上的,MSSQL适合的还是中小型数据库。而具有大并发量的要示是大公司大系统,要么是设计超料的小系统。
ohfox 2010-12-21
  • 打赏
  • 举报
回复
而且oracle中是不管理锁的,锁不是一种开销,与sqlserver中类似的锁概念的东西是保留在块里面的,oracle并不维护一个锁的列表,处理数据就是到达这一行,看是否被锁定(信息保存在块里面),如果没锁定,读取,如果锁定了,找数据的上一个版本.

sqlserver会管理锁的,锁是一种资源,多了的话开销很大,因此会锁升级.
ohfox 2010-12-21
  • 打赏
  • 举报
回复
oracle没有未提交读隔离级别的,oracle只有写会阻塞写,读不阻塞写,写也不阻塞读,通过oracle的undo实现的

sqlserver的默认的已提交读隔离级别,写是阻塞读的,读也阻塞写
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 dawugui 的回复:]
引用楼主 jycjyc 的回复:
希望对比一下oracle数据库介绍一下。
听说的oracle的并发处理能力比sqlserver强很多哦。

不是听说,是肯定oracle的并发处理能力比sqlserver强很多.
[/Quote]
老大,能否从原理上或实际处理数据对比给大家讲讲呀?
dawugui 2010-12-21
  • 打赏
  • 举报
回复
[Quote=引用楼主 jycjyc 的回复:]
希望对比一下oracle数据库介绍一下。
听说的oracle的并发处理能力比sqlserver强很多哦。
[/Quote]
不是听说,是肯定oracle的并发处理能力比sqlserver强很多.
billpu 2010-12-21
  • 打赏
  • 举报
回复
任何多进程(线程)系统都会有并发的问题

34,835

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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