本文在分析比较各种传统的维护数据库物理一致性的方法的基础上提出了一种既经济又实用的维护恢复策略,即延缓写盘的DLRU(Delay Least Recently Used)缓冲策略。这种方法改变了传统的LRU策略。LRU策略对于被排挤出缓冲区的块,若已改动,...本文在分析比较各种传统的维护数据库物理一致性的方法的基础上提出了一种既经济又实用的维护恢复策略,即延缓写盘的DLRU(Delay Least Recently Used)缓冲策略。这种方法改变了传统的LRU策略。LRU策略对于被排挤出缓冲区的块,若已改动,则立即将该块回写到盘上以便让出空间读进新块,而DLRU遇此情况,则将该快接到LRU链尾上(使它不被挤出的优先级最高),顺链继继找下去,直到找到未被改动过的块为止,在此过程中凡遇改过的块都依次接到链尾上,新读进的块就覆盖在所找到的未被改动的块上。如果整个缓冲区都已改动,则将缓冲区的所有块排序后一次性回写到外存上。如果系统在回写前发生了故障(各种故障),则用户键入一“作废”命令就将缓冲区中的全部块废除;如果用户在一系列的更新(增删改)操作后未发生异常,则键入“生效”命令,系统接到此命令后立即将缓冲区中所有块排序后写盘。当发生前述的缓冲区所有块都改过(且此时缓冲区已满)而用户至此未发生“生效”或“作废”命令,则系统暂停运行,强迫用户在“生效”和“作废”中必选一操作。为防止在回写过程中发生故障,此法要与其他方法配合使用。展开更多
文摘本文在分析比较各种传统的维护数据库物理一致性的方法的基础上提出了一种既经济又实用的维护恢复策略,即延缓写盘的DLRU(Delay Least Recently Used)缓冲策略。这种方法改变了传统的LRU策略。LRU策略对于被排挤出缓冲区的块,若已改动,则立即将该块回写到盘上以便让出空间读进新块,而DLRU遇此情况,则将该快接到LRU链尾上(使它不被挤出的优先级最高),顺链继继找下去,直到找到未被改动过的块为止,在此过程中凡遇改过的块都依次接到链尾上,新读进的块就覆盖在所找到的未被改动的块上。如果整个缓冲区都已改动,则将缓冲区的所有块排序后一次性回写到外存上。如果系统在回写前发生了故障(各种故障),则用户键入一“作废”命令就将缓冲区中的全部块废除;如果用户在一系列的更新(增删改)操作后未发生异常,则键入“生效”命令,系统接到此命令后立即将缓冲区中所有块排序后写盘。当发生前述的缓冲区所有块都改过(且此时缓冲区已满)而用户至此未发生“生效”或“作废”命令,则系统暂停运行,强迫用户在“生效”和“作废”中必选一操作。为防止在回写过程中发生故障,此法要与其他方法配合使用。