System for database integrity with multiple logs assigned to client
subsets
    1.
    发明授权
    System for database integrity with multiple logs assigned to client subsets 失效
    具有分配给客户端子集的多个日志的数据库完整性系统

    公开(公告)号:US5499367A

    公开(公告)日:1996-03-12

    申请号:US330100

    申请日:1994-10-27

    IPC分类号: G06F11/14 G06F17/30

    摘要: The present invention provides a distributed log system where the logs are distributed on a per client basis. That is, the clients are partitioned into subsets. Each subset of clients is assigned a log, and the the redo records of those clients are maintained in that log. This reduces contention bottlenecks, because the number of clients writing to any one log is limited. Also, all of a client's changes are stored in a single log. During a recovery process, the changes for a block of data may be stored in different logs. For proper recovery, the changes must be applied to the database in the order in which they were originally made. The present invention provides a system for ordering the log entries in the correct order by using a "sequence number". Each page of data in the database has an associated sequence number. When a change is made to that page, the sequence number is incremented. The new sequence number is written to the log along with the change information. To minimize overhead, the sequence number is structured as a two part value. The first part of the value is an "incarnation number" that is increased whenever the associated change assigns a new value to the entire data block that is independent of its prior value, such as the change that initiates a block.

    摘要翻译: 本发明提供了一种分布式日志系统,其中日志在每个客户端基础上分发。 也就是说,客户端被分割成子集。 客户端的每个子集被分配一个日志,并且那些客户端的重做记录被保留在该日志中。 这减少了争用瓶颈,因​​为写入任何一个日志的客户端数量有限。 此外,客户端的所有更改都存储在单个日志中。 在恢复过程中,数据块的更改可以存储在不同的日志中。 为了正确恢复,必须按照最初制作的顺序将更改应用于数据库。 本发明提供一种通过使用“序列号”以正确顺序对日志条目进行排序的系统。 数据库中的每一页数据都具有相关的序列号。 当对该页面进行更改时,序列号将增加。 新的序列号与更改信息一起写入日志。 为了最小化开销,序列号被构造为两部分值。 该值的第一部分是每当关联的更改为独立于其先前值的整个数据块分配新值(例如启动块的更改)时增加的“化身数”。