System, structure, interface, and semantics for implementing row versions: accessing past versions of a data item
    21.
    发明授权
    System, structure, interface, and semantics for implementing row versions: accessing past versions of a data item 有权
    用于实现行版本的系统,结构,接口和语义:访问数据项的过去版本

    公开(公告)号:US07941408B2

    公开(公告)日:2011-05-10

    申请号:US10934079

    申请日:2004-09-03

    IPC分类号: G06F7/00 G06F17/00

    CPC分类号: G06F17/30309

    摘要: Disclosed is a mechanism, system, interface, and process to allow specification of a new table decoration clause to obtain one or more past version of one or more data items. The version query provides for a direct interface to get multiple versions of the row(s). In addition, information about the past versions can be retrieved and displayed along with the past versions. Also disclosed are algorithms, mechanisms, and processes that are employed to implement a query upon past versions. In one approach, the version query can be defined as either “rowid”-based access or non-rowid based access. With rowid based access, a given rowid is used to identify the data for which past versions are desired. Also disclosed is a process for determining one or more life intervals when given a key.

    摘要翻译: 公开了允许指定新的表装饰子句以获得一个或多个数据项的一个或多个过去版本的机制,系统,接口和过程。 版本查询提供了一个直接接口来获取多个版本的行。 此外,可以检索和显示过去版本的信息以及过去的版本。 还公开了用于在过去版本上实现查询的算法,机制和过程。 在一种方法中,版本查询可以被定义为基于“rowid”的访问或基于非rowid的访问。 使用基于rowid的访问,给定的rowid用于标识需要过去版本的数据。 还公开了当给予钥匙时确定一个或多个生命间隔的过程。

    STORING COMPRESSION UNITS IN RELATIONAL TABLES
    22.
    发明申请
    STORING COMPRESSION UNITS IN RELATIONAL TABLES 有权
    在关系表中存储压缩单位

    公开(公告)号:US20100281004A1

    公开(公告)日:2010-11-04

    申请号:US12769205

    申请日:2010-04-28

    IPC分类号: G06F17/30

    摘要: A database server stores compressed units in data blocks of a database. A table (or data from a plurality of rows thereof) is first compressed into a “compression unit” using any of a wide variety of compression techniques. The compression unit is then stored in one or more data block rows across one or more data blocks. As a result, a single data block row may comprise compressed data for a plurality of table rows, as encoded within the compression unit. Storage of compression units in data blocks maintains compatibility with existing data block-based databases, thus allowing the use of compression units in preexisting databases without modification to the underlying format of the database. The compression units may, for example, co-exist with uncompressed tables. Various techniques allow a database server to optimize access to data in the compression unit, so that the compression is virtually transparent to the user.

    摘要翻译: 数据库服务器将压缩单位存储在数据库的数据块中。 使用各种各样的压缩技术中的任一种,首先将表(或其多行的数据)压缩为“压缩单元”。 然后,压缩单元被存储在跨越一个或多个数据块的一个或多个数据块行。 结果,单个数据块行可以包括在压缩单元内编码的多个表行的压缩数据。 数据块中的压缩单元的存储与现有的基于数据块的数据库保持兼容,从而允许在预先存在的数据库中使用压缩单元,而无需修改数据库的底层格式。 压缩单元可以例如与未压缩的表共存。 各种技术允许数据库服务器优化对压缩单元中的数据的访问,使得压缩对于用户实际上是透明的。

    High performant row-level data manipulation using a data layer interface
    23.
    发明授权
    High performant row-level data manipulation using a data layer interface 有权
    使用数据层接口执行高性能行级数据操作

    公开(公告)号:US07769789B2

    公开(公告)日:2010-08-03

    申请号:US11801930

    申请日:2007-05-11

    IPC分类号: G06F7/00

    CPC分类号: G06F17/30377

    摘要: Performing an operation directly on data stored in a database table provides for avoiding generation and processing of SQL statements. A Data Layer interface, comprising a set of APIs, allows internal database server components to call directly to the Data Layer for making fast row changes to a table. According to an embodiment, before making any row change to a table through this Data Layer interface, a shared state data structure is created to hold the metadata about the table. A single shared state can be used for all DML changes to a particular table regardless of what columns are updated or inserted during each DML operation. When a process needs to change a row, the process uses a mutable state based on the shared state of the table.

    摘要翻译: 直接对存储在数据库表中的数据执行操作可避免SQL语句的生成和处理。 包含一组API的数据层接口允许内部数据库服务器组件直接调用数据层,以便对表进行快速行更改。 根据实施例,在通过该数据层接口对表进行任何行更改之前,创建共享状态数据结构以保存关于表的元数据。 无论在每个DML操作期间更新或插入哪些列,单个共享状态可用于对特定表的所有DML更改。 当进程需要更改一行时,进程将使用基于表的共享状态的可变状态。

    Vector reads for array updates
    24.
    发明授权
    Vector reads for array updates 有权
    向量读取数组更新

    公开(公告)号:US07734581B2

    公开(公告)日:2010-06-08

    申请号:US10848869

    申请日:2004-05-18

    IPC分类号: G06F17/30

    CPC分类号: G06F17/30315

    摘要: An array update operation which specifies number of (row-identifier, value) pairs for updating rows in a table of a database is implemented as follows. A block-identifier of a block (on disk) that holds a row identified by a row-identifier in a specified pair is looked up using a database index, and the block-identifier thus found is stored in a structure. Use of a row-identifier to look up the corresponding block-identifier, and the storage of the block-identifier in the structure are repeatedly performed, for each of several specified pairs. Next, a vector read is performed, to read and store in a cache, each block identified by a block-identifier in the structure, and all the blocks that have been read are stored in the cache during a single function call. Thereafter, rows identified in specified pairs are modified, in blocks currently in the cache, using the values in the specified pairs.

    摘要翻译: 指定数据库表中更新行的(行标识符,值)对数的数组更新操作如下。 使用数据库索引来查找保存由指定对中的行标识符标识的行的块(在磁盘上)的块标识符,并且由此找到的块标识符被存储在结构中。 对于几个指定的对中的每一个,重复执行使用行标识符来查找对应的块标识符,并且对结构中的块标识符的存储被重复执行。 接下来,执行向量读取,以读取和存储在高速缓存中,由结构中的块标识符标识的每个块以及所读取的所有块在单个功能调用期间被存储在高速缓存中。 此后,使用指定对中的值,以当前在高速缓存中的块中修改以指定对标识的行。

    Proactive space allocation in a database system
    25.
    发明授权
    Proactive space allocation in a database system 有权
    在数据库系统中主动分配空间

    公开(公告)号:US07716177B2

    公开(公告)日:2010-05-11

    申请号:US11880917

    申请日:2007-07-24

    IPC分类号: G06F17/30

    CPC分类号: G06F17/30595 G06F12/0223

    摘要: A method and apparatus for proactively allocating space to a logical layer of a database is provided. Allocation of space to a logical layer of a database is an expensive operation that should be minimized. The allocation of space includes discovering free space in all the higher layers in the logical storage hierarchy. It also includes cross-domain system calls and cleansing disk-write operations. In prior approaches, the allocation processes were triggered on-demand, only a certain logical layer was discovered to be at full capacity when an insert-row operation was attempted. In one embodiment of the invention, space needs are statistically predicted based on prior rates of space consumption. The database server pre-allocates space as needed, based on the statistical predictions. Rates of consumption are examined periodically. Space is pre-allocated before any logical layer reaches full capacity by a combination of proactive background processes; foreground-triggered, background processes; and classic foreground allocation.

    摘要翻译: 提供了一种用于主动地将空间分配给数据库的逻辑层的方法和装置。 将空间分配到数据库的逻辑层是一个应该最小化的昂贵的操作。 空间分配包括发现逻辑存储层次结构中所有较高层的可用空间。 它还包括跨域系统调用和清理磁盘写入操作。 在先前的方法中,分配过程是按需触发的,当尝试插入行操作时,只发现某个逻辑层处于满载状态。 在本发明的一个实施例中,基于先前的空间消耗率来统计地预测空间需求。 数据库服务器根据统计预测,根据需要预分配空间。 定期检查消费量。 在任何逻辑层通过主动后台进程的组合达到满容量之前,预先分配空间; 前台触发,后台进程; 和经典的前景分配。

    Online recovery of user tables using flashback table
    26.
    发明授权
    Online recovery of user tables using flashback table 有权
    使用闪回表在线恢复用户表

    公开(公告)号:US07499953B2

    公开(公告)日:2009-03-03

    申请号:US10831449

    申请日:2004-04-23

    IPC分类号: G06F17/30 G06F7/00

    摘要: A method and apparatus for updating databases are disclosed. In response to a flashback request, a database object is restored to a state as of a specified flashback time. The changes introduced into the database object are reversed in a sequence starting with a change introduced into the database object immediately before issuance of the flashback request and ending with a change introduced into the database object immediately after the specified flashback time.

    摘要翻译: 公开了一种用于更新数据库的方法和装置。 响应闪回请求,数据库对象恢复到指定闪回时间的状态。 引入到数据库对象中的更改在序列中颠倒,从在发出闪回请求之前立即引入到数据库对象中的更改开始,并在指定的闪回时间之后立即引入到数据库对象中的更改结束。

    Proactive space allocation in a database system
    28.
    发明申请
    Proactive space allocation in a database system 有权
    在数据库系统中主动分配空间

    公开(公告)号:US20090030956A1

    公开(公告)日:2009-01-29

    申请号:US11880917

    申请日:2007-07-24

    IPC分类号: G06F12/00

    CPC分类号: G06F17/30595 G06F12/0223

    摘要: A method and apparatus for proactively allocating space to a logical layer of a database is provided. Allocation of space to a logical layer of a database is an expensive operation that should be minimized. The allocation of space includes discovering free space in all the higher layers in the logical storage hierarchy. It also includes cross-domain system calls and cleansing disk-write operations. In prior approaches, the allocation processes were triggered on-demand, only a certain logical layer was discovered to be at full capacity when an insert-row operation was attempted. In one embodiment of the invention, space needs are statistically predicted based on prior rates of space consumption. The database server pre-allocates space as needed, based on the statistical predictions. Rates of consumption are examined periodically. Space is pre-allocated before any logical layer reaches full capacity by a combination of proactive background processes; foreground-triggered, background processes; and classic foreground allocation.

    摘要翻译: 提供了一种用于主动地将空间分配给数据库的逻辑层的方法和装置。 将空间分配到数据库的逻辑层是一个应该最小化的昂贵的操作。 空间分配包括发现逻辑存储层次结构中所有较高层的可用空间。 它还包括跨域系统调用和清理磁盘写入操作。 在先前的方法中,分配过程是按需触发的,当尝试插入行操作时,只发现某个逻辑层处于满载状态。 在本发明的一个实施例中,基于先前的空间消耗率来统计地预测空间需求。 数据库服务器根据统计预测,根据需要预分配空间。 定期检查消费量。 在任何逻辑层通过主动后台进程的组合达到满容量之前预先分配空间; 前台触发,后台进程; 和经典的前景分配。

    Apparatus to selectively remove the effects of transactions in online database and enable logical recovery
    29.
    发明申请
    Apparatus to selectively remove the effects of transactions in online database and enable logical recovery 有权
    用于选择性地消除在线数据库中事务的影响并启用逻辑恢复的装置

    公开(公告)号:US20080183686A1

    公开(公告)日:2008-07-31

    申请号:US11699689

    申请日:2007-01-29

    IPC分类号: G06F17/30

    CPC分类号: G06F17/30377

    摘要: A method and apparatus for selective removal of user data changes is provided. In one embodiment, the methodology is implemented by a logical recovery mechanism. Upon receiving a request to selectively remove user data changes stored in a database, the mechanism creates an empty set of transactions to be populated for selective removal, identifies one or more transactions and places them in the causal set of transactions. The mechanism further identifies other transactions that logically depend on any transaction already in the causal set of transactions. Finally, either while the causal set of transactions is being identified or after the identification is completed, the mechanism also determines user data changes made by the causal set of transactions. One or more compensating transactions may be generated by the logical recovery mechanism, which when executed, reverse the user data changes.

    摘要翻译: 提供了用于选择性地去除用户数据变化的方法和装置。 在一个实施例中,该方法由逻辑恢复机制来实现。 在接收到选择性地删除存储在数据库中的用户数据改变的请求时,该机制创建要填充的空的一组事务以进行选择性删除,识别一个或多个事务并将它们放置在因果集合中。 该机制进一步识别逻辑上依赖于因果交易集合中的任何交易的其他交易。 最后,既然确定了交易的因果集合,或者在识别完成之后,该机制还确定了因果集交易所做的用户数据更改。 一个或多个补偿事务可以由逻辑恢复机制产生,逻辑恢复机制在执行时反转用户数据改变。

    Techniques for automatically tracking and archiving transactional data changes
    30.
    发明申请
    Techniques for automatically tracking and archiving transactional data changes 有权
    自动跟踪和归档交易数据更改的技术

    公开(公告)号:US20080098045A1

    公开(公告)日:2008-04-24

    申请号:US11863310

    申请日:2007-09-28

    IPC分类号: G06F17/30

    摘要: A technique for making versions of rows of a user-defined tracked table temporally queryable. The database management system of the technique permits temporal queries of user-defined tables. The queries return versions of rows in the user-defined table that are currently in an undo log maintained by the database system. Associated with the tracked table are a system history table which contains versions of the rows and temporal metadata indicating when the versions were in the tracked table and a system form history table which contains versions of the form of the tracked table and metadata indicating when the tracked table had the form. These tables are created and maintained by a background process in the database management system. A temporal query on the tracked table combines results from the undo log with results from the system history table. The results' form is determined by the system form history table.

    摘要翻译: 用于使用户定义的跟踪表的行的版本在时间上可查询的技术。 该技术的数据库管理系统允许用户定义表的临时查询。 查询返回用户定义表中当前处于数据库系统维护的撤销日志中的行的版本。 与跟踪表相关联的是系统历史表,其中包含行的版本和时间元数据,指示版本在跟踪表中的何时以及系统表单历史表,其中包含跟踪表格和元数据的版本以及指示何时被跟踪的表 表有形式。 这些表由数据库管理系统中的后台进程创建和维护。 跟踪表上的时间查询将撤消日志的结果与系统历史记录表的结果相结合。 结果表单由系统表单历史表确定。