Execution Framework for Highly Interactive Query Workloads
T2015-315 A database management systems that can execute joins with rapid response times.
Highly interactive workloads in data querying are becoming more commonplace, and there is a need to improve operations to cope with unique requirements of these workloads. For example, JOIN is a fundamental operation in databases used to combine data from two sets of data. However, the JOIN operation is not well suited to allow users to inspect results during the querying process. Current databases are unable to handle highly interactive workloads due to the following challenges: large number of queries, data size and query scheduling, query variability, response time vs. throughput, and highly interactive querying. New database execution engines are needed to handle these problems.
Researchers at The Ohio State University led by Dr. Arnab Nandi developed a database management software (DBMS) engine that utilizes cyclic approaches to execute joins. In the heart of the engine there are multiple novel ides: shared latches, client resources utilization, cyclic Hash Join, and FluxJoin. Shared latches are introduced to allow latching database blocks for multiple session scans. Client resource utilization allows for the DBMS engine to perform internal database operations at the client session. Cyclic HashJoin is structured so as to allow the DBMS engine to communicate between the cyclic join process and the client process in addition to the cyclic scan process itself. This protocol allows a cyclic scan to run, without being delayed due to hash map procedures such as building/ modifying of hashmaps. FluxJoin is a new join algorithm, which allows a database engine to improve performance of a join by using block level hashtags. This algorithm provides highly interactive response time with improved performance compared to other algorithms with similar response times.
- Data extraction and analytics