Recommending a game to a user
In Chapter 2, Working with Graph Data Models, we showed how tabular node and edge data can be used to model and construct a graph with Python. We can use this graph to ask questions that would be difficult and inefficient using the original tabular data, thus demonstrating the power of a graph model.
In this chapter, we will be looking more closely, with examples, at the issues that arise when answering graph-like questions using a relational database. In Chapter 1, Introducing Graphs in the Real World, we touched on how path-based operations are inefficient when using tabular data, due to the requirement for repeated table joins.
However, in real situations, data is often not in the form of node properties and edge lists. A huge amount of data, across every sector, is stored in the form of relational data tables. Relational data is often stored and accessed using SQL, or a SQL-like storage system and query language (for example, MySQL).
In this...