Patent ID: 8244718

Claim:
A method of processing database queries, said method comprising: receiving a query on information in a database from a database management system running on a first processor; determining query fragments that accomplish the query; selecting a set of the query fragments for offload from the first processor to a second processor comprising dataflow architecture hardware and coupled to the first processor, based on their suitability for execution in the dataflow architecture hardware of the second processor, wherein suitability is based on identifying the set of query fragments as a fast path portion of the query for offloading to the dataflow architecture hardware of the second processor, and wherein the fragments contain dependency information associated with a database operation dependency graph; determining a set of programs of machine code database instructions that comprise machine code formatted for the dataflow architecture hardware of the second processor and specifying a dataflow a of data through the dataflow architecture hardware and machine code executable by the dataflow architecture hardware specifying at least one operation for the selected query fragments that are to be offloaded to the dataflow architecture hardware in the second processor; offloading the selected query fragments in the fast path portion to the dataflow architecture hardware in the second processor; determining results for the query fragments based on executing the machine code database instructions in the second processor; and providing the results for the query fragments to the database management system.