DZone
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
Refcards Trend Reports Events Over 2 million developers have joined DZone. Join Today! Thanks for visiting DZone today,
Edit Profile Manage Email Subscriptions Moderation Admin Console How to Post to DZone Article Submission Guidelines
View Profile
Sign Out
Refcards
Trend Reports
Events
Zones
Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Partner Zones AWS Cloud
by AWS Developer Relations
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Partner Zones
AWS Cloud
by AWS Developer Relations
The Latest "Software Integration: The Intersection of APIs, Microservices, and Cloud-Based Systems" Trend Report
Get the report
  1. DZone
  2. Data Engineering
  3. Databases
  4. Get Introduced to Graph Databases with a Webinar from Neo4j

Get Introduced to Graph Databases with a Webinar from Neo4j

Eric Genesky user avatar by
Eric Genesky
·
Feb. 14, 12 · Interview
Like (0)
Save
Tweet
Share
5.47K Views

Join the DZone community and get the full member experience.

Join For Free

The content of this article was written by Allison Sparrow at the Neo4j Blog.

Hey everyone,

Another awesome turnout at our Intro to Graph Databases webinar last week. We had loads of questions throughout the session, and we thank all of you for attending and participating!


Here are the questions captured in the Q&A section. If you don't see your question here, please be sure to join our Neo4j User Group, where our community will be sure to help you out.

To model a graph database, do you start directly with nodes and do not provide an ER diagram first?

  • Graph modeling often begins with whiteboarding the data in your domain. Usually, what you draw is what you graph.

Can I have custom RelTypes ?

  • Absolutely. All relationship types are defined by the application, so you can create them as appropriate.

Is there a way to keep the graph in memory all the time (except using a ram-disk)?

  • While there is no memory-storage mode, it is possible to keep the entire graph in memory by configuring large enough caches, then reading the entire graph (and properties) into memory.

Is it possible to versionize nodes and relationships in the graph?

  • Neo4j does not have native versioning, so you would have to model versioning of nodes using a linked list. Relationships could be versioned by using a unique Property to indicate the version.

Does Neo4j support XA transactions?

  • Yes, Neo4j is a proper XA transaction citizen.

How are nodes with defined relationships between them located? Do they have embedded pointers stored with the node that point to the address where the related nodes reside in the database? I'm thinking of the network model used by IDMS.

  • On disk, there are separate stores for nodes, relationships and properties. For details, consider reading posts from our own Chris Gioran's blog.

How can I return the node which is the last node of traversing (basically the leaf nodes) ?

  • With Cypher, you would bind to and return to the last node. For instance, in `start a=node(0) match (a)--(b)--(c) return c` the result would list all of the nodes 'c' that are at the end of a depth-2 traversal from 'a'.

Is subgraph isomorphism possible?

  • Subgraph matching is not directly supported, just path pattern-matching. So the match would have to be expressed as a path pattern.

What's the impact of node v. relationship? i.e. is a database more performant with a lot of nodes or relationships?

  • The database handles both nodes and relationships very well, though query performance generally favors following relationships over checking property constraints.

Aside from social networks, what other types of applications might a graph database like Neo4j be well suited for?

Graph databases are extremely useful when dealing with large amounts of complex and highly connected data. Social networks are one example, here are some others:
  • Collaboration programs
  • Configuration Management
  • Geo-Spatial applications
  • Impact Analysis
  • Master Data Management
  • Network Management
  • Product Line Management
  • Recommendation Engines

How does Neo4j handle nodes that have a lot of relationships (let's say one node connected to all other nodes)? Is there an index on all relationships a node has?

  • There is work ongoing now to address what we call "supernodes" with huge numbers (more than 100k) of relationships.

When will production level sharding (even with Eventual Consistency) will be available ?

  • Our most bearded developers are locked away working on this right now, though we can't promise a time-frame other than sometime this year.

I am used to thinking of a graph database as set of RDF triples. What are sort of differences between RDF triples and Neo4j data model if any?

  • With RDF, each property of an entity requires another triple. In a Property Graph, both the nodes and relationships of the graph can store properties, making it much more efficient.

Is there any known commercial product that uses Neo4j?

  • Absolutely! Be sure to check out our Customer Page for a highlighted list of Neo4j in production.

We have some great meetups and events coming up, and don't forget to sign up for our next webinar discussing Neo4j, taking place February 9th.

 -ayeseson

 


Source: http://blog.neo4j.org/2012/02/webinar-follow-up-intro-to-graph.html
Database Graph (Unix) Neo4j

Opinions expressed by DZone contributors are their own.

Popular on DZone

  • How Elasticsearch Works
  • Front-End Troubleshooting Using OpenTelemetry
  • Create Spider Chart With ReactJS
  • What To Know Before Implementing IIoT

Comments

Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • 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: