DZone
Database Zone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
  • Refcardz
  • Trend Reports
  • Webinars
  • Zones
  • |
    • Agile
    • AI
    • Big Data
    • Cloud
    • Database
    • DevOps
    • Integration
    • IoT
    • Java
    • Microservices
    • Open Source
    • Performance
    • Security
    • Web Dev
DZone > Database Zone > This Week in Neo4j: Building a Twitter Clone, Analyzing Malware, and Data Science

This Week in Neo4j: Building a Twitter Clone, Analyzing Malware, and Data Science

Neo4j is as versatile as ever. Let's see how people are putting it and the APOC library to use in the realms of static analysis, graph modeling, and even a Twitter clone.

Mark Needham user avatar by
Mark Needham
·
Apr. 11, 17 · Database Zone · News
Like (2)
Save
Tweet
3.47K Views

Join the DZone community and get the full member experience.

Join For Free

Welcome to this week in Neo4j, where we round up what’s been happening in the world of graph database in the last seven days.

This week we look at how to create a Twitter clone using Neo4j, the Neo4j data science stack, learning Chinese and much more!

Featured Neo4j Community Member: Tomaz Bratanic

This week’s featured Neo4j community member is Tomaz Bratanic

Explore everything that's happening in the Neo4j community for the week of 8 April 2017

Tomaz Bratanic – This week’s featured community member

Tomaz only recently came onto the Neo4j scene but has been quick to get going and blogs about Neo4j at an incredible rate.

Over the last few weeks these are some of Tomaz’s posts:

  • Neo4j APOC triggers and Web APIs
  • Neo4j Location Trees
  • Neo4j to Gephi
  • Cypher Location Queries

Tomaz also created the hospitals-neo4j project which brings together the above blog posts while analyzing a hospital dataset.

Tomaz has also created a Neo4j Browser guide which you can try out by executing the following command in the query window of your Neo4j Browser:

:play http://guides.neo4j.com/contrib/hospital.html


On behalf of the Neo4j community, thanks Tomaz! I’m looking forward to see what else you come up with for APOC Awareness month.

Building a Twitter Clone with Neo4j

Max De Marzi has written a new series of posts showing how to build a Twitter clone with Neo4j.

  • Part One in which Max explains his approach to Neo4j POCs and designs an initial graph data model.
  • Part Two in which Max shows how to build a Twitter-esque HTTP API and create/retrieve users.
  • Part Three in which Max adds functionality to follow other users and see who we’ve followed and who’s followed us.
  • Part Four in which Max adds functionality to add tags and edit posts (a feature Twitter doesn’t actually have!)

Automated Static Malware Analysis Using Neo4j

The MalwareGroup posted a really cool talk by Marion Marscalek and Raphael Vinot in which they show how to combine Neo4j and radare to analyse malware.


You can see all the code from their talk on GitHub.

The Neo4j Data Science Stack, Open Data, and PageRank with APOC

There were lots of blog articles this week in the Neo4j community!

  • Brock Tibert created a Docker image containing his favorite data science tools – Jupyter, RStudio Server, and Neo4j – and showed how to deploy it on Digital Ocean.
  • Mike Morley and Dave Bennet presented real-world graph data modeling at the Calgary Neo4j meetup a few weeks ago and shared the code from their talk on GitHub. They combined data from the Alberta Energy Regulator and Edmonton Open Data Portal, loaded it all into Neo4j, before analyzing the combined dataset with Cypher.
  • InterMine – the open source data warehouse built specifically for the integration and analysis of complex biological data from the Micklem Lab at the University of Cambridge – shared slides detailing their experiences using Neo4j.
  • Ken Flerlage has been having fun playing around with the movie database to explore the six degrees of Kevin Bacon.
  • Robin Bramley wrote up his talk from last week’s London meetup where he showed how to explore the UK road safety dataset using Neo4j.
  • Jens Nerche continued analyzing code bases with jQAssistant and this week shows how to find unwanted dependencies between Java packages.
  • Tom Porter walks through the FOREACH hack for creating conditional statements with Cypher
  • Adam Cowley released the latest part of his WordPress Recommendations series where he looks at how to use PageRank with APOC Procedures.

On GitHub: Chinese Language Exploration, PHP OGM, d3.js

Learning Chinese with Neo4j

Modeling the Chinese language in Neo4j

On my GitHub travels, I came across the following projects which are worth a look:

  • Diego Rodrigues created chinese_exp where he shows how to use data to explore and learn the Chinese language. Fernando Izquierdo also presented on the same topic at the London meetup a couple of months ago.
  • Marco Falcier has been building on top of Christophe Willemsen's Laravel Neo4j PHP OGM example project.
  • Christophe himself created neo4j-ogm-symfony-security, where he creates a quick PoC showing how to use a custom UserProvider backed by a Neo4j graph database.
  • Bogdans Afonins created two example projects for Spring Data Neo4j 4.2. A simple retail example in the SpringMVC-Neo4j-App and a social network one in spring-data-neo4j-4.2.0-example.
  • Dino Fancellu created neo4j-d3v4, a proof of concept project that gets data via the JavaScript driver and feeds it into a d3.js v4 force simulation.

From the Neo4j Knowledge Base

The Neo4j Knowledge Base is a collection of Frequently Asked Questions maintained by Neo4j’s Customer Success team.

If you’re doing some hands-on work with Neo4j, at some stage you’ll want to port the users/roles and constraints/indexes from your staging environment to production.

The following articles describe queries that will automatically generate Cypher statements to do this and save you having to rebuild them from scratch.

  • Using Cypher to generate Cypher statements to recreate indexes and constraints
  • Using Cypher to generate Cypher statements to recreate Users and Roles

Next Week

So what’s happening next week in the world of graphs?

  • On Thursday, April 13, 2017, Michael Hunger and I are going to run APOC Office Hours as part of April APOC Awareness month. If you have any APOC questions and/or are taking part in the competition, come along and ask us anything.

That’s all for this week! Enjoy it!

Neo4j Data science twitter Clone (Java method) Malware

Published at DZone with permission of Mark Needham, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

Popular on DZone

  • The Importance of Semantics for Data Lakehouses
  • How to Solve Context Propagation Challenges in Distributed Tracing
  • 9 Strategies to Improve Your Software Development Process
  • Model Quantization for Edge AI

Comments

Database Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • MVB Program
  • Become a Contributor
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 600 Park Offices Drive
  • Suite 300
  • Durham, NC 27709
  • support@dzone.com
  • +1 (919) 678-0300

Let's be friends:

DZone.com is powered by 

AnswerHub logo