Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么Oracle反向键索引不';不会导致缓慢的随机写入?_Oracle - Fatal编程技术网

为什么Oracle反向键索引不';不会导致缓慢的随机写入?

为什么Oracle反向键索引不';不会导致缓慢的随机写入?,oracle,Oracle,Oracle的反向密钥索引解决了B树索引右侧叶块的争用问题。但另一方面,反向键索引将导致随机写入。为什么内存争用比磁盘随机写入更糟糕 编辑:Microsoft对SQL Server的建议基本上是相同的,争用停止用户会话的执行,而写入(除了直接路径)是异步的——它们由DBWR进程执行,唯一的同步磁盘写入是LGWR写入重做日志项 一个更大的问题可能是,在某些情况下,您更可能需要内存中更多的索引段,因为“最近”的更改分布在比常规索引多得多的块上,因此可能值得关注段统计信息,但是,即使出现了问题,相对于

Oracle的反向密钥索引解决了B树索引右侧叶块的争用问题。但另一方面,反向键索引将导致随机写入。为什么内存争用比磁盘随机写入更糟糕


编辑:Microsoft对SQL Server的建议基本上是相同的,争用停止用户会话的执行,而写入(除了直接路径)是异步的——它们由DBWR进程执行,唯一的同步磁盘写入是LGWR写入重做日志项


一个更大的问题可能是,在某些情况下,您更可能需要内存中更多的索引段,因为“最近”的更改分布在比常规索引多得多的块上,因此可能值得关注段统计信息,但是,即使出现了问题,相对于你可能花费时间在的所有其他事情来说,这个问题也可能是一个小问题。

托马斯·凯泽尔在这里回答了这个问题,但有很多争议。在某种程度上,顺序插入似乎更好,然后扇出写入开始获胜。

这不是磁盘搜索。在任何一种情况下,最初都会写入缓冲区缓存。