Hello, I am a noob and I am in a dire need of advice concerning Neo4j, if it fits my project or not. It's easier to ask those who are experienced than read a whole book just to learn that you wasted your time with the wrong technology.
See, I am building this db about robots (I am talking about a website) and a robot is a part made of parts (+itself, as it is a part/object itself). It introduces recursion. A robot is made of a body (among other parts) that is made of a leg that is made of a thigh, etc. Each part has a set of tags (blue, metal), specifications (length), etc and the leg inherits the tags/specs of the thigh, the body inherits the tags/specs of the leg which inherited from the thigh, etc. A robot can have options, like a laser beam or a chainsaw. Same, with inherited tags/specs. Now, a part (ex: body) can have options that may or may not be inherited by the higher part (ex: the robot, because it's specialized). It can also add new parts (a new kind of breast plate) or tags/specs (an exclusive color), to the body used by the robot.
Hierarchies, recursivness, inheritance, they are not something that I can handle with a RDBMS like Mysql without major headache. The problem is that I want a powerful search engine that will be able to find every piece that has such and such tag or spec (ex: red led eyes, articulate feet, height between x and y), make that kind of complex queries with an unknown level of depth without god awful performances because of recursion.
Is Neo4j the way to go (integrated with procedural PHP), knowing that it's a major investment for a specific problem (and I really don't have time to learn something just to learn it doesn't solve my problem, I would honestly be in trouble as I have not extensive time :/).
Thank you for reading me.