3.1 Data modelling

SHELF is a transparent platform for the transacting books. It connects user who want to sell books to the users who want to buy books acting as a bridge between the two. Deciding a good schema for the app is necessary. After hours of brainstorming with Amey Parundekar, we decided a model of our database.

src: http://www.oraclechennai.com/img/data-modelling-training.jpg

In our last Hasura webinar, we were shown how to model data effectively. Data modelling is the first step in database designing as we create a conceptual model of how the data items relate to each other and how the schema should look like!

To do this, I used a tool called dbdesigner! It allows you to create visual model of how the database should look like and provides features to allocate foreign key relationships, primary key, auto-incremented columns, etc.

MY SCHEMA

Arrows indicate foreign keys and key icon indicates primary keys

We tried to create a minimal model for our database. We have a few tables as shown above and the table information can be seen in the picture below the table name. To store our app data effectively, we make use of seven, inter-related tables! On the back-end, we will be using some sorting algorithm for customised experience on SHELF and hence, we are storing some information like stream and type (engineering, medical, law, etc.).

Stay tuned for more updates

UP NEXT

Hasura data and auth API testing.

PS, link to my app-idea and link to my app prototype (tasks 1.1 and 1.2)