-
Notifications
You must be signed in to change notification settings - Fork 495
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[lYfZxdRz] Migrate procedures and functions docs from Core to Cypher 25
- Loading branch information
Showing
16 changed files
with
730 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
74 changes: 74 additions & 0 deletions
74
docs/asciidoc/modules/ROOT/pages/overview/apoc.export/apoc.export.arrow.all.adoc
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,74 @@ | ||
:page-role: procedure | ||
:table-caption!: | ||
= apoc.export.arrow.all | ||
|
||
[NOTE] | ||
==== | ||
This procedure is not considered safe to run from multiple threads. | ||
It is therefore not supported by the parallel runtime (introduced in Neo4j 5.13). | ||
For more information, see the link:{neo4j-docs-base-uri}/cypher-manual/{page-version}/planning-and-tuning/runtimes/concepts#runtimes-parallel-runtime[Cypher Manual -> Parallel runtime]. | ||
==== | ||
|
||
.Details | ||
|=== | ||
| *Syntax* 3+| `apoc.export.arrow.all(file [, config ]) :: (file, source, format, nodes, relationships, properties, time, rows, batchSize, batches, done, data)` | ||
| *Description* 3+| Exports the full database as an arrow file. | ||
.3+| *Input arguments* | *Name* | *Type* | *Description* | ||
| `file` | `STRING` | The name of the file to export the data to. | ||
| `config` | `MAP` | `{ batchSize = 2000 :: INTEGER }`. The default is: `{}`. | ||
.13+| *Return arguments* | *Name* | *Type* | *Description* | ||
| `file` | `STRING` | The name of the file to which the data was exported. | ||
| `source` | `STRING` | A summary of the exported data. | ||
| `format` | `STRING` | The format the file is exported in. | ||
| `nodes` | `INTEGER` | The number of exported nodes. | ||
| `relationships` | `INTEGER` | The number of exported relationships. | ||
| `properties` | `INTEGER` | The number of exported properties. | ||
| `time` | `INTEGER` | The duration of the export. | ||
| `rows` | `INTEGER` | The number of rows returned. | ||
| `batchSize` | `INTEGER` | The size of the batches the export was run in. | ||
| `batches` | `INTEGER` | The number of batches the export was run in. | ||
| `done` | `BOOLEAN` | Whether the export ran successfully. | ||
| `data` | `ANY` | The data returned by the export. | ||
|=== | ||
|
||
== Usage Examples | ||
The procedure expose an Arrow file with the following structure | ||
- `<id>`: for node id | ||
- `<labels>`: list of labels | ||
- `<source.id>`: source node id (in case of relationship) | ||
- `<target.id>`: target node id (in case of relationship) | ||
- `<type>`: for relationship type | ||
- the list of properties of nodes and relationships flattened as table | ||
|
||
So for the following query: | ||
|
||
[source,cypher] | ||
---- | ||
CREATE (f:User {name:'Adam',age:42,male:true,kids:['Sam','Anna','Grace'], born:localdatetime('2015185T19:32:24'), place:point({latitude: 13.1, longitude: 33.46789})})-[:KNOWS {since: 1993, bffSince: duration('P5M1.5D')}]->(b:User {name:'Jim',age:42}),(c:User {age:12}),(d:Another {foo: 'bar'}) | ||
---- | ||
|
||
With this query: | ||
|
||
[source,cypher] | ||
---- | ||
CALL apoc.export.arrow.all('my_file.arrow') YIELD file, source, format, | ||
nodes, relationships, properties, | ||
time, rows, batchSize, | ||
batches, done, data | ||
---- | ||
|
||
We'll have an arrow file with the following columns: | ||
|
||
- `<id>` | ||
- `<labels>` | ||
- `<source.id>` | ||
- `<target.id>` | ||
- `<type>` | ||
- `name` | ||
- `age` | ||
- `male` | ||
- `kids` | ||
- `born` | ||
- `place` | ||
- `since` | ||
- `bffSince` |
76 changes: 76 additions & 0 deletions
76
docs/asciidoc/modules/ROOT/pages/overview/apoc.export/apoc.export.arrow.graph.adoc
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,76 @@ | ||
:page-role: procedure | ||
:table-caption!: | ||
= apoc.export.arrow.graph | ||
|
||
[NOTE] | ||
==== | ||
This procedure is not considered safe to run from multiple threads. | ||
It is therefore not supported by the parallel runtime (introduced in Neo4j 5.13). | ||
For more information, see the link:{neo4j-docs-base-uri}/cypher-manual/{page-version}/planning-and-tuning/runtimes/concepts#runtimes-parallel-runtime[Cypher Manual -> Parallel runtime]. | ||
==== | ||
|
||
.Details | ||
|=== | ||
| *Syntax* 3+| `apoc.export.arrow.graph(file, graph [, config ]) :: (file, source, format, nodes, relationships, properties, time, rows, batchSize, batches, done, data)` | ||
| *Description* 3+| Exports the given graph as an arrow file. | ||
.4+| *Input arguments* | *Name* | *Type* | *Description* | ||
| `file` | `STRING` | The name of the file to export the data to. | ||
| `graph` | `ANY` | The graph to export. | ||
| `config` | `MAP` | `{ batchSize = 2000 :: INTEGER }`. The default is: `{}`. | ||
.13+| *Return arguments* | *Name* | *Type* | *Description* | ||
| `file` | `STRING` | The name of the file to which the data was exported. | ||
| `source` | `STRING` | A summary of the exported data. | ||
| `format` | `STRING` | The format the file is exported in. | ||
| `nodes` | `INTEGER` | The number of exported nodes. | ||
| `relationships` | `INTEGER` | The number of exported relationships. | ||
| `properties` | `INTEGER` | The number of exported properties. | ||
| `time` | `INTEGER` | The duration of the export. | ||
| `rows` | `INTEGER` | The number of rows returned. | ||
| `batchSize` | `INTEGER` | The size of the batches the export was run in. | ||
| `batches` | `INTEGER` | The number of batches the export was run in. | ||
| `done` | `BOOLEAN` | Whether the export ran successfully. | ||
| `data` | `ANY` | The data returned by the export. | ||
|=== | ||
|
||
== Usage Examples | ||
The procedure expose an Arrow file of rows with the following structure | ||
- `<id>`: for node id | ||
- `<labels>`: list of labels | ||
- `<source.id>`: source node id (in case of relationship) | ||
- `<target.id>`: target node id (in case of relationship) | ||
- `<type>`: for relationship type | ||
- the list of properties of nodes and relationships flattened as table | ||
|
||
So for the following query: | ||
|
||
[source,cypher] | ||
---- | ||
CREATE (f:User {name:'Adam',age:42,male:true,kids:['Sam','Anna','Grace'], born:localdatetime('2015185T19:32:24'), place:point({latitude: 13.1, longitude: 33.46789})})-[:KNOWS {since: 1993, bffSince: duration('P5M1.5D')}]->(b:User {name:'Jim',age:42}),(c:User {age:12}),(d:Another {foo: 'bar'}) | ||
---- | ||
|
||
With this query: | ||
|
||
[source,cypher] | ||
---- | ||
CALL apoc.graph.fromDB('neo4j',{}) yield graph | ||
CALL apoc.export.arrow.graph('my_file.arrow', graph) YIELD file, source, format, | ||
nodes, relationships, properties, | ||
time, rows, batchSize, | ||
batches, done, data | ||
---- | ||
|
||
We'll have an arrow file with the following columns: | ||
|
||
- `<id>` | ||
- `<labels>` | ||
- `<source.id>` | ||
- `<target.id>` | ||
- `<type>` | ||
- `name` | ||
- `age` | ||
- `male` | ||
- `kids` | ||
- `born` | ||
- `place` | ||
- `since` | ||
- `bffSince` |
56 changes: 56 additions & 0 deletions
56
docs/asciidoc/modules/ROOT/pages/overview/apoc.export/apoc.export.arrow.query.adoc
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
:page-role: procedure | ||
:table-caption!: | ||
= apoc.export.arrow.query | ||
|
||
[NOTE] | ||
==== | ||
This procedure is not considered safe to run from multiple threads. | ||
It is therefore not supported by the parallel runtime (introduced in Neo4j 5.13). | ||
For more information, see the link:{neo4j-docs-base-uri}/cypher-manual/{page-version}/planning-and-tuning/runtimes/concepts#runtimes-parallel-runtime[Cypher Manual -> Parallel runtime]. | ||
==== | ||
|
||
.Details | ||
|=== | ||
| *Syntax* 3+| `apoc.export.arrow.query(file, query [, config ]) :: (file, source, format, nodes, relationships, properties, time, rows, batchSize, batches, done, data)` | ||
| *Description* 3+| Exports the results from the given Cypher query as an arrow file. | ||
.4+| *Input arguments* | *Name* | *Type* | *Description* | ||
| `file` | `STRING` | The name of the file to which the data will be exported. | ||
| `query` | `STRING` | The query to use to collect the data for export. | ||
| `config` | `MAP` | `{ batchSize = 2000 :: INTEGER }`. The default is: `{}`. | ||
.13+| *Return arguments* | *Name* | *Type* | *Description* | ||
| `file` | `STRING` | The name of the file to which the data was exported. | ||
| `source` | `STRING` | A summary of the exported data. | ||
| `format` | `STRING` | The format the file is exported in. | ||
| `nodes` | `INTEGER` | The number of exported nodes. | ||
| `relationships` | `INTEGER` | The number of exported relationships. | ||
| `properties` | `INTEGER` | The number of exported properties. | ||
| `time` | `INTEGER` | The duration of the export. | ||
| `rows` | `INTEGER` | The number of rows returned. | ||
| `batchSize` | `INTEGER` | The size of the batches the export was run in. | ||
| `batches` | `INTEGER` | The number of batches the export was run in. | ||
| `done` | `BOOLEAN` | Whether the export ran successfully. | ||
| `data` | `ANY` | The data returned by the export. | ||
|=== | ||
|
||
== Usage Examples | ||
Let's suppose we have this data set: | ||
|
||
[source,cypher] | ||
---- | ||
CREATE (f:User {name:'Adam',age:42,male:true,kids:['Sam','Anna','Grace'], born:localdatetime('2015185T19:32:24'), place:point({latitude: 13.1, longitude: 33.46789})})-[:KNOWS {since: 1993, bffSince: duration('P5M1.5D')}]->(b:User {name:'Jim',age:42}),(c:User {name: 'John', age:12}),(d:Another {foo: 'bar'}) | ||
---- | ||
|
||
With this query: | ||
|
||
[source,cypher] | ||
---- | ||
CALL apoc.export.arrow.query('my_file.arrow', 'MATCH (n:User) RETURN count(n) as count, n.name as name') YIELD file, source, format, | ||
nodes, relationships, properties, | ||
time, rows, batchSize, | ||
batches, done, data | ||
---- | ||
|
||
We'll have an arrow file with the following columns: | ||
|
||
- `count` | ||
- `name` |
59 changes: 59 additions & 0 deletions
59
...iidoc/modules/ROOT/pages/overview/apoc.export/apoc.export.arrow.stream.all.adoc
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,59 @@ | ||
:page-role: procedure | ||
:table-caption!: | ||
= apoc.export.arrow.stream.all | ||
|
||
[NOTE] | ||
==== | ||
This procedure is not considered safe to run from multiple threads. | ||
It is therefore not supported by the parallel runtime (introduced in Neo4j 5.13). | ||
For more information, see the link:{neo4j-docs-base-uri}/cypher-manual/{page-version}/planning-and-tuning/runtimes/concepts#runtimes-parallel-runtime[Cypher Manual -> Parallel runtime]. | ||
==== | ||
|
||
.Details | ||
|=== | ||
| *Syntax* 3+| `apoc.export.arrow.stream.all([ config ]) :: (value)` | ||
| *Description* 3+| Exports the full database as an arrow byte array. | ||
.2+| *Input arguments* | *Name* | *Type* | *Description* | ||
| `config` | `MAP` | `{ batchSize = 2000 :: INTEGER }`. The default is: `{}`. | ||
.2+| *Return arguments* | *Name* | *Type* | *Description* | ||
| `value` | `BYTEARRAY` | The data as a bytearray. | ||
|=== | ||
|
||
== Usage Examples | ||
The procedure expose an Arrow byte[] for each batch of rows with the following structure | ||
- `<id>`: for node id | ||
- `<labels>`: list of labels | ||
- `<source.id>`: source node id (in case of relationship) | ||
- `<target.id>`: target node id (in case of relationship) | ||
- `<type>`: for relationship type | ||
- the list of properties of nodes and relationships flattened as table | ||
|
||
So for the following query: | ||
|
||
[source,cypher] | ||
---- | ||
CREATE (f:User {name:'Adam',age:42,male:true,kids:['Sam','Anna','Grace'], born:localdatetime('2015185T19:32:24'), place:point({latitude: 13.1, longitude: 33.46789})})-[:KNOWS {since: 1993, bffSince: duration('P5M1.5D')}]->(b:User {name:'Jim',age:42}),(c:User {age:12}),(d:Another {foo: 'bar'}) | ||
---- | ||
|
||
With this query: | ||
|
||
[source,cypher] | ||
---- | ||
CALL apoc.export.arrow.stream.all() | ||
---- | ||
|
||
We'll have a table with the following columns: | ||
|
||
- `<id>` | ||
- `<labels>` | ||
- `<source.id>` | ||
- `<target.id>` | ||
- `<type>` | ||
- `name` | ||
- `age` | ||
- `male` | ||
- `kids` | ||
- `born` | ||
- `place` | ||
- `since` | ||
- `bffSince` |
62 changes: 62 additions & 0 deletions
62
...doc/modules/ROOT/pages/overview/apoc.export/apoc.export.arrow.stream.graph.adoc
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,62 @@ | ||
:page-role: procedure | ||
:table-caption!: | ||
= apoc.export.arrow.stream.graph | ||
|
||
[NOTE] | ||
==== | ||
This procedure is not considered safe to run from multiple threads. | ||
It is therefore not supported by the parallel runtime (introduced in Neo4j 5.13). | ||
For more information, see the link:{neo4j-docs-base-uri}/cypher-manual/{page-version}/planning-and-tuning/runtimes/concepts#runtimes-parallel-runtime[Cypher Manual -> Parallel runtime]. | ||
==== | ||
|
||
.Details | ||
|=== | ||
| *Syntax* 3+| `apoc.export.arrow.stream.graph(graph [, config ]) :: (value)` | ||
| *Description* 3+| Exports the given graph as an arrow byte array. | ||
.3+| *Input arguments* | *Name* | *Type* | *Description* | ||
| `graph` | `ANY` | The graph to export. | ||
| `config` | `MAP` | `{ batchSize = 2000 :: INTEGER }`. The default is: `{}`. | ||
.2+| *Return arguments* | *Name* | *Type* | *Description* | ||
| `value` | `BYTEARRAY` | The data as a bytearray. | ||
|=== | ||
|
||
== Usage Examples | ||
The procedure expose an Arrow byte[] for each batch of rows with the following structure | ||
- `<id>`: for node id | ||
- `<labels>`: list of labels | ||
- `<source.id>`: source node id (in case of relationship) | ||
- `<target.id>`: target node id (in case of relationship) | ||
- `<type>`: for relationship type | ||
- the list of properties of nodes and relationships flattened as table | ||
|
||
So for the following query: | ||
|
||
[source,cypher] | ||
---- | ||
CREATE (f:User {name:'Adam',age:42,male:true,kids:['Sam','Anna','Grace'], born:localdatetime('2015185T19:32:24'), place:point({latitude: 13.1, longitude: 33.46789})})-[:KNOWS {since: 1993, bffSince: duration('P5M1.5D')}]->(b:User {name:'Jim',age:42}),(c:User {age:12}),(d:Another {foo: 'bar'}) | ||
---- | ||
|
||
With this query: | ||
|
||
[source,cypher] | ||
---- | ||
CALL apoc.graph.fromDB('neo4j',{}) yield graph | ||
CALL apoc.export.arrow.stream.graph(graph) | ||
YIELD value RETURN value" | ||
---- | ||
|
||
We'll have a table with the following columns: | ||
|
||
- `<id>` | ||
- `<labels>` | ||
- `<source.id>` | ||
- `<target.id>` | ||
- `<type>` | ||
- `name` | ||
- `age` | ||
- `male` | ||
- `kids` | ||
- `born` | ||
- `place` | ||
- `since` | ||
- `bffSince` |
Oops, something went wrong.