Skip to content

Commit c72316b

Browse files
Add info about migration paths between store formats (#2706) (#2707)
This is the copy of PR #2687
1 parent 5d82f26 commit c72316b

File tree

2 files changed

+42
-8
lines changed

2 files changed

+42
-8
lines changed

modules/ROOT/pages/database-administration/standard-databases/migrate-database.adoc

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,28 @@ A migration to a higher `MAJOR` format version or another format is a manual act
1313

1414
The store format for new databases can be set with the xref:configuration/configuration-settings.adoc#config_db.format[`db.format`] configuration setting.
1515

16+
The table below shows supported migration paths between different Neo4j store formats.
17+
However, the `standard` and `high_limit` store formats are deprecated starting with Neo4j 5.23, meaning that migration to these formats is not recommended from this version onward.
18+
19+
[[supported-migration-paths]]
20+
.Migration paths between Neo4j store formats
21+
[options="noheader"]
22+
|===
23+
.2+.>|*Store format* 4+^|*Migration paths*
24+
^|To `block` ^|To `aligned` ^|To `high_limit` ^|To `standard`
25+
26+
|`block` footnote:1[The `block` format is the default in Enterprise Edition starting from Neo4j 5.22.] | |{check-mark} Not recommended |{check-mark} Not recommended |
27+
28+
|`aligned` footnote:2[The `aligned` format is the default in Community Edition. In Enterprise Edition, it was default before Neo4j 5.22.] ^|{check-mark} | |{check-mark} Not recommended |
29+
30+
|`high_limit` footnote:3[label:enterprise[Enterprise Edition] The `high_limit` format is deprecated in 5.23.] ^|{check-mark} | | |
31+
32+
|`standard` footnote:4[label:community[Community Edition] The `standard` format is deprecated in 5.23.] ^|{check-mark} ^|{check-mark} |{check-mark} Not recommended |
33+
|===
34+
35+
Before migrating from `block` to the `aligned` format, you have to ensure that your graph fits in the `aligned` since the `block` format has higher limits.
36+
For details, see xref:database-internals/store-formats.adoc#store-formats-entity-limits[Database internals and transactional behavior -> Store formats].
37+
1638
== Syntax
1739

1840
The `neo4j-admin database migrate` has the following syntax:

modules/ROOT/pages/database-internals/store-formats.adoc

Lines changed: 20 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ Neo4j's storage engine supports several store formats that describe how data is
66
`block` format is the recommended format for Enterprise Edition due to its superior performance and scalability.
77
`block` format uses advanced data structures and inlining techniques to enhance data locality, which leads to better resource utilization.
88

9-
`aligned` is the recommended format for Community Edition.
9+
`aligned` is the default format for Community Edition.
1010

1111
`standard` and `high_limit` formats are deprecated in Neo4j 5.23.
1212
It is not recommended to use these formats for new databases.
@@ -33,6 +33,9 @@ Supports the highest limits at the time of writing.
3333
See <<block-format-limits, Block format entity limits>> for details. +
3434
Supports token names (including label, property key, and relationship type names) of any length up to the GQL identifier max length of 16,383 characters.
3535
* *Future-proofing:* Designed to be extended and improved without requiring store migrations. New features such as data types, or performance enhancements are available without rewriting the store.
36+
* *Supported migration paths to other store formats:* Although it is not recommended, you can change your store format from `block` to `aligned` or `high_limit`.
37+
Note that `high_limit` is deprecated.
38+
The `aligned` format has lower limits than `block`, so your graph must fit within those reduced limits.
3639

3740
Aligned::
3841
* Default format in Community Edition and for all new databases in Enterprise Edition prior to Neo4j 5.22.
@@ -41,13 +44,8 @@ Aligned::
4144
* *Property access:* Stores graph data in linked list-like structures on disk.
4245
* *Entity limits:* Supports graphs within some limits.
4346
See <<aligned-limits, Aligned format entity limits>> for details.
44-
45-
Standard:: label:deprecated[Deprecated in 5.23]
46-
* *Performance:* Basic, foundational format.
47-
* *Property access:* Stores graph data in linked list-like structures on disk.
48-
* *Entity limits:* Supports graphs within some limits.
49-
See <<standard-limits, Standard format entity limits>> for details.
50-
* For information on deprecation and eventual removal, see <<format-deprecations, Format deprecations>>.
47+
* *Supported migration paths to other store formats:* You can change your store format from `aligned` to `block` or `high_limit`.
48+
Note that the `high_limit` format is deprecated, therefore, it is not recommended to migrate to it.
5149

5250
High_limit:: label:enterprise-edition[] label:deprecated[Deprecated in 5.23]
5351
* *Performance:* Performs slightly worse than `standard` and requires more disk space, but allows more nodes and relationships.
@@ -56,6 +54,17 @@ High_limit:: label:enterprise-edition[] label:deprecated[Deprecated in 5.23]
5654
* *Entity limits:* From the record formats, supports the highest limits at the time of writing.
5755
For more information, see <<high-format-limits, High_limit format entity limits>>.
5856
* For information on deprecation and eventual removal, see <<format-deprecations, Format deprecations>>.
57+
* *Supported migration paths to other store formats:* You can migrate to the `block` format only.
58+
59+
Standard:: label:deprecated[Deprecated in 5.23]
60+
* *Performance:* Basic, foundational format.
61+
* *Property access:* Stores graph data in linked list-like structures on disk.
62+
* *Entity limits:* Supports graphs within some limits.
63+
See <<standard-limits, Standard format entity limits>> for details.
64+
* For information on deprecation and eventual removal, see <<format-deprecations, Format deprecations>>.
65+
* *Supported migration paths to other store formats:* You can change your store format from `standard` to `aligned`, `block`, or `high_limit`.
66+
However, it is not recommended to migrate to the `high_limit` format as it is deprecated.
67+
5968

6069
[[format-deprecations]]
6170
== Format deprecations
@@ -81,6 +90,9 @@ The last version of Neo4j to include these formats will be an LTS release planne
8190
+
8291
. *How can I change the store format of my database?* +
8392
For information on changing the store format of an existing database, see <<change-store-format, Changing the store format of existing databases>>.
93+
+
94+
. *From which store formats can I migrate, and to which formats?* +
95+
For information about supported migration paths, refer to xref:tools/neo4j-admin/migrate-database.adoc#supported-migration-paths[Neo4j Admin -> Migrate a database].
8496

8597

8698
[role="enterprise-edition"]

0 commit comments

Comments
 (0)