With the aim of obtaining time/space improvements in classic Data Structures, an emerging trend is to combine Machine Learning techniques with the ones proper of Data Structures. This new area goes under the name of Learned Data Structures. The motivation for its study is a perceived change of paradigm in Computer Architectures that would favour the use of Graphics Processing Units and Tensor Processing Units over conventional Central Processing Units. In turn, that would favour the use of Neural Networks as building blocks of Classic Data Structures. Indeed, Learned Bloom Filters, which are one of the main pillars of Learned Data Structures, make extensive use of Neural Networks to improve the performance of classic Filters. However, no use of Neural Networks is reported in the realm of Learned Indexes, which is another main pillar of that new area. In this contribution, we provide the first, and much needed, comparative experimental analysis regarding the use of Neural Networks as building blocks of Learned Indexes. The results reported here highlight the need for the design of very specialized Neural Networks tailored to Learned Indexes and it establishes a solid ground for those developments. Our findings, methodologically important, are of interest to both Scientists and Engineers working in Neural Networks Design and Implementation, in view also of the importance of the application areas involved, e.g., Computer Networks and Data Bases.
Learned Data Structures, a recent research area overlapping Machine Learning and Data Structure, uses learning from data in order to improve the time/space performance of classic data structures, e.g., Search Trees, Hash Tables and Bloom Filters. It is also claimed that the use of GPUs for the learning phase contributes to make those approaches widespread. Yet, the role of GPU computing with respect to Learned Data Structures is unclear. Moreover, none of such studies has been devoted to algorithms for Sorted Table Search, that are both fundamental and still widely used in several application domains. We provide such a study here, via a systematic experimental comparison of known efficient implementations of Sorted Table Search procedures and their Learned counterparts developed here, obtaining valuable methodological insights into the use of those latter. Specifically, we characterize the scenarios in which those latter can be profitably used with respect to the former, accounting for both CPU and GPU computing. We also formalize an Algorithmic Paradigm of Learned Dichotomic Sorted Table Search procedures that naturally complements the Learned one and that characterizes most of the known Sorted Table Search Procedures as having a "learning phase" that approximates Simple Linear Regression.