Building Web Applications with Python and Neo4j
eBook - ePub

Building Web Applications with Python and Neo4j

Sumit Gupta

Buch teilen
  1. 184 Seiten
  2. English
  3. ePUB (handyfreundlich)
  4. Über iOS und Android verfügbar
eBook - ePub

Building Web Applications with Python and Neo4j

Sumit Gupta

Angaben zum Buch
Buchvorschau
Inhaltsverzeichnis
Quellenangaben

Über dieses Buch

If you are a Python developer and want to expand your understanding of Python-based web applications over Neo4j graph data models, this is the book for you.

Häufig gestellte Fragen

Wie kann ich mein Abo kündigen?
Gehe einfach zum Kontobereich in den Einstellungen und klicke auf „Abo kündigen“ – ganz einfach. Nachdem du gekündigt hast, bleibt deine Mitgliedschaft für den verbleibenden Abozeitraum, den du bereits bezahlt hast, aktiv. Mehr Informationen hier.
(Wie) Kann ich Bücher herunterladen?
Derzeit stehen all unsere auf Mobilgeräte reagierenden ePub-Bücher zum Download über die App zur Verfügung. Die meisten unserer PDFs stehen ebenfalls zum Download bereit; wir arbeiten daran, auch die übrigen PDFs zum Download anzubieten, bei denen dies aktuell noch nicht möglich ist. Weitere Informationen hier.
Welcher Unterschied besteht bei den Preisen zwischen den Aboplänen?
Mit beiden Aboplänen erhältst du vollen Zugang zur Bibliothek und allen Funktionen von Perlego. Die einzigen Unterschiede bestehen im Preis und dem Abozeitraum: Mit dem Jahresabo sparst du auf 12 Monate gerechnet im Vergleich zum Monatsabo rund 30 %.
Was ist Perlego?
Wir sind ein Online-Abodienst für Lehrbücher, bei dem du für weniger als den Preis eines einzelnen Buches pro Monat Zugang zu einer ganzen Online-Bibliothek erhältst. Mit über 1 Million Büchern zu über 1.000 verschiedenen Themen haben wir bestimmt alles, was du brauchst! Weitere Informationen hier.
Unterstützt Perlego Text-zu-Sprache?
Achte auf das Symbol zum Vorlesen in deinem nächsten Buch, um zu sehen, ob du es dir auch anhören kannst. Bei diesem Tool wird dir Text laut vorgelesen, wobei der Text beim Vorlesen auch grafisch hervorgehoben wird. Du kannst das Vorlesen jederzeit anhalten, beschleunigen und verlangsamen. Weitere Informationen hier.
Ist Building Web Applications with Python and Neo4j als Online-PDF/ePub verfügbar?
Ja, du hast Zugang zu Building Web Applications with Python and Neo4j von Sumit Gupta im PDF- und/oder ePub-Format sowie zu anderen beliebten Büchern aus Computer Science & Programming in Python. Aus unserem Katalog stehen dir über 1 Million Bücher zur Verfügung.

Information

Jahr
2015
ISBN
9781783983988

Building Web Applications with Python and Neo4j


Table of Contents

Building Web Applications with Python and 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 example code
Errata
Piracy
Questions
1. Your First Query with Neo4j
Thinking in graphs for SQL developers
Comparing SQL and Cypher
Evolving graph structures from SQL models
Licensing and configuring – Neo4j
Licensing – Community Edition
Licensing – Enterprise Edition
Installing Neo4J Community Edition on Linux/Unix
Installing as a Linux tar / standalone application
Installing as a Linux service
Installing Neo4j Enterprise Edition on Unix/Linux
Using the Neo4j shell
Introducing the Neo4j REST interface
Authorization and authentication
CRUD operations
Running queries from the Neo4j browser
Summary
2. Querying the Graph with Cypher
Basic anatomy of a Cypher query
Brief details of Cypher
Cypher execution phases
Parsing, validating, and generating the execution plan
Locating the initial node(s)
Selecting and traversing the relationships
Changing and/or returning the values
The structure of Cypher
The read operations
MATCH
OPTIONAL MATCH
START
AGGREGATION
The create or update operations
Create
SET
MERGE
The delete operation
Pattern and pattern matching
Sample dataset
Pattern for nodes
Pattern for labels
Pattern for relationships
Pattern for properties
Using the where clause with patterns
Using patterns in the where clause
Using general clauses with patterns
The order by clause
The limit and skip clauses
The WITH clause
The UNION and UNION ALL clauses
Working with nodes and relationships
Summary
3. Mutating Graph with Cypher
Creating nodes and relationships
Working with nodes
Single node
Multiple nodes
Node with labels
Node with properties
Working with relationships
Single relationships
Multiple relationships
Relationships with properties
Nodes and relationships with full paths
Creating unique nodes and relationships
CREATE UNIQUE and MERGE
Working with constraints
Transforming nodes and relationships
Updating node properties
Updating a label
Updating relationships
Cypher query optimizations
Indexes
Index sampling
Understanding execution plans
Analyzing and optimizing queries
Summary
4. Getting Python and Neo4j to Talk Py2neo
Installing and configuring py2neo
Prerequisites
Installing py2neo
Exploring the py2neo APIs
Graph
Authentication
Node
Relationship
Cypher
Transactions
Paths
Creating a social network with py2neo
Batch imports
Unit testing
Summary
5. Build RESTful Service with Flask and Py2neo
Introducing (and installing) Flask
Setting up web applications with Flask and Flask-RESTful
Your first Flask application
Displaying static content
Displaying dynamic content
Your first Flask RESTful API
JSON processing
REST APIs for social network data using py2neo
ORM for graph databases py2neo – OGM
Social network application with Flask-RESTful and OGM
Creating object model
Creating REST APIs over data models
Summary
6. Using Neo4j with Django and Neomodel
Installing and configuring Neomodel
Declaring models and properties
Defining nodes
Defining properties
Persisting and querying a social data model
Adding relationships to models
Running Cypher queries
Using Neomodel in a Django app
Signals in Neomodel
Summary
7. Deploying Neo4j in Production
Neo4j logical architecture
Disk/filesystem
Record files
Transaction logs
Caches
Core Java API
Traversal framework
REST API
Neo4j physical architecture
High availability
Fault tolerance
Data replication and data locality
Advanced settings
Monitoring the health of the Neo4J nodes
Neo4j browser
Webadmin
JMX beans
Backup and recovery
Summary
Index

Building Web Applications with Python and Neo4j

Copyright © 2015 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 of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.
First published: July 2015
Production reference: 1100715
Published by Packt Publishing Ltd.
Livery Place
35 Livery Street
Birmingham B3 2PB, UK.
ISBN 978-1-78398-398-8
www.packtpub.com

Credits

Author
Sumit Gupta
Reviewers
Adarsh Deshratnam
Gianluca Tiepolo
Tsanyo Tsanev
Manuel Vives
Commissioning Editor
Kunal Parikh
Acquisition Editor
Larissa Pinto
Content Development Editor
Anish Sukumaran
Technical Editors
Novina Kewalramani
Ryan Kochery
Manal Pednekar
Copy Editors
Vikrant Phadke
Alpha Singh
Project Coordinator
Izzat Contractor
Proofreader
Safis Editing
Indexer
Rekha Nair
Production Coordinator
Aparna Bhagat
Cover Work
Aparna Bhagat

About the Author

Sumit Gupta is a seasoned professional, innovator, and technology evangelist, with over 100 months of experience in architecting, managing, and delivering en...

Inhaltsverzeichnis