Vector reads for array updates
    1.
    发明申请
    Vector reads for array updates 有权
    向量读取数组更新

    公开(公告)号:US20050262110A1

    公开(公告)日:2005-11-24

    申请号:US10848869

    申请日:2004-05-18

    IPC分类号: G06F7/00 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.

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

    Vector reads for array updates
    2.
    发明授权
    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.

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

    Storing compression units in relational tables
    3.
    发明授权
    Storing compression units in relational tables 有权
    将压缩单元存储在关系表中

    公开(公告)号:US08645337B2

    公开(公告)日:2014-02-04

    申请号:US12769205

    申请日:2010-04-28

    IPC分类号: G06F7/00 G06F17/00 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.

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

    Techniques For Automatic Data Placement With Compression And Columnar Storage
    4.
    发明申请
    Techniques For Automatic Data Placement With Compression And Columnar Storage 有权
    用于压缩和柱状存储的自动数据放置技术

    公开(公告)号:US20120296883A1

    公开(公告)日:2012-11-22

    申请号:US13475669

    申请日:2012-05-18

    IPC分类号: G06F17/30

    摘要: For automatic data placement of database data, a plurality of access-tracking data is maintained. The plurality of access-tracking data respectively corresponds to a plurality of data rows that are managed by a database server. While the database server is executing normally, it is automatically determined whether a data row, which is stored in first one or more data blocks, has been recently accessed based on the access-tracking data that corresponds to that data row. After determining that the data row has been recently accessed, the data row is automatically moved from the first one or more data blocks to one or more hot data blocks that are designated for storing those data rows, from the plurality of data rows, that have been recently accessed.

    摘要翻译: 对于数据库数据的自动数据放置,维持多个访问跟踪数据。 多个访问跟踪数据分别对应于由数据库服务器管理的多个数据行。 当数据库服务器正常执行时,根据与该数据行相对应的访问跟踪数据,自动确定是否最近访问存储在第一个一个或多个数据块中的数据行。 在确定最近访问了数据行之后,数据行被自动从第一个或多个数据块移动到指定用于存储来自多个数据行的那些数据行的一个或多个热数据块,这些数据行具有 最近被访问。

    STRUCTURE OF HIERARCHICAL COMPRESSED DATA STRUCTURE FOR TABULAR DATA
    5.
    发明申请
    STRUCTURE OF HIERARCHICAL COMPRESSED DATA STRUCTURE FOR TABULAR DATA 审中-公开
    用于数据数据的分层压缩数据结构的结构

    公开(公告)号:US20120143833A1

    公开(公告)日:2012-06-07

    申请号:US13371354

    申请日:2012-02-10

    IPC分类号: G06F7/00

    CPC分类号: G06F16/221

    摘要: A highly flexible and extensible structure is provided for physically storing tabular data. The structure, referred to as a compression unit, may be used to store tabular data that logically resides in any type of table-like structure. According to one embodiment, compression units are recursive. Thus, a compression unit may have a “parent” compression unit to which it belongs, and may have one or more “child” compression units that belong to it. In one embodiment, compression units include metadata that indicates how the tabular data is stored within them. The metadata for a compression unit may indicate, for example, whether the data is stored in row-major or column major-format the order of the columns within the compression unit (which may differ from the logical order of the columns dictated by the definition of their logical container), a compression technique for the compression unit, the child compression units (if any), etc.

    摘要翻译: 提供了高度灵活和可扩展的结构,用于物理存储表格数据。 称为压缩单元的结构可用于存储逻辑上位于任何类型的类似桌面结构的表格数据。 根据一个实施例,压缩单元是递归的。 因此,压缩单元可以具有它所属的“父”压缩单元,并且可以具有属于它的一个或多个“子”压缩单元。 在一个实施例中,压缩单元包括指示表格数据如何被存储在其中的元数据。 压缩单元的元数据例如可以指示数据是以行主列还是列主格式存储在压缩单元内的列的顺序(其可以不同于由定义指定的列的逻辑顺序 的逻辑容器),压缩单元的压缩技术,子压缩单元(如果有的话)等等

    Adaptive filter index for determining queries affected by a DML operation
    6.
    发明授权
    Adaptive filter index for determining queries affected by a DML operation 有权
    用于确定受DML操作影响的查询的自适应过滤器索引

    公开(公告)号:US08185508B2

    公开(公告)日:2012-05-22

    申请号:US12326822

    申请日:2008-12-02

    IPC分类号: G06F17/30

    CPC分类号: G06F17/3051

    摘要: Techniques are disclosed for creating and using a filter index in order to identify registered queries whose result sets are likely to have been changed by changes made to tables. The filter index entries are based on filter conditions. The filter conditions are created based on predicates contained in the registered queries. The filter conditions may include exclusive predicates and join predicates. Join predicates that join a table T1 with a table T2 may be instantiated by replacing references to table T2 with values extracted from table T2. Various techniques are described for recognizing situations in which a query can be included in, or excluded from, the set of likely-changed queries, without fully evaluating the filter conditions that correspond to the queries.

    摘要翻译: 公开了用于创建和使用过滤器索引的技术,以便识别其结果集可能由于对表的改变而改变的注册查询。 过滤器索引条目基于过滤器条件。 过滤条件是根据注册查询中包含的谓词创建的。 过滤条件可能包括排除谓词和连接谓词。 可以通过用从表T2提取的值替换对表T2的引用来实例化加入具有表T2的表T1的连接谓词。 描述各种技术用于识别其中可以将查询包括在可能改变的查询集合中或从可能改变的查询集合中排除的情况,而不完全评估与查询相对应的过滤条件。

    METHOD AND MECHANISM FOR DETERMINING LIFE INTERVALS FOR A KEY IN AN INDEX
    7.
    发明申请
    METHOD AND MECHANISM FOR DETERMINING LIFE INTERVALS FOR A KEY IN AN INDEX 有权
    用于确定索引中的关键词的生命间隔的方法和机制

    公开(公告)号:US20110302205A1

    公开(公告)日:2011-12-08

    申请号:US13209224

    申请日:2011-08-12

    IPC分类号: G06F17/30

    CPC分类号: G06F17/30309

    摘要: Disclosed is a mechanism, system, interface, and process to determine one or more life intervals when given a key. In addition, one or more life intervals can be determined for each key within a range of keys. This type of process is useful for auditing purposes or if it is desire to implement a query upon past versions when a key or range of keys is specified for the data for which past versions is desired. This facilitates algorithms, mechanisms, and processes to implement a query upon past versions.

    摘要翻译: 公开了一种在给予键时确定一个或多个生命周期的机制,系统,界面和过程。 另外,可以在一系列键内为每个键确定一个或多个生命周期。 这种类型的过程对于审计目的是有用的,或者如果希望在为期望的过去版本的数据指定密钥或密钥范围时希望在过去的版本上实现查询。 这有助于算法,机制和过程来实现过去版本的查询。

    Generating continuous query notifications
    8.
    发明授权
    Generating continuous query notifications 有权
    生成连续的查询通知

    公开(公告)号:US08037040B2

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

    申请号:US12189078

    申请日:2008-08-08

    IPC分类号: G06F17/30

    CPC分类号: G06F17/30516

    摘要: Techniques are described to allow a query to be registered as a persistent stored entity within the database, and to generate notifications as and when the query result changes continuously as long as the query continues to be registered with the database. According to one aspect, for a table referenced in a query, a filter condition is generated based, at least in part, on a predicate of the query. Then, the database server determines whether the filter condition is satisfied by either a before image of a row, or an after image of the row, that was modified by a transaction. If the filter condition is satisfied by either the before image or the after image, then the query is added to a first set of queries whose result sets may have been affected by the transaction. From among the first set of queries, a second set of queries that have result sets that were actually affected by the transaction is determined. Notifications are then sent based on the second set of queries.

    摘要翻译: 描述技术来允许将查询注册为数据库内的持久存储实体,并且只要查询继续向数据库注册,就可以随着查询结果不断更改而生成通知。 根据一个方面,对于在查询中引用的表,基于至少部分地基于查询的谓词生成过滤条件。 然后,数据库服务器通过由事务修改的行的先前图像或行的后续图像来确定滤波器条件是否满足。 如果过滤条件由前图像或后图像所满足,则将查询添加到其结果集可能受事务影响的第一组查询中。 从第一组查询中,确定具有实际受事务影响的结果集的第二组查询。 然后基于第二组查询发送通知。

    System, structure, interface, and semantics for implementing row versions: accessing past versions of a data item
    9.
    发明授权
    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
    10.
    发明申请
    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.

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