Skip to content
This repository has been archived by the owner on Aug 6, 2020. It is now read-only.

Commit

Permalink
Merge pull request #229 from neo4j-documentation/jmr-updates
Browse files Browse the repository at this point in the history
Updates and new page for database
  • Loading branch information
JMHReif authored Jun 22, 2020
2 parents d7993aa + fca2f08 commit 0591308
Show file tree
Hide file tree
Showing 17 changed files with 271 additions and 76 deletions.
5 changes: 3 additions & 2 deletions _templates/menu_partial.erb
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
<div class="panel-dev-nav">
<ul>
<li><a href="/developer/graph-platform/">Graph Platform Overview</a></li>
<li><a href="/developer/neo4j-database/">Neo4j Database</a></li>
<li><a href="/developer/neo4j-desktop/">Neo4j Desktop Intro</a></li>
<li><a href="/developer/neo4j-browser/">Neo4j Browser Intro</a></li>
<li><a href="/developer/neo4j-bloom/">Neo4j Bloom Intro</a></li>
Expand Down Expand Up @@ -191,10 +192,10 @@
<div class="panel-dev-nav">
<ul>
<li><a href="/developer/contribute/">Contributing Overview</a></li>
<li><a href="/developer/cla/">Contributor License Agreement</a></li>
<li><a href="/developer/contributing-code/">Code Contributions</a></li>
<li><a href="https://community.neo4j.com/" target="_blank">Help on Community Forums</a></li>
<li><a href="/speaker-program/" target="_blank">Speaker Program: Share your Story</a></li>
<li><a href="/developer/cla/">Contributor License Agreement</a></li>
<li><a href="/developer/contributing-code/">Code Contributions</a></li>
</ul>
</div>
</dl>
Expand Down
24 changes: 11 additions & 13 deletions aura-cloud-dbaas/aura-cloud-dbaas.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
:tags: aura, database-as-a-service, dbaas, graph-platform

