Skip to content

Commit 114b530

Browse files
committed
Revamp of the data modeling tools page with KB resources added to it
1 parent 6aa4290 commit 114b530

File tree

2 files changed

+79
-62
lines changed

2 files changed

+79
-62
lines changed
137 KB
Loading
Lines changed: 79 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -1,95 +1,112 @@
11
[[data-modeling-tools]]
22
= Data modeling tools
3-
:description: arrows.app, data importer, visualization tools, schema
3+
:description: See a list of tools that you can use when designing a data model.
4+
:page-role: labs-label
45

5-
To help you with designing a new graph database structure, the following tools were created:
6+
//Check Mark
7+
:check-mark: icon:check[]
68

7-
* link:https://neo4j.com/docs/data-importer/current/[Neo4j Data Importer^]
8-
* link:https://neo4j.com/labs/arrows/[Arrows.app^]
9+
//Cross Mark
10+
:cross-mark: icon:times[]
911

10-
If you have data stored in a flat file format, use *Neo4j Data Importer* -- no-code tool for importing flat file data (`.csv`, `.tsv`) into Neo4j databases.
11-
Data Importer is available on *AuraDB* instances as a part of Neo4j Workspace via the `Import` tab:
12+
Neo4j offers a range of no-code tools to get you started with data modeling.
13+
Find here the available options.
1214

13-
image::workspace_import_tab.png[]
15+
== Neo4j Data Importer
1416

15-
*Arrows.app* is ideal for making a sketch of a graph, therefore if your aim is to design a domain model that your data will follow, go to the link:https://arrows.app/#/googledrive/ids=1osmv0pzcbyF8TEtvOEAMeXpONCWPn-e_[Arrows.app page].
17+
image::data-importer-1.png[600,600,role="popup-link"]
1618

17-
== Projects overview
19+
Besides being a tool for xref:data-import/index.adoc[data importing], you can use Neo4j Data Importer to sketch out a graph model and map your input data to its structure and properties.
20+
You can access it:
1821

19-
[[data-importer]]
20-
=== Neo4j Data Importer
22+
* Via the *Import* tab in link:https://neo4j.com/product/auradb/?ref=docs-nav-get-started[Neo4j Aura].
23+
* As a standalone version link:https://data-importer.neo4j.io/[with secure connection only] or link:https://data-importer.graphapp.io/[with both secure and insecure connections].
2124

22-
If you are new to Neo4j or completely new to graph, it could be hard to know where to start when it comes to loading data.
25+
For more information, refer to the link:{docs-home}/data-importer/current/modeling[Neo4j Data Importer -> Data modeling].
2326

24-
Neo4j has many data import options:
27+
== Arrows.app
2528

26-
* `LOAD CSV` Cypher command for online import
29+
image::northwind-graph-model.png[600,600,role="popup-link"]
2730

28-
* APOC procedures for other formats
31+
link:https://arrows.app[Arrows.app] is a no-code visualization platform which allows whiteboarding ideas into a graph model.
32+
It is ideal for making a sketch of a graph, especially if you want to design a domain model for your data.
2933

30-
* `neo4j-admin database import` command to load a full database
34+
With this platform, you can:
3135

32-
These tools are capable, but you have to spend some time on learning them that can get in the way when you are just starting out.
36+
* Draft your own whiteboard from scratch or import data from JSON files and plain text.
37+
* Create, modify, and delete nodes and relationships with their labels and properties without writing any code.
38+
* Export the visualization model as Cypher statements, so you can load the same data model into a Neo4j database.
3339

34-
To address this need, *Neo4j Data Importer* was created, a small but capable no-code user-friendly interface for loading flat file data into Neo4j databases.
40+
[role=label--labs]
41+
== Cypher Workbench
3542

36-
image::data-importer-1.png[role="middle"]
43+
image::cypher-workbench.png[600,600,role="popup-link"]
3744

38-
Today Neo4j Data Importer provides:
45+
link:https://help.neo4j.solutions/neo4j-solutions/cypher-workbench/[Cypher Workbench] is a cloud-based tool that assists Neo4j developers in creating and maintaining solutions built on top of Neo4j.
46+
It combines no-code visual solutions as the ones available in link:https://arrows.app[Arrows.app] while also offering importing options similar to link:{docs-home}/data-importer[Neo4j Data Importer].
3947

40-
* Support for flat-file inputs (`.csv`, `.tsv`) in the region of 1 million total rows equivalent (no upper limit is enforced, but larger loads take longer and rely on a reliable network connection to your database).
48+
With this platform, you can:
4149

42-
* The ability to sketch out a graph model and map your input data to its structure and properties.
50+
* Create a data model from scratch or import data from from JSON files.
51+
* Reverse-engineer data models from existing Neo4j databases.
52+
* Use Cypher statements to augment the current data model, including node labels, relationship types, and properties.
53+
* Validate your model (naming conventions, constraints, data, common mistakes, etc).
54+
* Use a business scenarios tool for capturing questions and scenarios of use cases.
55+
* Import scenarios from Excel, Google Sheets, or plain text.
4356

