Skip to content

neo4j

TODO

Tutorials / Example Projects

Install

sudo su
apt update && apt -y upgrade
apt install apt-transport-https ca-certificates curl software-properties-common -y
curl -fsSL https://debian.neo4j.com/neotechnology.gpg.key | apt-key add -
sudo add-apt-repository "deb https://debian.neo4j.com stable 4.1"
sudo apt install neo4j
sudo systemctl enable neo4j.service
sudo systemctl status neo4j.service
# Go to http://localhost:7687/browser/ 7687

wiki.software.list.docker.docker-compose.templates

version: '3'
services:
  neo4j:
    image: neo4j:4.4
    restart: unless-stopped
    ports:
      - 7474:7474
      - 7687:7687
    volumes:
      - ./conf:/conf
      - ./data:/data
      - ./import:/import
      - ./logs:/logs
      - ./plugins:/plugins
    environment: 
      # Raise memory limits
      - NEO4J_dbms_memory_pagecache_size=1G
      - NEO4J_dbms.memory.heap.initial_size=1G
      - NEO4J_dbms_memory_heap_max__size=1G

TODO

Intro to Neo4j - YouTube

  • Neo4J supports wiki.concepts.list.Acronyms.ACID, transactional databases
  • Key Value
  • Document Databases
  • Joins in SQL get complicated
  • Graph databases store the relationships between our data
  • Use Cases
  • Real Time Recommendations
    • Tones of different data points you can weigh
    • Walmart uses Neo4j
  • Master Data Management
    • Manages hierarchies for Cisco
  • Fraud Detection
    • Blockchain much!?!?!?!?
  • Graph Based Search
    • Neo4J started off with the founders developing a protocol.
    • Animal -> Gog -> Golden Doodle
  • Network and IT operations
    • Map out dependencies
    • Internet of THings dependencies and relationships
    • HP uses NEo4J to map network topologies
  • Identity and Access Management
  • Neo4j GraphGists - graphgists
  • Relationships are directional, can go both directions
  • CSV and JSON dumps to Neo4J
  • Offical support
  • JS, Java, Python, and .Net
  • Bolt Protocol which is faster than HTTP
  • Community Drivers
  • Go, Ruby, Rust
  • Java Stored Procedures
  • Custom Jar Files
  • APOC library
    • Page Rank, Between This Centrality Clustering
  • You can query other databases from Neo4J using Java
  • Queries that select every node in the graph do not work well on Neo4J
  • Use Spark or GraphX to do these types of queries, they work with Java Stored Procedures
  • Find shortest path algorithms
  • Community.conferences.graphconnect

Neo4J in 10 minutes Video on Youtube

Training Series - Intro to Neo4j - YouTube

Importing JSON Data from a REST API into Neo4j - Developer Guides