Learning Neo4j
eBook - ePub

Learning Neo4j

Rik Van Bruggen

Share book
  1. 222 pages
  2. English
  3. ePUB (mobile friendly)
  4. Available on iOS & Android
eBook - ePub

Learning Neo4j

Rik Van Bruggen

Book details
Book preview
Table of contents
Citations

About This Book

Learning Neo4j provides you with a step-by-step approach of adopting Neo4j, the world's leading graph database. This book includes a lot of background information, helps you grasp the fundamental concepts behind this radical new way of dealing with connected data, and will give you lots of examples of use cases and environments where a graph database would be a great fit.

Starting with a brief introduction to graph theory, this book will show you the advantages of using graph databases. Following on from that, you will be introduced to Neo4j and you will be shown how to install Neo4j on various operating systems. You will then be shown how you can model and import your data into Neo4j.

This book has two use case examples that will show you how to model and implement a graph in Neo4j by analyzing a user case, and analyze the impact a change has on a process or a system. You will also gain an insight into graph visualization options for Neo4j and discover external sources where you can learn more about Neo4j.

Frequently asked questions

How do I cancel my subscription?
Simply head over to the account section in settings and click on “Cancel Subscription” - it’s as simple as that. After you cancel, your membership will stay active for the remainder of the time you’ve paid for. Learn more here.
Can/how do I download books?
At the moment all of our mobile-responsive ePub books are available to download via the app. Most of our PDFs are also available to download and we're working on making the final remaining ones downloadable now. Learn more here.
What is the difference between the pricing plans?
Both plans give you full access to the library and all of Perlego’s features. The only differences are the price and subscription period: With the annual plan you’ll save around 30% compared to 12 months on the monthly plan.
What is Perlego?
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 1000+ topics, we’ve got you covered! Learn more here.
Do you support text-to-speech?
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more here.
Is Learning Neo4j an online PDF/ePUB?
Yes, you can access Learning Neo4j by Rik Van Bruggen in PDF and/or ePUB format, as well as other popular books in Informatik & Programmierung in Java. We have over one million books available in our catalogue for you to explore.

Information

Year
2014
ISBN
9781849517164

Learning Neo4j


Table of Contents

Learning Neo4j
Credits
About the Author
About the Reviewers
www.PacktPub.com
Support files, eBooks, discount offers and more
Why Subscribe?
Free Access for Packt account holders
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the color images of this book
Errata
Piracy
Questions
1. Graphs and Graph Theory – an Introduction
Introduction to and history of graphs
Definition and usage of graph theory
Social studies
Biological studies
Computer science
Flow problems
Route problems
Web search
Test questions
Summary
2. Graph Databases – Overview
Background
Navigational databases
Relational databases
NoSQL databases
Key-Value stores
Column-Family stores
Document stores
Graph databases
The Property Graph model of graph databases
Node labels
Relationship types
Why (or why not) graph databases
Why use a graph database?
Complex queries
In-the-clickstream queries on live data
Path finding queries
Why not use a graph database, and what to use instead
Large, set-oriented queries
Graph global operations
Simple, aggregate-oriented queries
Test questions
Summary
3. Getting Started with Neo4j
Neo4j – key concepts and characteristics
Built for graphs, from the ground up
Transactional, ACID-compliant database
Made for Online Transaction Processing
Designed for scalability
A declarative query language – Cypher
Sweet spot use cases of Neo4j
Complex, join-intensive queries
Path finding queries
Committed to open source
The features
The support
The license conditions
Installing Neo4j
Installing Neo4j on Windows
Installing Neo4j on Mac or Linux
Using Neo4j in a cloud environment
Test Questions
Summary
4. Modeling Data for Neo4j
The four fundamental data constructs
How to start modeling for graph databases
What we know – ER diagrams and relational schemas
Introducing complexity through join tables
A graph model – a simple, high-fidelity model of reality
Graph modeling – best practices and pitfalls
Graph modeling best practices
Design for query-ability
Align relationships with use cases
Look for n-ary relationships
Granulate nodes
Use in-graph indexes when appropriate
Graph database modeling pitfalls
Using "rich" properties
Node representing multiple concepts
Unconnected graphs
The dense node pattern
Test questions
Summary
5. Importing Data into Neo4j
Alternative approaches to importing data into Neo4j
Know your import problem – choose your tooling
Importing small(ish) datasets
Importing data using spreadsheets
Importing using Neo4j-shell-tools
Importing using Load CSV
Scaling the import
Questions and answers
Summary
6. Use Case Example – Recommendations
Recommender systems dissected
Using a graph model for recommendations
Specific query examples for recommendations
Recommendations based on product purchases
Recommendations based on brand loyalty
Recommendations based on social ties
Bringing it all together – compound recommendations
Business variations on recommendations
Fraud detection systems
Access control systems
Social networking systems
Questions and answers
Summary
7. Use Case Example – Impact Analysis and Simulation
Impact analysis systems dissected
Impact analysis in Business Process Management
Modeling your business as a graph
Which applications are used in which buildings
What buildings are affected if something happens to Appl_9?
What BusinessProcesses with an RTO of 0-2 hours would be affected by a fire at location Loc_100
Impact simulation in a Cost Calculation environment
Modeling your product hierarchy as a graph
Working with a product hierarchy graph
Calculating the price based on a full sweep of the tree
Calculating the price based on intermediate pricing
Impact simulation on product hierarchy
Questions and Answers
Summary
8. Visualizations for Neo4j
The power of graph visualizations
Why graph visualizations matter!
Interacting with data visually
Looking for patterns
Spot what's important
The basic principles of graph visualization
Open source visualization libraries
D3.js
Graphviz
Sigma.js
Vivagraph.js
Integrating visualization libraries in your application
Visualization solutions
Gephi
Keylines
Linkurio.us
Neo4j Browser
Tom Sawyer
Closing remarks on visualizations
The "fireworks" effect
The "loading" effect
Questions and answers
Summary
9. Other Tools Related to Neo4j
Data integration tools
Talend
MuleSoft
Business Intelligence tools
Modeling tools
Arrows
OmniGraffle
Questions and answers
Summary
A. Where to Find More Information Related to Neo4j
Online tools
Google group
Stack Overflow
The Neo4j community website
The new Neo4j website
The Neo4j Blog
GraphGists collection
The Cypher reference card
Other books
Events
Meetup
GraphConnect
Conferences
Training
Neo Technology
B. Getting Started with Cypher
The key attributes of Cypher
Key operative words in Cypher
The Cypher refcard
Syntax
Index

Learning Neo4j

Copyright © 2014 Packt Publishing
All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.
Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author, nor Packt Publishing, and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book.
Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use ...

Table of contents