[#neo4j-dbaas]
link:/aura[Neo4j Aura^] is a fully-managed cloud database developed by the same people that built Neo4j.
link:/aura/[Neo4j Aura^] is a fully-managed cloud database developed by the same people that built Neo4j.

This guides and tutorials below will help you get started:

Expand All @@ -24,21 +24,19 @@ Is it your first time using Neo4j Aura?
You've come to the right place!
The tutorial below will guide you through signing up, creating a database, and importing your data.

link:https://aura.support.neo4j.com/hc/en-us/articles/360037562253-Working-with-Neo4j-Aura[Get started with Neo4j Aura^, role="button feature-box_button"]
https://aura.support.neo4j.com/hc/en-us/articles/360037562253-Working-with-Neo4j-Aura[Get started with Neo4j Aura^, role="button feature-box_button"]

// * link:/developer/create-database[Create database]
// * link:/developer/change-password[Change password]
// link:/developer/create-database[Create database]
// link:/developer/change-password[Change password]

[#connecting-aura]
== Connect to your Aura database

These tutorials explain how to connect to your Aura database from other Neo4j tools.

* link:/developer/aura-connect-neo4j-desktop[Connect from Neo4j Desktop]
* link:/developer/aura-connect-cypher-shell[Connect from Cypher Shell]
* link:/developer/aura-connect-driver[Connect from your application]
link:/developer/aura-connect-neo4j-desktop/[Connect from Neo4j Desktop] +
link:/developer/aura-connect-cypher-shell/[Connect from Cypher Shell] +
link:/developer/aura-connect-driver/[Connect from your application]

[#importing-data]
== Importing data
Expand All @@ -47,7 +45,7 @@ Aura considers the protection of users' data to be of paramount importance.
There are therefore some constraints to keep in mind when using your favourite import tools to load data into an Aura database.
The guide below covers these in detail.

link:/developer/aura-data-import[Importing data into Neo4j Aura, role="button feature-box_button"]
link:/developer/aura-data-import/[Importing data into Neo4j Aura, role="button feature-box_button"]

// These tutorials show how to import data into an Aura database.

Expand All @@ -60,7 +58,7 @@ link:/developer/aura-data-import[Importing data into Neo4j Aura, role="button fe

These tutorials explain how to build full stack applications with Aura.

* link:/developer/aura-grandstack[Deploying a GRANDstack application]
link:/developer/aura-grandstack/[Deploying a GRANDstack application]

[#managing-aura]
== Manage your Aura database
Expand All @@ -69,11 +67,11 @@ You've created your Aura database, imported your data, and are now running your
Now you want to know what's happening inside the database.
The tutorial below explains the available options for monitoring your database.

link:/developer/aura-monitor[Monitor your database, role="button feature-box_button"]
link:/developer/aura-monitoring/[Monitor your database, role="button feature-box_button"]

[#dbaas-resources]
== Questions?
Additional guides and help are available on the link:https://aura.support.neo4j.com/hc/en-us[Aura support^] page.
Additional guides and help are available on the https://aura.support.neo4j.com/hc/en-us[Aura support^] page.

You can also ask questions and connect with other people launching Neo4j Aura at the
https://community.neo4j.com/c/neo4j-graph-platform/cloud[cloud topic on the Community Site^].
5 changes: 2 additions & 3 deletions contribute/contribute.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ Looking for a place to contribute to the Neo4j ecosystem?
This is a great place to start.
Here you will find guides from Neo4j’s community of contributors.


[#finding-help]
== Help Others in the Community

Expand Down Expand Up @@ -128,6 +127,6 @@ We are happy users of the following tools that we use daily to develop Neo4j.

Neo4j is supported by a rich ecosystem of libraries, tools, drivers and guides provided by partners, users and community contributors.
We want to give an overview about what is available and link to the original sources.
We try to focus on the freely available solutions here and provide links to commercial options were appropriate.
We try to focus on the freely available solutions here and provide links to commercial options where appropriate.

Read more about it in our link:../integration/ecosystem[Integrations section].
Read more about it in our link:/developer/ecosystem/[Integrations section].
55 changes: 54 additions & 1 deletion cypher/cypher.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -41,13 +41,16 @@ image::{img}cypher_learning.jpg[link="{img}cypher_learning.jpg",role="popup-link
[#cypher-intro]
== Intro to Cypher Syntax

The first guide will explain the basic concepts of Cypher query syntax, including how to create and query data.
The first two guides will explain the basic concepts of Cypher query syntax, including how to create and query data.
Cypher is based on ASCII art, so the syntax is easily understood and makes queries more self-explanatory.
It focuses on the clarity of expressing what to retrieve from a graph, not on how to retrieve it.

We will discuss the keywords for each CRUD operation and how to specify nodes, relationships, and properties in the query language.
Learning how to specify patterns and filter data results will allow you to traverse the graph or add and remove data.

link:/developer/cypher-basics-i/[Cypher Basics I] +
link:/developer/cypher-basics-ii/[Cypher Basics II]

[#cypher-filter]
== Filtering Query Results

Expand All @@ -60,6 +63,8 @@ Being able to trim out results that are unwanted and only retrieve certain data
In this guide, we will walk through many of the ways you can limit your query results to what you need and control how they are returned to output.
Much of the syntax and functionality for these clauses is similar to SQL and will probably be familiar to most developers with data querying experience.

link:/developer/filtering-query-results/[Filtering Cypher Query Results]

[#cypher-func-agg]
== Cypher Functions and Aggregations

Expand All @@ -69,13 +74,39 @@ Functionality such as counting results, grouping data by values, and finding min
Cypher also includes these functions to perform mathematical, aggregation, and other utility operations needed within queries.
This guide will show you what is possible within Cypher and show you how to structure the syntax.

link:/developer/aggregation-returns-functions/[Cypher Functions and Aggregations]

[#cypher-dates]
== Cypher Dates, Datetimes, & Durations

With the release of Neo4j 3.4, Cypher added support for native date types in the database.
Working with dates, datetimes, timezones, and durations is a necessary part of data and databases.

From converting certain values to dates, creating instants, or calculating durations, this guide will cover the basics in using Cypher for Neo4j native date types.

link:/developer/dates-datetimes-durations/[Cypher Dates]

[#cypher-subqueries]
== Subqueries in Cypher

Many query languages include the capability to run subqueries inside outer queries, and Cypher offers this, as well.
There are a couple of different approaches to syntax, depending on the type of subquery needed.

We can use existential subqueries to filter more complex scenarios like patterns and even entire nested queries for more accurate and focused results.
We can also use result-returning subqueries to sort and order filtered results.
While organizing filtered results was previously possible in Cypher, providing subquery support allows us to simplify the syntax and avoid using APOC procedures or additional Cypher clauses to pass and sort values along the way.

link:/developer/sub-queries/[Cypher Subqueries]

[#cypher-syntax-guide]
== Cypher Syntax Guide

Some syntax in Cypher requires a specific style or casing, while other Cypher syntax is not particular on styling.
In either case, we have compiled some of the recommended and required styling for writing Cypher queries.
This guide will walk through various components of typical syntax to help you write logical and readable Cypher queries.

link:/developer/cypher-style-guide/[Cypher Style Guide]

[#cypher-sql-dev]
== Cypher for a SQL Developer

Expand All @@ -87,6 +118,8 @@ SQL developers will see certain keywords and constructs that are the same or ver
This guide was written with SQL developers in mind to bridge the gap and bring existing knowledge across to learning Cypher.
Through examples of both languages, you will see the logic structures and syntax of each and how each was designed for their purpose.

link:/developer/guide-sql-to-cypher/[From SQL to Cypher]

////
== Optimizing Performance

Expand Down Expand Up @@ -116,7 +149,27 @@ This guide will show you how to create custom add-ons and how to compile them so
Before we get too carried away with creating all of our functionality custom, though, we will also talk about how certain libraries and functionality have already been developed to work seamlessly with Neo4j.
Learn where you can look to find out if code already exists for your capability or if you need to write your own custom functionality!
link:/developer/procedures-functions/[User-Defined Procedures and Functions] +
link:/developer/procedures-gallery/[Existing Procedure Libraries]
[#recommendation-engine]
== Tutorial: Build a Recommendation Engine
With Cypher structure and syntax learned so far, you can dive into building your own recommendation engine to use graph data and Cypher to recommend movies, colleagues, cuisines, and more.
This guide will walk through using queries and filtering that takes advantage of the relationships in a graph in order to lend insight into habits and hidden connections and provide valuable recommendations.
link:/developer/guide-build-a-recommendation-engine/[Tutorial: Build a Recommendation Engine]
////
== Cypher Examples
//include a guide on different examples or a tutorial?
////
[#cypher-resources]
== Cypher Resources
Find out where else you can learn Cypher or increase your depth of knowledge from experts and solutions.
There are a variety of training opportunities, blogs, videos, and more for taking the next steps in your Cypher (and Neo4j) journey!
link:/developer/cypher-resources/[Cypher Resources]
22 changes: 21 additions & 1 deletion data-import/data-import.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,9 @@ The `LOAD CSV` command in Cypher allows us to specify a filepath, headers or not

We will walk through the details of how to take any CSV file and import the data into Neo4j easily and quickly.

link:/developer/guide-import-csv/[Import CSV Files] +
link:/developer/desktop-csv-import/[Neo4j Desktop: Import CSV Files]

[#import-api]
== Importing API data

Expand All @@ -36,16 +39,33 @@ The `apoc.load.json` command allows us to specify a URL path and any necessary p

This guide shows us how to retrieve data from a JSON-based REST API and import it into Neo4j.

link:/developer/guide-import-json-rest-api/[Importing API Data]

[#import-relational-graph]
== Import: RDBMS to Graph

Many existing systems store data in relational or tabular types of formats.
Knowing how to translate and migrate this data into graph data for analyzing the relationships can seem complex.

There are a variety of tools for migrating data from relational formats into graphs.
In this guide, we want to discuss all of the options and why you can or should choose some over others for your use case.

link:/developer/relational-to-graph-import/[Importing Relational Data to a Graph]

[#import-northwind]
== Importing Example Data - Northwind
== Tutorial: Importing Data - Northwind

This guide will use a common relational data set (Northwind) and walk us through how to transform and import data from a relational database to Neo4j graph database.

You will learn what steps are needed to retrieve the data from the relational data store and import the same data as a graph in Neo4j, as well as how to take the relational data model and convert it to graph in the process.

link:/developer/guide-importing-data-and-etl/[Tutorial: Import Northwind Data]

[#import-examples]
== Example Data Sets

We want to provide some of our favorite data sets for you to practice your skills and learn more about importing and querying data in Neo4j!
This guide shows a variety of open-source data sets that you can access and easily import.
Happy learning!

link:/developer/example-data/[Example Data Sets]
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
= Import: RDBMS to Graph
:slug: relational-to-graph-import
:level: Beginner
:toc:
:toc-placement!:
:toc-title: Overview
:toclevels: 2
:section: Data Import
:section-link: data-import
:section-level: 1
Expand Down
8 changes: 5 additions & 3 deletions graph-apps/graph-apps.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,12 @@ This guide explains what a Graph Application is for Neo4j.

.Prerequisites
[abstract]
It helps if you have read the section on link:/developer/get-started/graph-database/[graph databases], as well as have downloaded and are familiar with link:/developer/neo4j-desktop/[Neo4j Desktop].
It helps if you have read the section on link:/developer/graph-database/[graph databases], as well as have downloaded and are familiar with link:/developer/neo4j-desktop/[Neo4j Desktop].

[#what-are-graphapps]
== What are Graph Apps?

A Graph app is a Single Page Application (SPA) built with HTML and JavaScript which interact with Neo4j databases through https://neo4j.com/desktop/[Neo4j Desktop^].
A Graph app is a Single Page Application (SPA) built with HTML and JavaScript which interact with Neo4j databases through link:/desktop/[Neo4j Desktop^].
They can be developed by anyone - community members, partners, enterprises, and more - and are a convenient way of trying out ideas or building useful tools with Neo4j databases.
A developer could take an existing SPA and package it into a graph app or start from scratch with a new idea.

Expand All @@ -35,9 +35,11 @@ From visualization tools to database/query monitoring, there is a graph app for
[#build-graphapp]
== How Can I Build my own Graph App?

We have a guide to step through the process of link:/developer/graph-app-development/[building your own graph app], so you can provide your own unique tool on top of Neo4j.
We have a guide to step through the process of building your own graph app, so you can provide your own unique tool on top of Neo4j.
We cannot wait to see what you build!

link:/developer/graph-app-development/[Build a Graph Application]

[#graphapp-community]
== Graph App Topic on Neo4j Community

Expand Down
10 changes: 8 additions & 2 deletions graph-platform/graph-platform.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ We continue to improve the different perspectives from which to view data, as we

Detailed information and walkthroughs are covered in more detail in subsequent pages of this section, but if you have any questions or issues, don't hesitate to reach out through the https://community.neo4j.com[Neo4j Online Community^]!

* Neo4j Graph Database - our core graph database that is built to store and retrieve connected data. There are link:/licensing/[two editions^] - a Community Edition and an Enterprise Edition. Everything in our platform interacts with data stored in the database.
* link:/developer/neo4j-database/[Neo4j Graph Database] - our core graph database that is built to store and retrieve connected data. There are link:/licensing/[two editions^] - a Community Edition and an Enterprise Edition. Everything in our platform interacts with data stored in the database.
* link:/developer/neo4j-desktop/[Neo4j Desktop] - application to manage local instances of Neo4j. Free download includes Neo4j Enterprise Edition license.
* link:/developer/neo4j-browser/[Neo4j Browser] - online browser interface to query and view the data in the database. Basic visualization capabilities using Cypher query language.
* link:/developer/neo4j-bloom/[Neo4j Bloom^] - visualization tool for business users that does not require any code or programming skills to view and analyze data. link:/docs/bloom-user-guide/current/[Documentation^] is also available in our docs section.
Expand All @@ -40,4 +40,10 @@ Neo4j also has a variety of extension libraries and developer tools that can be
Some of these projects have been adopted by our link:/labs/[Neo4j Labs^] team to help developers integrate with other innovative tools and libraries.

Tutorials and other specific information for some of these is included in this section.
Other non-Neo4j Labs extensions will be covered in the link:/developer/integration/[Extensions & Integrations] section of these guides.
Other non-Neo4j Labs extensions will be covered in the link:/developer/integration/[Extensions & Integrations] section of these guides.

Neo4j Labs integrations:

link:/developer/neo4j-apoc/[APOC] - the standard utility library of procedures and functions for Neo4j. +
link:/developer/graphql/[GraphQL and GRANDstack] - integrate with other popular data technologies or full-stack solutions. +
link:/developer/neo4j-etl/[ETL Tool] - migrate data from a relational database to Neo4j using an application and simple user interface.
Loading

0 comments on commit 0591308

Please sign in to comment.