Book Image

Building web applications with Python and Neo4j

By : Sumit Gupta
Book Image

Building web applications with Python and Neo4j

By: Sumit Gupta

Overview of this book

Table of Contents (14 chapters)
Building Web Applications with Python and Neo4j
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Chapter 3. Mutating Graph with Cypher

Writing to databases or mutating the underlying data in databases' is one of the important aspects of any Database Management System (DBMS). It provides a structure to your data within the underlying datastore. It is imperative to have a performance-efficient mechanism for mutation, so that your graph database can be available for further querying in the shortest possible time.

Apart from being performance-efficient, we also need to ensure that the mutation/write process follows the following principles of transaction management:

  • Atomicity (all or nothing): Every write is atomic in nature, so that if any part of a transaction fails, the database state is left unchanged

  • Consistency (from one valid state to another): At any point in time, data in the database is in a consistent state where all users read the same data

  • Isolation: Each transaction should occur independently and modified data should not be accessible to any other operations during a transaction...