join the nosql movement nosql database types as you saw earlierthere are four big nosql typeskey-value storedocument storecolumn-oriented databaseand graph database each type solves problem that can' be solved with relational databases actual implementations are often combinations of these orientdbfor exampleis multi-model databasecombining nosql types orientdb is graph database where each node is document before going into the different nosql databaseslet' look at relational databases so you have something to compare them to in data modelingmany approaches are possible relational databases generally strive toward normalizationmaking sure every piece of data is stored only once normalization marks their structural setup iffor instanceyou want to store data about person and their hobbiesyou can do so with two tablesone about the person and one about their hobbies as you can see in figure an additional table is necessary to link hobbies to persons because of their many-to-many relationshipa person can have multiple hobbies and hobby can have many persons practicing it full-scale relational database can be made up of many entities and linking tables now that you have something to compare nosql tolet' look at the different types name birthday person id person id hobby id hobby id hobby name hobby description jos the boss archery fritz von braun shooting arrows from bow conquering the world looking for trouble with your neighboring countries building things also known as construction surfing catching waves on plank swordplay fencing with swords lollygagging hanging around doing nothing freddy stark delphine thewiseone person info tablerepresents person-specific information person-hobby linking tablenecessary because of the many-to-many relationship between hobbies and persons hobby info tablerepresents hobby-specific information figure relational databases strive toward normalization (making sure every piece of data is stored only onceeach table has unique identifiers (primary keysthat are used to model the relationship between the entities (tables)hence the term relational