High-concurrency Custom-build Relational Database System's design and SQL parser design based on Turing-complete automata

08/11/2020
by   Wanhong Huang, et al.
0

Database system is an indispensable part of software projects. It plays an important role in data organization and storage. Its performance and efficiency are directly related to the performance of software. Nowadays, we have many general relational database systems that can be used in our projects, such as SQL Server, MySQL, Oracle, etc. It is undeniable that in most cases, we can easily use these database systems to complete our projects, but considering the generality, the general database systems often can't play the ultimate speed and fully adapt to our projects. In very few projects, we will need to design a database system that fully adapt to our projects and have a high efficiency and concurrency. Therefore, it is very important to consider a feasible solution of designing a database system (We only consider the relational database system here). Meanwhile, for a database system, SQL interpretation and execution module is necessary. According to the theory of formal language and automata, the realization of this module can be completed by automata. In our experiment, we made the following contributions: 1) We designed a small relational database, and used the database to complete a highly concurrent student course selection system. 2) We design a general automaton module, which can complete the operation from parsing to execution. The using of strategy model and event driven design scheme is used and some improvement on general automata, for example a memory like structure is added to automata to make it better to store context. All these make the automata model can be used in a variety of occasions, not only the parsing and execution of SQL statements.

READ FULL TEXT
research
06/26/2015

Bag-of-Features Image Indexing and Classification in Microsoft SQL Server Relational Database

This paper presents a novel relational database architecture aimed to vi...
research
06/06/2023

DashQL – Complete Analysis Workflows with SQL

We present DashQL, a language that describes complete analysis workflows...
research
10/22/2017

A Brief Comparison of Two Enterprise-Class RDBMSs

This paper is an extended version of a report from a student-developed s...
research
02/21/2020

Snel: SQL Native Execution for LLVM

Snel is a relational database engine featuring Just-In-Time (JIT) compil...
research
06/08/2021

Turing: an Accurate and Interpretable Multi-Hypothesis Cross-Domain Natural Language Database Interface

A natural language database interface (NLDB) can democratize data-driven...
research
01/06/2022

On the Prevalence, Impact, and Evolution of SQL Code Smells in Data-Intensive Systems

Code smells indicate software design problems that harm software quality...
research
03/17/2023

S/C: Speeding up Data Materialization with Bounded Memory

With data pipeline tools and the expressiveness of SQL, managing interde...

Please sign up or login with your details

Forgot password? Click here to reset