Skip to content

Instantly share code, notes, and snippets.

View maxdemarzi's full-sized avatar
🏠
Working from home

Max De Marzi maxdemarzi

🏠
Working from home
View GitHub Profile
@maxdemarzi
maxdemarzi / exercise-1.query.cypher
Last active February 14, 2021 18:46
Modeling Cypher Exercise 1 and 2
MATCH (company)<-[:WORKS_FOR]-(me:Person{username:'ian'})-[:HAS_SKILL]->(skill),
(company)<-[:WORKS_FOR]-(colleague)-[r:HAS_SKILL]->(skill)
WHERE r.level > 1
RETURN colleague.username AS username,
count(skill) AS score,
collect(skill.name) AS skills
ORDER BY score DESC
package com.maxdemarzi.models;
import humanize.Humanize;
import lombok.Data;
import org.jooby.Upload;
import java.time.ZonedDateTime;
import java.time.format.DateTimeFormatter;
import java.util.Date;
@maxdemarzi
maxdemarzi / data.cypher
Created March 22, 2018 12:43
Find meeting times
CREATE (person1:Person {name: "Max"})
CREATE (person2:Person {name: "Alex"})
CREATE (person3:Person {name: "Andrew"})
CREATE (floor1:Floor {name: "Floor 1"})
CREATE (floor2:Floor {name: "Floor 2"})
CREATE (person1)-[:SITS_IN]->(floor1)
CREATE (person2)-[:SITS_IN]->(floor1)
CREATE (person3)-[:SITS_IN]->(floor2)
CREATE (room1:Room {name:"Room 1"})
CREATE (room2:Room {name:"Room 2"})
@maxdemarzi
maxdemarzi / bom.cypher
Last active March 9, 2021 16:21
Bill of Materials sample data
CREATE (f1:Family {id:'f1'})
CREATE (f2:Family {id:'f2'})
CREATE (f3:Family {id:'f3'})
CREATE (a1:Asset {id:'a1'})
CREATE (a2:Asset {id:'a2'})
CREATE (a3:Asset {id:'a3'})
CREATE (a4:Asset {id:'a4'})
CREATE (a5:Asset {id:'a5'})
CREATE (a6:Asset {id:'a6'})
CREATE (a7:Asset {id:'a7'})
@maxdemarzi
maxdemarzi / ImportSwapnilRunnable.java
Created November 8, 2017 15:18
Importer for Swapnil
package com.maxdemarzi.imports;
import com.github.benmanes.caffeine.cache.Caffeine;
import com.github.benmanes.caffeine.cache.LoadingCache;
import com.maxdemarzi.schema.Labels;
import com.maxdemarzi.schema.RelationshipTypes;
import org.apache.commons.csv.CSVFormat;
import org.apache.commons.csv.CSVRecord;
import org.neo4j.graphdb.*;

CALL com.maxdemarzi.similarity(0.90, 100)

@maxdemarzi
maxdemarzi / App.java
Created April 9, 2017 14:26
Jooby Rocker hot reload fails
// Setup Template Engine
use(new Rockerby());
RockerRuntime.getInstance().setReloading(true);
@maxdemarzi
maxdemarzi / manifest.yml
Created May 19, 2016 16:45
Neo4j on Cloud Foundry
---
name: neo4j-deployment
director_uuid: 93c01d2d-a2a5-49d8-8d02-389fd223a9cf
releases:
- {name: neo4j, version: 2.3.3}
networks:
- name: my-network
type: vip
compilation:
workers: 1
@maxdemarzi
maxdemarzi / bolt2.groovy
Created February 16, 2016 04:18
test run bolt via grooby
@Grab("org.neo4j.driver:neo4j-java-driver:1.0-SNAPSHOT")
import org.neo4j.driver.v1.*
Driver driver = GraphDatabase.driver( "bolt://localhost" );
Session session = driver.session();
//Result rs = session.run("cypher runtime=compiled MATCH (n:Foo)-[r:NEXT]->(m) RETURN n.id AS n,m.id AS m");
ResultCursor rs = session.run(" MATCH (n) WHERE ID(n) = 0 RETURN id(n) AS n");
@maxdemarzi
maxdemarzi / __usage.adoc
Last active December 8, 2021 10:49 — forked from jexp/__numbers_31.txt
Concurrent Neo4j Performance Tests via HTTP + Cypher (usage: ./_run_ab.sh 4 10000 create_plain.json)

Usage

Use latest Neo4j for best results, e.g. 2.2.2 or 2.3.0-M02 (http://neo4j.com/download) On a machine with 12 cores use concurrency 24

Create 1 node, 1 rel, 1 property per request, 1M requests

Total: 1M nodes, rels, props