-
公开(公告)号:US08521788B2
公开(公告)日:2013-08-27
申请号:US13708060
申请日:2012-12-07
Applicant: Oracle International Corporation
Inventor: Lawrence J. Ellison , Amit Ganesh , Vineet Marwah , Jesse Kamp , Anindya C. Patthak , Shasank K. Chavan , Michael J. Gleeson , Allison L. Holloway , Manosiz Bhattacharyya
IPC: G06F7/00
CPC classification number: G06F17/30315 , G06F9/3887 , G06F17/30339 , G06F17/30595
Abstract: Techniques are provided for more efficiently using the bandwidth of the I/O path between a CPU and volatile memory during the performance of database operation. Relational data from a relational table is stored in volatile memory as column vectors, where each column vector contains values for a particular column of the table. A binary-comparable format may be used to represent each value within a column vector, regardless of the data type associated with the column. The column vectors may be compressed and/or encoded while in volatile memory, and decompressed/decoded on-the-fly within the CPU. Alternatively, the CPU may be designed to perform operations directly on the compressed and/or encoded column vector data. In addition, techniques are described that enable the CPU to perform vector processing operations on the column vector values.
-
公开(公告)号:US20130151568A1
公开(公告)日:2013-06-13
申请号:US13708060
申请日:2012-12-07
Applicant: ORACLE INTERNATIONAL CORPORATION
Inventor: Lawrence J. Ellison , Amit Ganesh , Vineet Marwah , Jesse Kamp , Anindya C. Patthak , Shasank K. Chavan , Michael J. Gleeson , Allison L. Holloway , Manosiz Bhattacharyya
IPC: G06F17/30
CPC classification number: G06F17/30315 , G06F9/3887 , G06F17/30339 , G06F17/30595
Abstract: Techniques are provided for more efficiently using the bandwidth of the I/O path between a CPU and volatile memory during the performance of database operation. Relational data from a relational table is stored in volatile memory as column vectors, where each column vector contains values for a particular column of the table. A binary-comparable format may be used to represent each value within a column vector, regardless of the data type associated with the column. The column vectors may be compressed and/or encoded while in volatile memory, and decompressed/decoded on-the-fly within the CPU. Alternatively, the CPU may be designed to perform operations directly on the compressed and/or encoded column vector data. In addition, techniques are described that enable the CPU to perform vector processing operations on the column vector values.
-