Efficient determination of committed changes

    公开(公告)号:US10303788B2

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

    申请号:US15253630

    申请日:2016-08-31

    Abstract: A minimum value (MV) is computed for start timestamps that each correspond to an uncommitted transaction. In an embodiment, the MV is computed for a pluggable database that is open on at least first and second instances of a database. The MV is computed for the first instance as of a first current timestamp (CT). The MV and the first CT are communicated to a second instance that has a second CT. If the first and second CTs are equal, the second instance store the MV. If the first CT is bigger, the second CT also becomes equal to the first CT. If the first CT is smaller, the MV is discarded, and the first CT becomes equal to the second CT. In an embodiment, if the MV remains unchanged for a predetermined time period, a start timestamp corresponding to the MV is advanced to a current or future timestamp.

    Reducing data I/O using in-memory data structures

    公开(公告)号:US10198363B2

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

    申请号:US15268524

    申请日:2016-09-16

    Abstract: Techniques are described herein for generating and using in-memory data structures to represent columns in data block sets. In an embodiment, a database management system (DBMS) receives a query for a target data set managed by the DBMS. The query may specify a predicate for a column of the target data set. The predicate may include a filtering value to be compared with row values of the column of the target data set. Prior to accessing data block sets storing the target data set from persistent storage, the DBMS identifies an in-memory summary that corresponds to a data block set, in an embodiment. The in-memory summary may include in-memory data structures, each representing a column stored in the data block set. The DBMS determines that a particular in-memory data structure exists in the in-memory summary that represents a portion of values of the column indicated in the predicate of the query. Based on the particular in-memory data structure, the DBMS determines whether or not the data block set can possibly contain the filtering value in the column of the target data set. Based on this determination, the DBMS skips or retrieves the data block set from the persistent storage as part of the query evaluation.

    PRIORITIZING REPOPULATION OF IN-MEMORY COMPRESSION UNITS
    17.
    发明申请
    PRIORITIZING REPOPULATION OF IN-MEMORY COMPRESSION UNITS 有权
    内存压缩单元的重新排列

    公开(公告)号:US20160085834A1

    公开(公告)日:2016-03-24

    申请号:US14823393

    申请日:2015-08-11

    CPC classification number: G06F17/30339 G06F17/30377 G06F17/30578

    Abstract: To prioritize repopulation of in-memory compression units (IMCU), a database server compresses, into an IMCU, a plurality of data units from a database table. In response to changes to any of the plurality of data units within the database table, the database server performs the steps of: (a) invalidating corresponding data units in the IMCU; (b) incrementing an invalidity counter of the IMCU that reflects how many data units within the IMCU have been invalidated; (c) receiving a data request that targets one or more of the plurality of data units of the database table; (d) in response to receiving the data request, incrementing an access counter of the IMCU; and (e) determining a priority for repopulating the IMCU based, at least in part, on the invalidity counter and the access counter.

    Abstract translation: 为了优先重新填充内存中的压缩单元(IMCU),数据库服务器从数据库表将多个数据单元压缩到IMCU中。 响应于对数据库表内的多个数据单元中的任一个的改变,数据库服务器执行以下步骤:(a)使IMCU中的相应数据单元无效; (b)增加反映IMCU内有多少数据单位无效的IMCU的无效计数器; (c)接收针对所述数据库表的所述多个数据单元中的一个或多个的数据请求; (d)响应于接收到数据请求,递增IMCU的访问计数器; 以及(e)至少部分地基于无效计数器和访问计数器确定重新填充IMCU的优先级。

    DISTRIBUTED CONSISTENT GRID OF IN-MEMORY DATABASE CACHES
    20.
    发明申请
    DISTRIBUTED CONSISTENT GRID OF IN-MEMORY DATABASE CACHES 审中-公开
    内存数据库缓存的分布式一致性

    公开(公告)号:US20130198249A1

    公开(公告)日:2013-08-01

    申请号:US13799572

    申请日:2013-03-13

    CPC classification number: G06F17/30312 G06F12/084

    Abstract: A plurality of mid-tier databases form a single, consistent cache grid for data in one or more backend data sources, such as a database system. The mid-tier databases may be standard relational databases. Cache agents at each mid-tier database swap in data from the backend database as needed. Ownership locks maintain consistency in the cache grid. Cache agents prevent database operations that will modify cached data in a mid-tier database unless and until ownership of the cached data can be acquired for the mid-tier database. Cache groups define what backend data may be cached, as well as a general structure in which the backend data is to be cached. Metadata for cache groups is shared to ensure that data is cached in the same form throughout the entire grid. Ownership of cached data can then be tracked through a mapping of cached instances of data to particular mid-tier databases.

    Abstract translation: 多个中间层数据库形成用于一个或多个后端数据源(例如数据库系统)中的数据的单一,一致的高速缓存网格。 中间层数据库可以是标准关系数据库。 每个中间层数据库的缓存代理根据需要从后端数据库交换数据。 所有权锁在高速缓存网格中保持一致性。 高速缓存代理阻止数据库操作,将修改中间层数据库中的缓存数据,除非可以为中间层数据库获取缓存数据的所有权。 缓存组定义可以缓存哪些后端数据,以及要缓存后端数据的一般结构。 共享缓存组的元数据,以确保数据在整个网格中以相同的格式缓存。 然后可以通过将缓存的数据实例映射到特定中间层数据库来跟踪缓存数据的所有权。

Patent Agency Ranking