Book Image

Learning Neo4j 3.x - Second Edition

By : Jerome Baton
Book Image

Learning Neo4j 3.x - Second Edition

By: Jerome Baton

Overview of this book

Neo4j is a graph database that allows traversing huge amounts of data with ease. This book aims at quickly getting you started with the popular graph database Neo4j. Starting with a brief introduction to graph theory, this book will show you the advantages of using graph databases along with data modeling techniques for graph databases. You'll gain practical hands-on experience with commonly used and lesser known features for updating graph store with Neo4j's Cypher query language. Furthermore, you'll also learn to create awesome procedures using APOC and extend Neo4j's functionality, enabling integration, algorithmic analysis, and other advanced spatial operation capabilities on data. Through the course of the book you will come across implementation examples on the latest updates in Neo4j, such as in-graph indexes, scaling, performance improvements, visualization, data refactoring techniques, security enhancements, and much more. By the end of the book, you'll have gained the skills to design and implement modern spatial applications, from graphing data to unraveling business capabilities with the help of real-world use cases.
Table of Contents (24 chapters)
Title Page
Credits
About the Authors
Acknowledgement
About the Reviewers
www.PacktPub.com
Customer Feedback
Preface

Importing from a JDBC source


Using Apoc, it's also possible to import data from a relational database, providing it has a Java driver. The first thing that you have to do is download the JDBC driver for your database and drop it into the plugins folder of your Neo4j installation. In this example, we will use MySQL. Let's set it up.

Test setup

In case you do not wish to install MySQL, you can use docker and run this command to start a MySQL running on port 3306, without a password for the root user:

docker run -e MYSQL_ALLOW_EMPTY_PASSWORD=yes -p 3306:3306 mysql

Connect with your favorite client (I use Squirrel) to enter some commands to create the data that we will import thereafter:

CREATE DATABASE learning
use learning;
CREATE TABLE operating_systems (id long not null, name VARCHAR(50), familly VARCHAR(50));
INSERT INTO operating_systems VALUES (1, "DEBIAN", "UNIX");
INSERT INTO operating_systems VALUES (2, "UBUNTU LINUX", "UNIX");
INSERT INTO operating_systems VALUES (3, "LINUX MINT", "UNIX...