44-
* Loads into any Neo4j database which are reachable from your machine.
57+
To install it:
4558

59+
* Check out the code from the link:https://github.com/neo4j-labs/cypher-workbench[GitHub Repository].
60+
* Ensure that you have Node.js on your machine.
61+
* Follow the instructions in the Cypher Workbench project README or refer to the link:https://help.neo4j.solutions/neo4j-solutions/cypher-workbench/[documentation].
4662

47-
Data is only kept in your web browser; the tool does not use a server side component.
63+
== Other tools
4864

49-
[IMPORTANT]
50-
====
51-
Neo4j Data Importer is currently available on Neo4j AuraDB instances.
52-
====
65+
Here is a list of other non-Neo4j tools that can be used for data modeling:
5366

54-
[[arrows-app]]
55-
=== Arrows.app
67+
* link:https://mermaid.live/[Mermaid]: general data modeling tool (not specifically for graph databases), based on Markdown.
68+
Ideal for documenting modeling strategies.
69+
* link:https://plantuml.com/[PlantUML]: application for creating diagrams from plain text.
70+
Works better with version control rather than first model design.
71+
* link:https://hackolade.com/[Hackolade]: a tool to design, document, and communicate data models and schemas.
72+
Built to support data modeling of Neo4j node labels and relationship types.
5673

57-
*Arrows.app* is a web-based tool from link:https://neo4j.com/labs/[Neo4j Labs] for drawing graphs.
74+
== Tools comparison
5875

59-
While designing a graph data model, you may need to visualize different versions.
60-
Remember, there is no right or wrong way to structure your data for a graph database!
61-
Your domain model depends on your business needs and aims to solve your specific problems.
62-
Its flexibility allows you to refactor data model to improve performance and maximize capabilities of your graph database.
76+
[options=header,cols="^.^2,^.^,^.^2,^.^2"]
77+
|===
78+
| Tool
79+
| Free
80+
| Import
81+
| Export
6382

64-
image::northwind-graph-model.png[role=middle]
83+
| Data Importer
84+
| {check-mark}
85+
| .csv, .tsv
86+
| -
6587

66-
Graphs are easy and intuitive to sketch on a whiteboard (we say whiteboard-friendly), and Arrows.app tries to be just as easy and intuitive as using a whiteboard.
67-
You are able to create a visual layout of the organization's data entities, relationships, and properties.
68-
Graph data model stays exactly as it was drawn on the whiteboard/Arrows.app canvas.
88+
| Arrows
89+
| {check-mark}
90+
| JSON
91+
| Image, Cypher, JSON,URL, GraphQL
6992

70-
With the help of Arrows.app:
93+
| Cypher Workbench
94+
| {cross-mark}
95+
| Cypher Workbench JSON, Apoc.meta.schema, Arrows JSON
96+
| JSON
7197

72-
. You can create, modify, and delete essential parts of the Neo4j graph database: nodes and relationships with their labels and properties.
98+
| PlantUML
99+
| {check-mark}
100+
| PUML,JSON
101+
| PNG, SVG, LaTeX format and ASCII art diagrams
73102

74-
. You can convert your table into a graph by using Arrows.app import functions.
103+
| Mermaid
104+
| {cross-mark}
105+
| MarkDown
106+
| MarkDown
75107

76-
. You are able to export images from Arrows.app as Cypher statements and load data into Neo4j database.
77-
78-
Arrows.app features:
79-
80-
* quick intuitive drawing with a mouse
81-
82-
* fine-grained styling control: sizes, layouts, and colors
83-
84-
* several options for exporting images
85-
86-
* functionality for importing JSON files or tables
87-
88-
89-
[[data-modeling-tools-resources]]
90-
== Resources
91-
92-
* link:https://neo4j.com/developer-blog/week-17-discover-auradb-free-analysing-nft-trades/[Blog Post. Aura Series: Discover AuraDB Free and Learn More about New Data Importer^]
93-
* link:https://neo4j.com/developer-blog/neo4j-devtools-happy-new-year-new-data-importer-and-neo4j-browser-updates/[Blog Post. Neo4j DevTools’ Happy New Year: New Data Importer and Neo4j Browser Updates^]
94-
* link:https://neo4j.com/videos/8-drawing-and-creating-graphs-with-arrows-app/[Video. Drawing and Creating Graphs with Arrows.app^]
95-
* link:https://medium.com/neo4j/drawing-graphs-with-arrows-app-ee5735caa04d[Blog Post. Drawing graphs with Arrows.app^]
108+
| Hackolade
109+
| {cross-mark}
110+
| Hackolade JSON, YAML, DDL, XSD, Excel Template, Cloud Storage, Collibra Data Dictionary
111+
| Cypher, HTML
112+
|===

0 commit comments

Comments
 (0)