Invention Grant
- Patent Title: Database tuple-encoding-aware data partitioning in a direct memory access engine
-
Application No.: US15362688Application Date: 2016-11-28
-
Publication No.: US10061832B2Publication Date: 2018-08-28
- Inventor: David A. Brown , Sam Idicula , Erik Schlanger , Rishabh Jain , Michael Duller , Christopher Joseph Daniels , David Joseph Hawkins
- Applicant: Oracle International Corporation
- Applicant Address: US CA Redwood Shores
- Assignee: Oracle International Corporation
- Current Assignee: Oracle International Corporation
- Current Assignee Address: US CA Redwood Shores
- Agency: Hickman Palermo Becker Bingham LLP
- Main IPC: G06F13/00
- IPC: G06F13/00 ; G06F17/30 ; G06F3/06

Abstract:
Techniques provide for hardware accelerated data movement between main memory and an on-chip data movement system that comprises multiple core processors that operate on the tabular data. The tabular data is moved to or from the scratch pad memories of the core processors. While the data is in-flight, the data may be manipulated by data manipulation operations. The data movement system includes multiple data movement engines, each dedicated to moving and transforming tabular data from main memory data to a subset of the core processors. Each data movement engine is coupled to an internal memory that stores data (e.g. a bit vector) that dictates how data manipulation operations are performed on tabular data moved from a main memory to the memories of a core processor, or to and from other memories. The internal memory of each data movement engine is private to the data movement engine. Tabular data is efficiently copied between internal memories of the data movement system via a copy ring that is coupled to the internal memories of the data movement system and/or is coupled to a data movement engine. Also, a data movement engine internally broadcasts data to other data movement engines, which then transfer the data to respective core processors. Partitioning may also be performed by the hardware of the data movement system. Techniques are used to partition data “in flight”. The data movement system also generates a column of row identifiers (RIDs). A row identifier is a number treated as identifying a row or element's position within a column. Row identifiers each identifying a row in column are also generated.
Public/Granted literature
- US20180150542A1 DATABASE TUPLE-ENCODING-AWARE DATA PARTITIONING IN A DIRECT MEMORY ACCESS ENGINE Public/Granted day:2018-05-31
Information query