Neo4j is an open source graph database that uses nodes, relationships, and properties to store and query data. It supports ACID transactions and is high performance. Cypher is Neo4j's query language that allows matching patterns of nodes and relationships. A graph database model uses nodes connected by relationships, unlike a relational database that uses tables and rows.