The author of the text, Mark Needham, conducted an experiment to compare the performance of different approaches when querying a Neo4j graph database. He created four databases with one node having 60,000 outgoing relationships, and then modeled the 'relationship' in four different ways: using a specific relationship type, using a generic relationship type and then filtering by end node label, using a generic relationship type and then filtering by relationship property, and using a generic relationship type and then filtering by end node property. The author measured how long it took to retrieve the 'has address' relationships in each approach, and found that using a specific relationship type was significantly faster than the other approaches. This is because using a specific relationship type only loads the necessary data, whereas the other approaches load more data before filtering it out. The performance differences were observed through profiling of the equivalent Cypher queries, which showed that the generic relationship type and end node label approach loaded 70,000 nodes, while the generic relationship type and relationship property approach loaded 120,000 nodes.