-
公开(公告)号:US11327887B2
公开(公告)日:2022-05-10
申请号:US15705166
申请日:2017-09-14
Applicant: Oracle International Corporation
Inventor: Jia Shi , Wei Zhang , Kothanda Umamageswaran , Neil J. S. MacNaughton , Vijayakrishnan Nagarajan
IPC: G06F15/167 , G06F12/0808 , G06F13/28 , G06F16/10 , G06F16/172
Abstract: Techniques related to a server-side extension of client-side caches are provided. A storage server computer receives, from a database server computer, an eviction notification indicating that a data block has been evicted from the database server computer's cache. The storage server computer comprises a memory hierarchy including a volatile cache and a persistent cache. Upon receiving the eviction notification, the storage server computer retrieves the data block from the persistent cache and stores it in the volatile cache. When the storage server computer receives, from the database server computer, a request for the data block, the storage server computer retrieves the data block from the volatile cache. Furthermore, the storage server computer sends the data block to the database server computer, thereby causing the data block to be stored in the database server computer's cache. Still further, the storage server computer evicts the data block from the volatile cache.
-
公开(公告)号:US10387447B2
公开(公告)日:2019-08-20
申请号:US14823212
申请日:2015-08-11
Applicant: Oracle International Corporation
Inventor: Nilesh Choudhury , Scott Martin , Zuoyu Tao , Jia Shi , Alexander Tsukerman , Kothanda Umamageswaran
Abstract: Techniques herein are for creating a database snapshot by creating a sparse database. A method involves receiving a creation request to create a sparse database. The creation request has an identity of a parent database. The creation request is processed to create a sparse database. The sparse database has the identity of the parent database. The sparse database does not contain data copied from the parent database. A write request to write data into the sparse database is received. The write request is processed by writing the data into the sparse database. The parent database does not receive the data.
-
公开(公告)号:US20190102433A1
公开(公告)日:2019-04-04
申请号:US15721328
申请日:2017-09-29
Applicant: Oracle International Corporation
Inventor: Krishnan Meiyyappan , Semen Ustimenko , Adrian Tsz Him Ng , Kothanda Umamageswaran
Abstract: Region summaries of database data are stored in persistent memory of a storage cell. Because the region summaries are stored in persistent memory, when a storage cell is powered off and data in volatile memory is not retained, region summaries are nevertheless preserved in persistent memory. When the storage cell comes online, the region summaries already exist and may be used without the delay attendant to regenerating the region summaries stored in volatile memory.
-
公开(公告)号:US20190102113A1
公开(公告)日:2019-04-04
申请号:US15720959
申请日:2017-09-29
Applicant: Oracle International Corporation
Inventor: Nilesh Choudhury , Kothanda Umamageswaran , Krishnan Meiyyappan , Jia Shi , Vijay Sridharan , Zuoyu Tao , Kai Zhang , Semen Ustimenko , Salini Selvaraj Kowsalya , Somayeh Sardashti
Abstract: A shared storage architecture persistently stores database files in non-volatile random access memories (NVRAMs) of computing nodes of a multi-node DBMS. The computing nodes of the multi-node DBMS not only collectively store database data on NVRAMs of the computing nodes, but also host database server instances that process queries in parallel, host database sessions and database processes, and together manage access to a database stored on the NVRAMs of the computing nodes. To perform a data block read operation from persistent storage, a data block may be transferred directly over a network between NVRAM of a computing node that persistently stores the data block to a database buffer in non-volatile RAM of another computing node that requests the data block. The transfer is accomplished using remote direct memory access (“RDMA).
-
公开(公告)号:US20180060378A1
公开(公告)日:2018-03-01
申请号:US15253630
申请日:2016-08-31
Applicant: Oracle International Corporation
Inventor: Kartik Kulkarni , Juan R. Loaiza , Vivekanandhan Raja , Kothanda Umamageswaran , Sanket Hase , Vasudha Krishnaswamy , Tirthankar Lahiri
IPC: G06F17/30
CPC classification number: G06F17/30371 , G06F17/30353 , G06F17/30368 , G06F17/30377 , G06F17/3056 , G06F17/30581
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.
-
公开(公告)号:US20180060377A1
公开(公告)日:2018-03-01
申请号:US15253626
申请日:2016-08-31
Applicant: Oracle International Corporation
Inventor: Kartik Kulkarni , Juan R. Loaiza , Vivekanandhan Raja , Kothanda Umamageswaran , Sanket Hase , Vasudha Krishnaswamy , Tirthankar Lahiri
IPC: G06F17/30
CPC classification number: G06F17/30371 , G06F17/30368 , G06F17/30377 , G06F17/3056
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.
-
7.
公开(公告)号:US09715517B2
公开(公告)日:2017-07-25
申请号:US14313984
申请日:2014-06-24
Applicant: Oracle International Corporation
Inventor: Umesh Panchaksharaiah , Krishnan Meiyyappan , Kothanda Umamageswaran , Alex Tsukerman , Semen Ustimenko , Adrian Ng , Devang Mundhra , Yinian Qi
IPC: G06F17/30
Abstract: Techniques are described herein for supporting multiple versions of a database server within a database machine comprising a separate database layer and storage layer. In an embodiment, the database layer includes compute nodes each hosting one or more instances of a database server. The storage layer includes storage nodes each hosting one or more instances of a storage server, also referred to herein as a “cell server.” In general, the database servers may receive data requests, such as SQL queries, from client applications and service the requests in coordination with the cell servers of the storage layer.
-
公开(公告)号:US20210326343A1
公开(公告)日:2021-10-21
申请号:US17356827
申请日:2021-06-24
Applicant: Oracle International Corporation
Inventor: Krishnan Meiyyappan , Semen Ustimenko , Adrian Tsz Him Ng , Kothanda Umamageswaran
IPC: G06F16/2455 , G06F7/08 , G06F16/22
Abstract: Region summaries of database data are stored in persistent memory of a storage cell. Because the region summaries are stored in persistent memory, when a storage cell is powered off and data in volatile memory is not retained, region summaries are nevertheless preserved in persistent memory. When the storage cell comes online, the region summaries already exist and may be used without the delay attendant to regenerating the region summaries stored in volatile memory.
-
公开(公告)号:US11138131B2
公开(公告)日:2021-10-05
申请号:US16388955
申请日:2019-04-19
Applicant: Oracle International Corporation
Inventor: Justin Matthew Lewis , Zuoyu Tao , Jia Shi , Kothanda Umamageswaran
IPC: G06F12/00 , G06F12/121 , G06F12/0891
Abstract: Techniques are provided to adjust the behavior of a cache based on a count of cache misses for items recently evicted. In an embodiment, a computer responds to evicting a particular item (PI) from a cache by storing a metadata entry for the PI into memory. In response to a cache miss for the PI, the computer detects whether or not the metadata entry for the PI resides in memory. When the metadata entry for the PI is detected in memory, the computer increments a victim hit counter (VHC) that may be used to calculate how much avoidable thrashing is the cache experiencing, which is how much thrashing would be reduced if the cache were expanded. Either immediately or arbitrarily later, the computer adjusts a policy of the cache based on the VHC's value. For example, the computer may adjust the capacity of the cache based on the VHC.
-
公开(公告)号:US10802766B2
公开(公告)日:2020-10-13
申请号:US15720959
申请日:2017-09-29
Applicant: Oracle International Corporation
Inventor: Nilesh Choudhury , Kothanda Umamageswaran , Krishnan Meiyyappan , Jia Shi , Vijay Sridharan , Zuoyu Tao , Kai Zhang , Semen Ustimenko , Salini Selvaraj Kowsalya , Somayeh Sardashti
IPC: G06F16/23 , G06F3/06 , G06F16/18 , G06F16/903
Abstract: A shared storage architecture persistently stores database files in non-volatile random access memories (NVRAMs) of computing nodes of a multi-node DBMS. The computing nodes of the multi-node DBMS not only collectively store database data on NVRAMs of the computing nodes, but also host database server instances that process queries in parallel, host database sessions and database processes, and together manage access to a database stored on the NVRAMs of the computing nodes. To perform a data block read operation from persistent storage, a data block may be transferred directly over a network between NVRAM of a computing node that persistently stores the data block to a database buffer in non-volatile RAM of another computing node that requests the data block. The transfer is accomplished using remote direct memory access (“RDMA).
-
-
-
-
-
-
-
-
-