ORM is an anti-pattern. I tweeted about ORM last week, and since then several people have asked me to clarify what I meant.
I have actually previously written about ORM, but it was in the context of a larger discussion about SQL and I shouldn't have confused the two issues. So here I'm going to focus on ORM itself. Graph Database Use Cases. Last week we spoke about domain modeling with Neo4j and Django.
Today I offer a presentation from Peter Neubauer, COO of Neo Technologies, discussing various use cases that are well suited for graph databases. Couple of quick points with respect to graph databases: Graphs are made up of both nodes and relationships between nodes, another was to say this is vertices and edgesExtension to a regular graph is a property graph, in which, both the nodes and the relationships can both have properties associated with themOne of the key benefits to using graph databases, or at least in Neo4j's case, is the fast traversal between nodes, there is a huge performance gain, especially when compared to a relational database like MySQL.
Peter, provides numerous examples of problems which are nicely handled by graph databases. [QT][QtSql] Connexion à une BDD microsoft Access. L'accès aux données avec Qt. A Simple Guide to Five Normal Forms in Relational Database Theory. William Kent, "A Simple Guide to Five Normal Forms in Relational Database Theory", Communications of the ACM 26(2), Feb. 1983, 120-125.
Also IBM Technical Report TR03.159, Aug. 1981. Also presented at SHARE 62, March 1984, Anaheim, California. Also in A.R. Hurson, L.L.