1.

Record Nr.

UNINA9910797326203321

Autore

Lal Mahesh

Titolo

Neo4j graph data modeling : design efficient and flexible databases by optimizing the power of Neo4j / / Mahesh Lal ; acquisition editor Shaon Basu ; content development editor Kirti Patil ; copy editor Pranjali Chury

Pubbl/distr/stampa

Birmingham, England ; ; Mumbai, [India] : , : Packt Publishing, , 2015

©2015

ISBN

1-78439-730-X

Edizione

[1st edition]

Descrizione fisica

1 online resource (138 p.)

Collana

Community Experience Distilled

Disciplina

005.74

Soggetti

Database design

Databases - Development

Databases - Programming

Lingua di pubblicazione

Inglese

Formato

Materiale a stampa

Livello bibliografico

Monografia

Note generali

Includes index.

Nota di contenuto

""Cover""; ""Copyright""; ""Credits""; ""About the Author""; ""About the Reviewers""; ""www.PacktPub.com""; ""Table of Contents""; ""Preface""; ""Chapter 1: Graphs are Everywhere""; ""Graphs in mathematics""; ""The property graph model""; ""Storage � native graph storage versus non-native graph storage""; ""Reasons to use graph databases""; ""What to use a graph database for""; ""Choosing Neo4j for exploring graph databases""; ""The structure of the book""; ""Summary""; ""Chapter 2: Modeling Flights and Cities""; ""Graphs are more than social""

""Designing a system to get a travel itinerary""""Modeling flights and cities""; ""Identifying the entities""; ""Modeling nodes and relationships""; ""Using Cypher to operate on Neo4j""; ""Creating cities in Neo4j""; ""Indices""; ""Adding flights to Neo4j""; ""Traversing relationships""; ""Summary""; ""Chapter 3: Formulating an Itinerary""; ""Creating an itinerary from flights and cities""; ""Information and paths""; ""Using Cypher to find a path""; ""Business logic should lie in code""; ""Summary""; ""Chapter 4: Modeling Bookings  and Users""; ""Building a data model for booking flights""

""A simple model of the bookings ecosystem""""Modeling bookings in an RDBMS""; ""Creating bookings and users in Neo4j""; ""Creating users""; ""Creating bookings in Neo4j""; ""Queries to find journeys and



bookings""; ""Finding all journeys of a user""; ""Queries for finding the booking history  of a user""; ""Upcoming journeys of a user""; ""Summary""; ""Chapter 5: Refactoring the Data Model""; ""Capturing information about hotels at airports""; ""Modeling airports and hotels""; ""Extracting airport information from flights""; ""Breaking airport out as a node""

""Connecting flights to airports""""Delinking flights and cities""; "" Querying the refactored data model""; ""Reasons for not migrating using a  single query""; ""Adding hotels to airports""; ""Fetching hotels""; ""Summary""; ""Chapter 6: Modeling Communication Chains""; ""Capturing traveler reviews for hotels""; ""A model for reviews and comments""; ""Adding reviews to Neo4j""; ""Listing reviews for a hotel""; ""Using reviews to find the average rating  of a hotel""; ""Adding comments to Neo4j""; ""Considerations for modeling temporal data as chains""; ""Summary""

""Chapter 7: Modeling Access Control""""Controlling access for content change""; ""Modeling hierarchies""; ""Modeling geographical regions""; ""Adding countries and regions to Neo4j""; ""Modeling hotel chains""; ""Adding hotel chains to Neo4j""; ""Modeling access control groups and employees""; ""Adding access groups to Neo4j""; ""Adding employees to Neo4j""; ""Querying the data model to find what is accessible to an employee""; ""Summary""; ""Chapter 8: Recommendations and Analysis of Historical Data""; ""Recommending cities to travelers""; ""Modeling categories""

""Creating categories in Neo4j""

Sommario/riassunto

If you are a developer who wants to understand the fundamentals of modeling data in Neo4j and how it can be used to model full-fledged applications, then this book is for you. Some understanding of domain modeling may be advantageous but is not essential.