Graph Databases–and Their Potential to Transform How We Capture Interdependencies
Dennis Drogseth gets an introduction to Neo4j and learns how it can be implemented in an IT organization
Discovering, capturing and making sense of complex interdependencies is central to running IT organizations more effectively, and it is also a critical part of running the businesses IT serves. Whether it’s optimizing a network, or an application infrastructure, managing change, or providing more effective security-related access—more often than not these problems involve a complex set of physical and human interdependencies that can be quite challenging to manage.
Moreover, once any two or more of these areas are brought together, the relationships are rarely linear or purely hierarchic. They form, in the computer science sense of the term, a graph. These domains are rarely static. In fact, they tend to change with reasonable frequency, as a result of factors such as reorganization and personnel changes, mergers and acquisitions, new applications being developed and old ones retired, and ongoing data center improvements.
Traditional relational databases have served the industry well in enabling service and process models that tread upon these complexities. But in most deployments they still demand significant overhead and expert levels of administration to adapt to change. Relational databases can require cumbersome indexing when faced with the non-hierarchic relationships. And these are becoming a lot more persistent in complex IT ecosystems, with partners and/or suppliers and service providers. Just factor in the dynamic infrastructures associated with cloud and agile and these trends are multiplied.
Recently my introduction to graph databases came from talking with Neo4j and a few of its deployments. Neo4j is the current market leader in graph databases. With its roots in Malmö, Sweden and a headquarters in Silicon Valley, Neo now has a global presence that now spans ten countries.
Unlike relational databases, graph databases are designed to store interconnected data that’s not purely hierarchic. This makes it easier to sensibly capture relationships and dependencies by not forcing intermediate indexing at every turn. It also provides a more solid base to evolve models of real-world infrastructures, business services, social relationships, or business behaviors that are both fluid and
Neo4j is built “from the ground up” to support high-performance graph queries on large data sets for large enterprises with high-availability requirements. Thirty of its current 200 customers reside in the Global 2000.
Read the Full Article Here.