kossiitkgp / internal-sessions

Tracking all the Internal Sessions KOSS conducts
0 stars 2 forks source link

Conduct: Database normalisation #1

Open ghostwriternr opened 6 years ago

ghostwriternr commented 6 years ago

Abstract

A lot of us will almost certainly run into a stage when writing software where we'd have to persist our data in a database. Relational databases (like MySQL) are usually a great and recommended choice (unless you're in a hurry / you're storing unstructured jsons, for example). Interacting with a relational database is very easy (and so is deciding on WHAT data to store in it), but deciding HOW exactly to store your data in different tables is hard. Database normalisation is the process of restructuring all this data in a manner so as to reduce data redundancy and improve data integrity.

Target Audience

Topics

All of the topics mentioned below will be supported at each step by real-life examples.

Prerequisites

It would help to know a bit about relational databases. A very short list you can check off is (you can run a web search with the same search terms):

Although the session is about practical databases, this whole process of normalisation happens on a pen and paper, so no software installation is necessary.

Duration

Introduction: 10 minutes Functional dependency: 5 minutes Normalisation: 35 minutes Questions: 10 minutes


kshitij10496 commented 6 years ago

@ghostwriternr Could you also add some links to resources from where people can get a brief idea about RDMS and the basic idea of keys?

ghostwriternr commented 6 years ago

Preliminary notes for the session: https://paper.dropbox.com/doc/Database-normalisation-owWMGqySRyjOxGfKIlBWV?_tk=share_copylink

xypnox commented 6 years ago

Session Notes : https://gist.github.com/xypnox/da5b7a4c9c7d41d56f266298b1f47d00

sshevya commented 6 years ago

​​Highlights ​​ 1.​​Brief introduction of database ​​2.What is normalization? ​​3.Description of primary key, candidate key, foreign key ​​4.Relationships in Database- one to one, many to one, one to many, many to many ​​5.Examples of each type ​​6.Functional dependency in relational databases ​​7.Forms of Database normalization-1NF, 2NF, 3NF, BCNF (couldn’t be covered) ​​8.Examples of each form

thealphadollar commented 6 years ago

@ghostwriternr Reminder: you were to send us some document detailing some assignment/work that can be done to better understand the topic.