the rise of graph databases our dish recommendations on the ingredientsoverlap in recipes network this is simple and intuitive approachyet already yields fairly accurate results let' look at the three data elements we require step data retrieval for this exercise we require three types of datarecipes and their respective ingredients list of distinct ingredients we like to model at least one user and his preference for certain dishes as alwayswe can divide this into internally available or created data and externally acquired data internal data--we don' have any user preferences or ingredients lying aroundbut these are the smallest part of our data and easily created few manually input preferences should be enough to create recommendation the user gets more interesting and accurate results the more feedback he gives we'll input user preferences later in the case study list of ingredients can be manually compiled and will remain relevant for years to comeso feel free to use the list in the downloadable material for any purposecommercially or otherwise external data--recipes are different matter thousands of ingredients existbut these can be combined into millions of dishes we are in luckhoweverbecause pretty big list is freely available at many thanks to fictive kin for this valuable data set with more than hundred thousand recipes sure there are duplicates in herebut they won' hurt our use case that badly we now have two data files at our disposala list of ingredients (ingredients txtand more than hundred thousand recipes in the recipes json file sample of the ingredients list can be seen in the following listing listing ingredients list text file sample ditalini egg noodles farfalle fettuccine fusilli lasagna linguine macaroni orzo the "openrecipesjson file contains more than hundred thousand recipes with multiple properties such as publish datesource locationpreparation timedescription