Here’s what we discussed:
Talk to me about how you use Neo4j.
I’m a Neo4j consultant at GraphAware, a Neo4j consulting company based in London. I’ve been working with the graph database for the last four years, and it has become more of a passion than a job.
One of our last projects involved providing recommendations for holiday house accommodations. In a period of only two weeks, we went from zero to production with a recommendation engine, and then went back to make some fine tuning. Our recommendations continually change based on updated information that is gathered.
Right now, with Neo4j we use natural language processing and Elasticsearch integration to provide graph-aided searches. Through these queries we can provide elastic boosts and relevencies based on the user’s graph. Some big clients are using it, such as Airbnb.
What made Neo4j stand out?
We were able to go into production much, much faster than with a traditional relational database. It also provides us with the flexibility to continually make changes over time — often our clients aren’t sure what they really want, so we have to make adjustments. We don’t really do any work without Neo4j and have increased our customer base, which is great.
If you could start over with Neo4j, taking everything you know now, what would you do differently?
I immediately fell in love with Neo4j. At the time I discovered graph databases, I was working on a DNA project for dog genealogy with traditional databases and was really struggling. From the very beginning I wasn’t sure how to move forward with my data. There isn’t really anything would do differently — experience is really important.
Can you talk to me about some of your most interesting or surprising results you’ve had while using Neo4j?
We did an interesting project this last week, which we presented at a hackathon. We do a lot of computations with Apache Spark which you can now run within Cypher.
We created a procedure in which we triggered the Apache Sark process over a Spark cluster. This allows your Neo4j JVM to remain quiet, perform all computation outside of your main database, and automatically write the results back to Neo4j. It is going to be an important aspect of our future work.
Want to share about your Neo4j project in a future 5-Minute Interview? Drop us a line at firstname.lastname@example.org.
Sign Me Up