A Mediation Layer for Connecting Data-Intensive Applications to Reconfigurable Data Nodes - Jomaa, Mohamad (2013)
A novel and rapidly growing area of research concerns data-intensive applications and the technical challenges that accompany it. One of those challenges is developing approaches and mechanisms that render high performance in processing and storing data. We joined this research effort by proposing a reconfigurable active solid state drives (RASSD) system that deals with such applications, through employing basic hardware, namely FPGA's connected to SSD's, to service the above applications as processing nodes, and take advantage of the close proximity between storage and processing. In this paper, we propose an intelligent middleware system for interfacing workstation-based and mobile applications to the distributed RASSD system. In order to provide high performance in terms of time and functionality, the middleware manages the data processing on the RASSD nodes through special pieces of code that we call drivelets, along with FPGA configuration files (bitstreams). Another important responsibility of the proposed middleware architecture lies in the unguided management of applications' flows, where it uses an intelligent script-parsing mechanism to turn one general request from the client into a sequence of operations needed to generate the required results. The middleware design allows for the integration of mobile applications into the overall architecture of the RASSD system, and allowing them to run data intensive applications that otherwise it is unfeasible for them to execute. We validate our design by comparing it to an existing middleware architecture, and present two use-cases with their results and discussion.