-
公开(公告)号:US20240354299A1
公开(公告)日:2024-10-24
申请号:US18138242
申请日:2023-04-24
Applicant: Oracle International Corporation
Inventor: Teck Hua Lee , Yu Chieh Fu , Sujatha Muthulingam , Vicente Hernandez Jimenez
IPC: G06F16/2453 , G06F16/11 , G06F16/21 , G06F16/28
CPC classification number: G06F16/2453 , G06F16/113 , G06F16/214 , G06F16/282
Abstract: Techniques are provided for optimizing storage of database data records in segments using sub-segments. A segment may be comprised of a plurality of extents that contain data blocks and a plurality of references to sub-segments. Sub-segments are containers that contain other extents. A request to insert a set of records into a segment may be received by a database management system. Upon receiving the request, a particular sub-segment is selected to temporarily store the set of records. The set of records are inserted into data blocks belonging to an extent of the sub-segment. Access frequency for the set of records is monitored to determine whether the access frequency is less than a first threshold. When the access frequency of a subset of records is less than a first threshold, the subset of records is compressed and inserted into a particular extent of a particular segment.
-
2.
公开(公告)号:US20240111790A1
公开(公告)日:2024-04-04
申请号:US18373082
申请日:2023-09-26
Applicant: Oracle International Corporation
Inventor: Teck Hua Lee , Hariharan Lakshmanan , Sujatha Muthulingam , Andrew Witkowski , Shasank Kisan Chavan , You Jung Kim , Sooyeon Jo , Yu Chieh Fu , Vicente Hernandez Jimenez , Tirthankar Lahiri
CPC classification number: G06F16/285 , G06F16/2219 , G06F16/258
Abstract: Techniques are provided for optimizing storage of database records in segments using sub-segments. A base segment is a container used for storing records that belong to a database object. A database management system receives a request to load, into the database object, a first set of records that are in a first state. In response to receiving the request, the system generates a new sub-segment, which is a container that is separate from the base segment. The system stores the first set of records, in their first state, within the sub-segment. The system then monitors one or more characteristics of the database system. In response to the one or more characteristics satisfying criteria, the system performs a migration of one or more records of the first set of records from the sub-segment to the base segment. During the migration, the system converts the one or more records from the first state to a second state and stores the one or more records, in their second state, in the base segment.
-
公开(公告)号:US11550771B2
公开(公告)日:2023-01-10
申请号:US17070277
申请日:2020-10-14
Applicant: Oracle International Corporation
Inventor: Jesse Kamp , Allison L. Holloway , Meichun Hsu , Hideaki Kimura , Boris Klots , Vasudha Krishnaswamy , Kartik Kulkarni , Teck Hua Lee , Yunrui Li , Aurosish Mishra , Ajit Mylavarapu , Sukhada Pendse , Garret F. Swart , Shasank K. Chavan , Tirthankar Lahiri , Juan R. Loaiza
Abstract: A shared-nothing database system is provided in which parallelism and workload balancing are increased by assigning the rows of each table to “slices”, and storing multiple copies (“duplicas”) of each slice across the persistent storage of multiple nodes of the shared-nothing database system. When the data for a table is distributed among the nodes of a shared-nothing system in this manner, requests to read data from a particular row of the table may be handled by any node that stores a duplica of the slice to which the row is assigned. For each slice, a single duplica of the slice is designated as the “primary duplica”. All DML operations (e.g. inserts, deletes, updates, etc.) that target a particular row of the table are performed by the node that has the primary duplica of the slice to which the particular row is assigned. The changes made by the DML operations are then propagated from the primary duplica to the other duplicas (“secondary duplicas”) of the same slice.
-
公开(公告)号:US11971869B2
公开(公告)日:2024-04-30
申请号:US17974152
申请日:2022-10-26
Applicant: Oracle International Corporation
Inventor: Jesse Kamp , Allison L. Holloway , Meichun Hsu , Hideaki Kimura , Boris Klots , Vasudha Krishnaswamy , Kartik Kulkarni , Teck Hua Lee , Yunrui Li , Aurosish Mishra , Ajit Mylavarapu , Sukhada Pendse , Garret F. Swart , Shasank K. Chavan , Tirthankar Lahiri , Juan R. Loaiza
CPC classification number: G06F16/2255 , G06F16/128 , G06F16/1756 , G06F16/1865 , G06F16/217 , G06F16/2322 , G06F16/27
Abstract: A shared-nothing database system is provided in which parallelism and workload balancing are increased by assigning the rows of each table to “slices”, and storing multiple copies (“duplicas”) of each slice across the persistent storage of multiple nodes of the shared-nothing database system. When the data for a table is distributed among the nodes of a shared-nothing system in this manner, requests to read data from a particular row of the table may be handled by any node that stores a duplica of the slice to which the row is assigned. For each slice, a single duplica of the slice is designated as the “primary duplica”. All DML operations (e.g. inserts, deletes, updates, etc.) that target a particular row of the table are performed by the node that has the primary duplica of the slice to which the particular row is assigned. The changes made by the DML operations are then propagated from the primary duplica to the other duplicas (“secondary duplicas”) of the same slice.
-
公开(公告)号:US20240126816A1
公开(公告)日:2024-04-18
申请号:US18375122
申请日:2023-09-29
Applicant: Oracle International Corporation
Inventor: Jorge Luis Issa Garcia , Teck Hua Lee , Sheldon Andre Kevin Lewis , Bangalore Prashanth , Hui Joe Chang , Zhen Hua Liu , Aurosish Mishra , Shasank K. Chavan
IPC: G06F16/903
CPC classification number: G06F16/90335
Abstract: Herein is database query acceleration from dynamic discovery of whether contents of a persistent column can be stored in an accelerated representation in storage-side memory. In an embodiment, based on data type discovery, a storage server detects that column values in a persistent column have a particular data type. Based on storage-side metadata including a frequency of access of the persistent column as an offload input column for offload computation requests on a certain range of memory addresses, the storage server autonomously decides to generate and store, in storage-side memory in the storage server, an accelerated representation of the persistent column that is based on the particular data type. The storage server receives a request to perform an offload computation for the offload input column. Based on the accelerated representation of the persistent column, execution of the offload computation is accelerated.
-
公开(公告)号:US20220114153A1
公开(公告)日:2022-04-14
申请号:US17070277
申请日:2020-10-14
Applicant: Oracle International Corporation
Inventor: Jesse Kamp , Allison L. Holloway , Meichun Hsu , Hideaki Kimura , Boris Klots , Vasudha Krishnaswamy , Kartik Kulkarni , Teck Hua Lee , Yunrui Li , Aurosish Mishra , Ajit Mylavarapu , Sukhada Pendse , Garret F. Swart , Shasank K. Chavan , Tirthankar Lahiri , Juan R. Loaiza
Abstract: A shared-nothing database system is provided in which parallelism and workload balancing are increased by assigning the rows of each table to “slices”, and storing multiple copies (“duplicas”) of each slice across the persistent storage of multiple nodes of the shared-nothing database system. When the data for a table is distributed among the nodes of a shared-nothing system in this manner, requests to read data from a particular row of the table may be handled by any node that stores a duplica of the slice to which the row is assigned. For each slice, a single duplica of the slice is designated as the “primary duplica”. All DML operations (e.g. inserts, deletes, updates, etc.) that target a particular row of the table are performed by the node that has the primary duplica of the slice to which the particular row is assigned. The changes made by the DML operations are then propagated from the primary duplica to the other duplicas (“secondary duplicas”) of the same slice.
-
公开(公告)号:US11003664B2
公开(公告)日:2021-05-11
申请号:US15249979
申请日:2016-08-29
Applicant: Oracle International Corporation
Inventor: Teck Hua Lee , Shasank Chavan , Chinmayi Krishnappa , Allison Holloway , Vicente Hernandez , Dennis Lui
IPC: G06F16/2455 , G06F16/2453
Abstract: Techniques are described herein for hybrid parallelization of in-memory table scans. Work for an in-memory scan is divided into granules based on a degree of parallelism. The granules are assigned to one or more processes. The work for each granule is further parallelized by dividing the work granule into one or more tasks. The tasks are assigned to one or more threads, the number of which can be dynamically adjusted.
-
公开(公告)号:US09881048B2
公开(公告)日:2018-01-30
申请号:US14881356
申请日:2015-10-13
Applicant: Oracle International Corporation
Inventor: Jesse Kamp , Amit Ganesh , Vineet Marwah , Vivekanandhan Raja , Tirthankar Lahiri , Allison L. Holloway , Sanket Hase , Shasank K. Chavan , Niloy Mukherjee , Teck Hua Lee , Michael J. Gleeson , Krishna Kunchithapadam
CPC classification number: G06F17/30377 , G06F3/0619 , G06F3/065 , G06F3/0665 , G06F3/0689 , G06F11/2058 , G06F17/30315 , G06F17/30442 , G06F17/30575 , G06F17/30581 , G06F2201/80 , G06F2201/855
Abstract: Techniques are provided for maintaining data persistently in one format, but making that data available to a database server in more than one format. For example, one of the formats in which the data is made available for query processing is based on the on-disk format, while another of the formats in which the data is made available for query processing is independent of the on-disk format. Data that is in the format that is independent of the disk format may be maintained exclusively in volatile memory to reduce the overhead associated with keeping the data in sync with the on-disk format copies of the data.
-
公开(公告)号:US20140095517A1
公开(公告)日:2014-04-03
申请号:US13631434
申请日:2012-09-28
Applicant: ORACLE INTERNATIONAL CORPORATION
Inventor: Vineet Marwah , Teck Hua Lee , Amit Ganesh
IPC: G06F17/30
CPC classification number: G06F17/30501
Abstract: In token compression, a column value is represented by a encoded token. During early predicate evaluation, the result that a decoded token in a column does not satisfy a predicate condition in a predicate conjunction is recorded in a cache as a “FALSE”. Such a result not only means that when the column contains that token that the predicate condition is not satisfied, but also that a predicate conjunction containing the predicate condition is not satisfied. When performing early predicate evaluation on a subsequent row on a token in a column, the conjunction result cache is referred to. If the cache records a FALSE for that token in that column, then it is known the predicate conjunction cannot be satisfied by the decoded token.
Abstract translation: 在令牌压缩中,列值由编码令牌表示。 在早期谓词评估期间,列中的解码令牌不满足谓词结合中的谓词条件的结果作为“FALSE”记录在高速缓存中。 这样的结果不仅意味着当列包含该令牌时,谓词条件不满足,而且包含谓词条件的谓词连接不被满足。 当对列中的令牌上的后续行执行早期谓词评估时,将引用连接结果缓存。 如果高速缓存在该列中记录了该令牌的FALSE,则已知解码的令牌不能满足谓词连接。
-
10.
公开(公告)号:US20240111668A1
公开(公告)日:2024-04-04
申请号:US18374944
申请日:2023-09-29
Applicant: Oracle International Corporation
Inventor: Hariharan Lakshmanan , Teck Hua Lee , Vinita Subramanian , Gary Smith , Lijian Wan , Shasank Kisan Chavan , Venkat Raman Senapati
IPC: G06F12/02
CPC classification number: G06F12/023
Abstract: Techniques are provided for implementing an in-memory columnar data store that is configured to either grow or shrink in response to performance prediction data generated from database workload information. A system maintains allocations of volatile memory from a given memory area for a plurality of memory-consuming components in a database system. The system receives for each memory-consuming component, performance prediction data that contains performance predictions for a plurality of memory allocation sizes for the memory-consuming components. The system determines a target memory allocation for an in-memory columnar data store based on the performance predictions. The system determines an incrementally adjusted amount of memory for the in-memory columnar data store and causes the incrementally adjusted amount to be allocated to the in-memory columnar data store.
-
-
-
-
-
-
-
-
-