MongoDB Schema Design and Evaluation
Abstract
Relational Databases have always been the only choice for several decades. However, modern times they have started falling short in terms of scalability. Also, current applications do not fit well in the strict schema approach of relational databases. Today NoSQL databases have become an essential alternative for webscale applications. Many users of such applications are moving to No-SQL databases. In such a scenario, there is a requirement to convert from RDB to NoSQL. However, this field of research is not explored extensively. Moreover, expert knowledge is required to determine a suitable NoSQL schema for a given RDB and application. The work is divided into two parts. The first part takes the algorithm to convert RDB to a NoSQL schema design outline. The algorithm accepts RDB as input. Here Brute force is applied to choose whether the collection in MongoDB schema needs to be embedded or referenced for each relationship between two tables. The second part uses a query based metrics tool to determine the best schema from the generated schema outlines. The queries and schema outline are taken as input to the tool. The queries here define the application workflow. Through the various parameters and functions, the tool decides the number of collections required to fetch the query and the path of collection traversed by the query. Each schema outline gets a schema score and query score. The schema score is the sum of the query scores for the specific schema. The optimized algorithm is defined basedon the results obtained, which provides the most appropriate schema for a given RDB and application query load.
Collections
- M Tech Dissertations [923]