1. A system comprising: a query recipient configured to determine that a database query warrants a first projection operation to project a plurality of input rows to a plurality of projected rows, wherein each of the plurality of input rows has one or more variable-length columns; a projection controller configured to: construct a first projection control block to describe the first projection operation, by constructing a projection control element corresponding to a variable-length column in the plurality of input rows, wherein the projection control element specifies information about the variable offsets and the lengths of the variable-length column in the plurality of input rows; offload the first projection operation to a hardware accelerator; and provide the first projection control block to the hardware accelerator, wherein the first projection control block enables the hardware accelerator to perform the first projection operation at streaming rate, and wherein the streaming rate is a rate sufficient for the hardware accelerator to process the plurality of input rows without stalling an incoming row stream.