A system (300, 600, 700) comprising: a request input; a first plurality of first nodes (302, 602, 702), each first node being a first type of processing unit, each first node operable in parallel with the other first nodes of the first plurality, each first node operable to respond directly to a request by examining data and/or metadata it holds against the request; a second plurality of second nodes (303, 603, 703) being rendering nodes that are configured to perform rendering, each second node being a second type of processing unit, each second node operable in parallel with the other second nodes of the second plurality, each second node operable to respond to the request using data and/or metadata it holds and operable in response to data and/or metadata from a respective first node, the second type of processing node being different from the first type of processing node, wherein the first type of processing unit is a central processing unit and the second type of processing unit is one of a graphic processing unit or field-programmable gate array; a first process head node (306, 606, 706) configured to coordinate processing of the first plurality of first nodes and to receive the request and distribute the request to first nodes of the first plurality of first nodes; wherein each node of the second plurality of second nodes is arranged to receive data and/or metadata from the first nodes, and wherein each of the second nodes is arranged in a one-to-one relationship with a respective first node; and a composite node (309, 609, 709) configured to generate an output from compositing results of operation of the second nodes, wherein the output is an image. a request input; a first plurality of first nodes (302, 602, 702), each first node being a first type of processing unit, each first node operable in parallel with the other first nodes of the first plurality, each first node operable to respond directly to a request by examining data and/or metadata it holds against the request; a second plurality of second nodes (303, 603, 703) being rendering nodes that are configured to perform rendering, each second node being a second type of processing unit, each second node operable in parallel with the other second nodes of the second plurality, each second node operable to respond to the request using data and/or metadata it holds and operable in response to data and/or metadata from a respective first node, the second type of processing node being different from the first type of processing node, wherein the first type of processing unit is a central processing unit and the second type of processing unit is one of a graphic processing unit or field-programmable gate array; a first process head node (306, 606, 706) configured to coordinate processing of the first plurality of first nodes and to receive the request and distribute the request to first nodes of the first plurality of first nodes; wherein each node of the second plurality of second nodes is arranged to receive data and/or metadata from the first nodes, and wherein each of the second nodes is arranged in a one-to-one relationship with a respective first node; and a composite node (309, 609, 709) configured to generate an output from compositing results of operation of the second nodes, wherein the output is an image.