An asymmetric data processor apparatus comprising: a first group of nodes comprising one or more host processors, each host comprising a memory, a network interface, and one or more Central Processing Units (CPUs), wherein each host is configured to accept and respond to queries for data, and transforms such queries into one or more jobs; a second group of nodes comprising a plurality of Job Processing Units (JPUs), wherein each JPU comprises: a memory, for storing data; a network interface, for receiving data and instructions; and a streaming data interface, for receiving data using Direct Memory Access operations from a streaming data source comprising an industry-standard hard disk controller and hard disk; characterized in that each JPU further comprises: one or more general purpose CPUs, for responding to requests to process jobs from at least one host computer in the first group, and to requests from other JPUs in the second group; and one or more Programmable Streaming Data Processors (PSDPs) configured to serve as an interface between the CPU of a JPU and streaming data interface and configured to perform field-level filtering functions as portions of a job directly on data received from the streaming data interface during read operations prior to such data being forwarded to the JPU, each PSDP thus configured to perform initial processing on a set of data; and the asymmetric data processor further comprising a network connecting the nodes within each group and between the two groups; and wherein a JPU at the second group of nodes is configured to receive jobs from one or more nodes in the first group, perform work requested by the jobs, and generate a result based on the work. a first group of nodes comprising one or more host processors, each host comprising a memory, a network interface, and one or more Central Processing Units (CPUs), wherein each host is configured to accept and respond to queries for data, and transforms such queries into one or more jobs; a second group of nodes comprising a plurality of Job Processing Units (JPUs), wherein each JPU comprises: a memory, for storing data; a network interface, for receiving data and instructions; and a streaming data interface, for receiving data using Direct Memory Access operations from a streaming data source comprising an industry-standard hard disk controller and hard disk; a memory, for storing data; a network interface, for receiving data and instructions; and a streaming data interface, for receiving data using Direct Memory Access operations from a streaming data source comprising an industry-standard hard disk controller and hard disk; characterized in that each JPU further comprises: one or more general purpose CPUs, for responding to requests to process jobs from at least one host computer in the first group, and to requests from other JPUs in the second group; and one or more Programmable Streaming Data Processors (PSDPs) configured to serve as an interface between the CPU of a JPU and streaming data interface and configured to perform field-level filtering functions as portions of a job directly on data received from the streaming data interface during read operations prior to such data being forwarded to the JPU, each PSDP thus configured to perform initial processing on a set of data; and one or more general purpose CPUs, for responding to requests to process jobs from at least one host computer in the first group, and to requests from other JPUs in the second group; and one or more Programmable Streaming Data Processors (PSDPs) configured to serve as an interface between the CPU of a JPU and streaming data interface and configured to perform field-level filtering functions as portions of a job directly on data received from the streaming data interface during read operations prior to such data being forwarded to the JPU, each PSDP thus configured to perform initial processing on a set of data; and the asymmetric data processor further comprising a network connecting the nodes within each group and between the two groups; and wherein a JPU at the second group of nodes is configured to receive jobs from one or more nodes in the first group, perform work requested by the jobs, and generate a result based on the work. a network connecting the nodes within each group and between the two groups; and wherein a JPU at the second group of nodes is configured to receive jobs from one or more nodes in the first group, perform work requested by the jobs, and generate a result based on the work.