A novel form of database that focuses on connections between entities, called a graph database, is finding a home in the health care industry.
"In health care, it turns out, there are quite a number of problems that involve understanding the connections between things," said Philip Rathle, vice president of products at Neo Technologies, which sells support subscriptions to its open source Neo4j graph database.
Diseases may have multiple symptoms. Doctors may belong to multiple heath care networks. There are also relationships between different types of organizations, such as insurance companies and hospitals. In the realm of bioinformatics, multiple connections exist among genes and proteins.
"There are a lot of connections happening, and graphs are good at matching connections," Rathle said.
Neo has landed a number of enterprise customers in the health care space, including the Curaspan Health Group, GoodStart Genetics, SharePractice and Janssen Pharmaceuticals, among others.
Neo4j has been used by them for tasks such as patient management, drug research, clinical trials, genomics, and marketing.
The health care industry is not alone in adopting graph — Neo4j has also been used in telecommunications, financial services and hospitality. Neo4j has been used by a wide variety of organizations, including Cisco, Accenture, eBay and Walmart. The health care industry, however, seems to especially thrive from understanding connections between different entities.
A graph database differs from a typical relational database in that it stores the relations between entities in addition to the entities themselves and the properties for entities. As a result, database operations can quickly move across different, though related, entities, a process that for relational databases can be a headache to orchestrate as well as computationally intensive to the degree that would make such searches infeasible to execute in many cases.
"Most databases are designed for storing and retrieving individual bits of information," Rathle said. "But graph databases are designed to navigate and manage connected data."
Neo designed its database to be highly scalable. The company has customers running production databases, using a cluster of servers, with billions of relationships among different entities. The database comes with its own query language, called Cypher, a relational-like query language designed for determining relationships between entities.
HealthUnlocked is one of its health care customers. The London-based social networking outfit built a new service, called Health Graph, based on the Neo4j database. A graph database was a natural fit. It was able to link across a voluminous vocabulary describing all manner of symptoms and conditions in multiple languages.
A medical question may be asked using any one of a number of different terms, based on the level of medical education. So the system needs to make connections across many different terms in order to make a match, said Alex Trofymenko, HealthUnlocked's head of technology.
Sign up for Computerworld eNewsletters.