Cypher is a graph query language that allows for expressive and efficient querying of graph data. Cypher is intuitive, powerful and easy to learn.
It lets you write graph queries by describing patterns in your data. Because graphs already describe your domain, Cypher lets you focus on your domain instead of getting lost in the mechanics of data access.
Designed to be a human readable query language, Cypher is suitable for developers and operations professionals alike. The guiding principle behind Cypher is to make simple things easy and complex things possible. Cypher combines English prose and intuitive iconography, making queries more self-explanatory.
Cypher is declarative, which means it lets users express what data to retrieve, letting the engine underneath take care of seamlessly retrieving it. In contrast, imperative or scripting languages, including early-generation graph languages, require query writers to have a deep technical understanding of physical implementation details. Cypher eliminates this burden.
The expressive querying of Cypher is inspired by a number of different approaches and established
practices. Most of the keywords, such as
ORDER BY , are inspired
by SQL, while pattern matching borrows from SPARQL. In addition, some of the collection semantics
have been borrowed from languages such as Haskell and Python.
The openCypher project makes it possible for any developer or technology provider to use Cypher and incorporate graph processing capabilities within that product or application.
Easy-to-learn and yet extremely powerful, Cypher is the industry’s most successful and widely adopted graph query language. With the advent of openCypher, the language promises to be just as instrumental in the growth of graph processing and analysis as SQL was instrumental in accelerating the adoption of RDBMS.
With tens of thousands of users already trained in Cypher and numerous tooling providers already offering support for the language, openCypher provides a seamless way for industry participants to provide graph capabilities in their data platforms – ranging from database suppliers, tooling vendors and the broader graph ecosystem.
The project aims to deliver four types of artifacts:
"Cypher Query Language is the de-facto open industry standard for graph processing. SAP HANA Graph now
supports a subset of Cypher (focusing on the querying aspects) – making it possible to migrate existing
apps to HANA more easily or simply take advantage of existing skills. So if MATCH, WHERE and RETURN
clauses are your thing you're well set! Cypher scripts can be embedded during pattern patching via the
graph node of the calculation view editor in SAP Web IDE for HANA or from SQLScript."
- Philip Mugglestone, SAP HANA
"Graph processing is becoming an indispensable part of the modern big data stack. Neo4j’s Cypher
query language has greatly accelerated graph database adoption. We look forward to bringing Cypher’s
graph pattern matching capabilities into the Spark stack, making graph querying more accessible to the
- Ion Stoica, CEO, DataBricks
"Companies such as Google, Facebook and LinkedIn have leveraged graph processing to transform their
respective industries. openCypher promises to bring the same transformative power of graphs to
enterprises of any size."
- Emil Eifrem, CEO of Neo Technology, Creator of Neo4j and Cypher