relational database would rather strive for minimizing data redundancy this process is known as database normalizationwhere table is decomposed into smaller (less redundanttables while maintaining all the information intact in normalized database one needs to conduct changes of an attribute in only one table the aim of this process is to isolate data changes in one table relational database management systems (rdbmsare good choice as database for data that fits nicely into tabular format the relationships in the data can be expressed by joining the tables their fit starts to downgrade when the joins become more complicatedespecially when they become many-to-many joins query time will also increase when your data size starts increasingand maintaining the database will be more of challenge these factors will hamper the performance of your database graph databaseson the other handinherently store data as nodes and relationships although graph databases are classified as nosql type of databasea trend to present them as category in their own right exists one seeks the justification for this by noting that the other types of nosql databases are aggregation-orientedwhile graph databases aren' relational database mightfor examplehave table representing "peopleand their properties any person is related to other people through kinship (and friendshipand so on)each row might represent personbut connecting them to other rows in the people table would be an immensely difficult job do you add variable that holds the unique identifier of the first child and an extra one to hold the id of the second childwhere do you stoptenth childan alternative would be to use an intermediate table for child-parent relationshipsbut you'll need separate one for other relationship types like friendship in this last case you don' get column proliferation but table proliferationone relationship table for each type of relationship even if you somehow succeed in modeling the data in such way that all family relations are presentyou'll need difficult queries to get the answer to simple questions such as " would like the grandsons of john mcbain first you need to find john mcbain' children once you find his childrenyou need to find theirs by the time you have found all the grandsonsyou have hit the "peopletable three times find mcbain and fetch his children look up the children with the ids you got and get the ids of their children find the grandsons of mcbain figure shows the recursive lookups in relation database necessary to get from john mcbain to his grandsons if everything is in single table figure is another way to model the datathe parent-child relationship is separate table recursive lookups such as these are inefficientto say the least