Dropping an index without blocking locks

    公开(公告)号:US10698723B2

    公开(公告)日:2020-06-30

    申请号:US14231416

    申请日:2014-03-31

    Abstract: Techniques for processing “destructive” database statements are provided. Destructive database statements, when processed, cause metadata of a database object to be changed. Examples of such database statements include ones that delete an index, that set a column as unused, and that drop a constraint on a column. When such a statement is received, a change is made to metadata of a database object. Such a metadata change may involve setting an index as unusable, disabling a constraint, or invalidating a cursor. After the metadata change, a first time is determined. Then, it is determined when one or more database transactions that were pending at the first time have committed. After those database transaction(s) have committed, one or more operations are performed, such as dropping an index or dropping a constraint.

    Partial indexes for partitioned tables

    公开(公告)号:US10282437B2

    公开(公告)日:2019-05-07

    申请号:US14255425

    申请日:2014-04-17

    Abstract: Techniques for creating and using partial indexes are provided. A partial index is an index that indexes one or more partitions of a partitioned table and does not index one or more other partitions of the partitioned table. Thus, if a partition of a partitioned table is rarely used, then an index may index all other partitions of the partitioned table or at least only those partitions that are written to or read from relatively frequently. Also, in preparation for loading data into a partition, indexing for the partition may be “turned off”, effectively making a full index a partial index. While the data is loaded into the partition, the partial index is still available for query processing. After the data is loaded into the partition, indexing for the partition is “turned on”, which causes the data in the partition to be indexed by the partial index.

    CREATE TABLE FOR EXCHANGE
    13.
    发明申请

    公开(公告)号:US20170109386A1

    公开(公告)日:2017-04-20

    申请号:US15228831

    申请日:2016-08-04

    CPC classification number: G06F16/2282 G06F16/24554

    Abstract: Techniques are described herein for creating a new database table for an exchange operation with a table partition of another table. A database management system (DBMS) is configured to receive a query such as “CREATE TABLE new_table FOR EXCHANGE FROM partition_P1”. The DBMS then identifies properties of the source partition (e.g., partition P1) and creates a new database table based on the properties identified. Some of these properties (e.g., hidden columns, data modeling frameworks, and table statistics) may not otherwise be directly accessible by the external entity that sent the query. The newly created table then has all of the necessary properties to be part of the other table if swapped with the source partition in an exchange operation.

    MOVING DATA BETWEEN PARTITIONS
    14.
    发明申请
    MOVING DATA BETWEEN PARTITIONS 有权
    移动分组之间的数据

    公开(公告)号:US20150347401A1

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

    申请号:US14289926

    申请日:2014-05-29

    CPC classification number: G06F17/303

    Abstract: Techniques are provided for moving data between partitions. Such a process may be performed without requiring any locks that block transactions that target a partition from being executed. Instead, such transactions may proceed while a move operation is being performed. The move operation involves copying data from the targeted partition to another partition that is hidden from (or “invisible” to) those transactions that attempt to read from or write to the partition. During the move operation, changes that are made to the partition are also reflected in a journal. Eventually, the changes reflected in the journal are drained and applied to the hidden partition. Once the partition and the hidden partition are synchronized, the identities of the partitions are swapped so that future transactions will target the previously-hidden partition instead of the previously-viewable partition.

    Abstract translation: 提供了在分区之间移动数据的技术。 可以执行这样的过程,而不需要阻止目标分区的事务被执行的任何锁。 相反,这样的事务可以在执行移动操作时进行。 移动操作涉及将数据从目标分区复制到另一个从(或“不可见”)隐藏到分区尝试读取或写入的那些事务的分区。 在移动操作期间,对分区进行的更改也会反映在日志中。 最终,日志中反映的变化被排除并应用于隐藏的分区。 一旦分区和隐藏的分区被同步,分区的标识被交换,以便将来的事务将针对先前隐藏的分区,而不是以前可视的分区。

    Moving data between partitions
    15.
    发明授权

    公开(公告)号:US12072854B2

    公开(公告)日:2024-08-27

    申请号:US17125777

    申请日:2020-12-17

    CPC classification number: G06F16/214

    Abstract: Techniques are provided for moving data between partitions. Such a process may be performed without requiring any locks that block transactions that target a partition from being executed. Instead, such transactions may proceed while a move operation is being performed. The move operation involves copying data from the targeted partition to another partition that is hidden from (or “invisible” to) those transactions that attempt to read from or write to the partition. During the move operation, changes that are made to the partition are also reflected in a journal. Eventually, the changes reflected in the journal are drained and applied to the hidden partition. Once the partition and the hidden partition are synchronized, the identities of the partitions are swapped so that future transactions will target the previously-hidden partition instead of the previously-viewable partition.

    DROPPING AN INDEX WITHOUT BLOCKING LOCKS
    16.
    发明申请

    公开(公告)号:US20200293362A1

    公开(公告)日:2020-09-17

    申请号:US16887980

    申请日:2020-05-29

    Abstract: Techniques for processing “destructive” database statements are provided. Destructive database statements, when processed, cause metadata of a database object to be changed. Examples of such database statements include ones that delete an index, that set a column as unused, and that drop a constraint on a column. When such a statement is received, a change is made to metadata of a database object. Such a metadata change may involve setting an index as unusable, disabling a constraint, or invalidating a cursor. After the metadata change, a first time is determined. Then, it is determined when one or more database transactions that were pending at the first time have committed. After those database transaction(s) have committed, one or more operations are performed, such as dropping an index or dropping a constraint.

    Create table for exchange
    17.
    发明授权

    公开(公告)号:US10657116B2

    公开(公告)日:2020-05-19

    申请号:US15228831

    申请日:2016-08-04

    Abstract: Techniques are described herein for creating a new database table for an exchange operation with a table partition of another table. A database management system (DBMS) is configured to receive a query such as “CREATE TABLE new_table FOR EXCHANGE FROM partition_P1”. The DBMS then identifies properties of the source partition (e.g., partition P1) and creates a new database table based on the properties identified. Some of these properties (e.g., hidden columns, data modeling frameworks, and table statistics) may not otherwise be directly accessible by the external entity that sent the query. The newly created table then has all of the necessary properties to be part of the other table if swapped with the source partition in an exchange operation.

    Moving data between partitions
    18.
    发明授权

    公开(公告)号:US09965497B2

    公开(公告)日:2018-05-08

    申请号:US14289926

    申请日:2014-05-29

    CPC classification number: G06F17/303

    Abstract: Techniques are provided for moving data between partitions. Such a process may be performed without requiring any locks that block transactions that target a partition from being executed. Instead, such transactions may proceed while a move operation is being performed. The move operation involves copying data from the targeted partition to another partition that is hidden from (or “invisible” to) those transactions that attempt to read from or write to the partition. During the move operation, changes that are made to the partition are also reflected in a journal. Eventually, the changes reflected in the journal are drained and applied to the hidden partition. Once the partition and the hidden partition are synchronized, the identities of the partitions are swapped so that future transactions will target the previously-hidden partition instead of the previously-viewable partition.

    Asynchronous global index maintenance during partition maintenance
    19.
    发明授权
    Asynchronous global index maintenance during partition maintenance 有权
    分区维护期间的异步全局索引维护

    公开(公告)号:US09489413B2

    公开(公告)日:2016-11-08

    申请号:US14231438

    申请日:2014-03-31

    CPC classification number: G06F17/30339 G06F9/466

    Abstract: Techniques for maintaining a global index in response to a partition being dropped are provided. In response to an instruction to drop a partition, partition identification data that identifies the partition is stored. Index entries, in the global index, that correspond to the dropped partition become “orphaned” entries. Later, an execution plan for a query is processed, where the execution plan targets a global index. During execution of the execution plan, one or more index entries are accessed. For each accessed index entry, the partition identification data is analyzed to determine if the index entry is an orphaned entry. If so, then the index entry is ignored for purposes of the query. Later, the global index may be updated to delete each orphaned entry. Such deletion may occur much later, such as during a time when the database is not queried or updated frequently.

    Abstract translation: 提供了用于维护响应于正在丢弃的分区的全局索引的技术。 响应于删除分区的指令,存储识别分区的分区标识数据。 在全局索引中,对应于删除的分区的索引条目将成为“孤立”条目。 之后,处理查询的执行计划,其中执行计划定位到全局索引。 在执行计划的执行期间,访问一个或多个索引条目。 对于每个访问的索引条目,分析分区标识数据以确定索引条目是否是孤立条目。 如果是这样,则为了查询的目的,忽略索引条目。 之后,可能会更新全局索引以删除每个孤立的条目。 这种删除可能发生得更晚,例如在数据库未被查询或频繁更新的时间内。

    TECHNIQUES FOR PARTITION PRUNING BASED ON AGGREGATED ZONE MAP INFORMATION
    20.
    发明申请
    TECHNIQUES FOR PARTITION PRUNING BASED ON AGGREGATED ZONE MAP INFORMATION 有权
    基于集聚区域地图信息进行分区处理的技术

    公开(公告)号:US20150286681A1

    公开(公告)日:2015-10-08

    申请号:US14245909

    申请日:2014-04-04

    CPC classification number: G06F17/30486 G06F17/30339 G06F17/30463

    Abstract: Techniques for partition pruning based on aggregated zone map information. In one embodiment, for example, a method for pruning partitions based on aggregated zone map information comprises: receiving a query statement comprising a filter predicate on a column of a database table; and pruning one or more partitions of the database table from access paths for processing the query statement based on determining, based on aggregated zone map information associated with the one or more partitions, that the filter predicate cannot be satisfied by data stored in the one or more partitions.

    Abstract translation: 基于聚合区域地图信息的分割修剪技术。 在一个实施例中,例如,基于聚合的区域映射信息来修剪分区的方法包括:在数据库表的列上接收包括过滤谓词的查询语句; 以及基于根据与所述一个或多个分区相关联的聚合区域映射信息确定所述过滤谓词不能由存储在所述一个或多个分区中的数据来满足所述数据库表的一个或多个分区,以从所述访问路径修剪所述数据库表的一个或多个分区,以处理所述查询语句 更多的分区。

Patent Agency Ranking