Since the 1970’s, database systems have been “compute-centric”. When a computation needs the data, it requests the data, and the data are pulled through the system. We believe that this is problematic for two reasons. First, requests for data naturally incur high latency as the data are pulled through the memory hierarchy, and second, it makes it difficult or impossible for multiple queries or operations that are interested in the same data to amortize the bandwidth and latency costs associated with their data access. In this paper, we describe a purely-push based, research prototype database system called DataPath. DataPath is “data-centric”. In DataPath, queries do not request data. Instead, data are automatically pushed onto processors, where they are then processed by any interested computation. We show experimentally on a multiterabyte benchmark that this basic design principle makes for a very lean and fast database system. Categories and Subject Descriptors H.2.4 [In...
Subi Arumugam, Alin Dobra, Christopher M. Jermaine