Externally indexed torrent
If you are the original uploader, contact staff to have it moved to your account
Textbook in PDF format
Data is everywhere - it's just not very well connected, which makes it super hard to relate dataset to dataset. Using graphs as the underlying glue, you can readily join data together and create navigation paths across diverse sets of data. Add Elixir, with its awesome power of concurrency, and you'll soon be mastering data networks. Learn how different graph models can be accessed and used from within Elixir and how you can build a robust semantics overlay on top of graph data structures. We'll start from the basics and examine the main graph paradigms. Get ready to embrace the world of connected data!
Graphs provide an intuitive and highly flexible means for organizing and querying huge amounts of loosely coupled data items. These data networks, or graphs in math speak, are typically stored and queried using graph databases. Elixir, with its noted support for fault tolerance and concurrency, stands out as a language eminently suited to processing sparsely connected and distributed datasets.
Using Elixir and graph-aware packages in the Elixir ecosystem, you'll easily be able to fit your data to graphs and networks, and gain new information insights. Build a testbed app for comparing native graph data with external graph databases. Develop a set of applications under a single umbrella app to drill down into graph structures. Build graph models in Elixir, and query graph databases of various stripes - using Cypher and Gremlin with property graphs and SPARQL with RDF graphs. Transform data from one graph modeling regime to another. Understand why property graphs are especially good at graph traversal problems, while RDF graphs shine at integrating different semantic models and can scale up to web proportions.
Harness the outstanding power of concurrent processing in Elixir to work with distributed graph datasets and manage data at scale.
What You Need
To follow along with the book, you should have Elixir 1.10 installed. The book will guide you through setting up an umbrella application for a graph testbed using a variety of graph databases for which Java SDK 8 is generally required. Instructions for installing the graph databases are given in an appendix.
Who This Book Is For
This book is directed primarily at the practicing Elixir programmer who wants to get a better understanding of the graph-processing landscape and see both what support already exists within Elixir and also what can be readily accessed from Elixir. We’ll be mainly interested in using graphs for creating and supporting information networks. The aim is more to move data around and work with, and across, different types of graph models rather than to explore graph algorithms per se. There are other resources for that. Here we want to focus on the graph models themselves and how we might bridge from one model to another.
Graphs Everywhere
Engaging with Graphs
Getting Started
Getting to Grips with Graphs
Managing Graphs Natively with Elixir
Exploring Graph Structures
Navigating Graphs with Neo4j
Querying Neo4j with Cypher
Graphing Globally with RDF
Querying RDF with SPARQL
Traversing Graphs with Gremlin
Delivering Data with Dgraph
Graph to Graph
Transforming Graph Models
Processing the Graph
A1. Project Setups
A2. Database Setups
A3. Graph Anatomy