Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion modules/ROOT/content-nav.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -173,7 +173,7 @@
*** xref:scalability/composite-databases/querying-composite-databases.adoc[]
*** xref:scalability/composite-databases/sharding-with-copy.adoc[]
//*** xref:scalability/composite-databases/scaling-with-composite-databases.adoc[]
** Property sharding (Preview feature)
** Property sharding (Infinigraph)
*** xref:scalability/sharded-property-databases/overview.adoc[]
*** xref:scalability/sharded-property-databases/planning-and-sizing.adoc[]
*** xref:scalability/sharded-property-databases/configuration.adoc[]
Expand Down
5 changes: 0 additions & 5 deletions modules/ROOT/pages/kubernetes/configuration.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -564,11 +564,6 @@ config:
# Enable automatic reloading of TLS certificates
dbms.security.tls_reload_enabled: "true"

# SPeeDy (Sharded Property Database) feature flag
# Enables the sharded property database feature for improved performance with large datasets
# Set to "true" to enable SPeeDy, "false" to disable (default: false)
internal.dbms.sharded_property_database.enabled: "false"

apoc_config: {}
# apoc.trigger.enabled: "true"
# apoc.import.file.enabled: "true"
Expand Down
4 changes: 2 additions & 2 deletions modules/ROOT/pages/scalability/concepts.adoc
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
:page-role: new-2025.10 enterprise-edition not-on-aura
:page-role: enterprise-edition not-on-aura
:description: This page describes the concepts behind scalability with Neo4j.
= Concepts

Expand All @@ -8,7 +8,7 @@ The three main strategies are:

* xref:clustering/setup/analytics-cluster.adoc[Analytics clustering] -- for horizontal read scalability.
* xref:scalability/composite-databases/concepts.adoc[Composite databases] -- for federated queries and distributed data management.
* xref:scalability/sharded-property-databases/overview.adoc[Property sharding] -- for handling massive property-heavy graphs.
* xref:scalability/sharded-property-databases/overview.adoc[Property sharding] (part of Infinigraph) label:new[Introduced in 2025.12] -- for handling massive property-heavy graphs.

== What is scalability?

Expand Down
11 changes: 7 additions & 4 deletions modules/ROOT/pages/scalability/scaling-with-neo4j.adoc
Original file line number Diff line number Diff line change
@@ -1,8 +1,11 @@
:page-role: new-2025.10 enterprise-edition not-on-aura
:page-role: new-2025.12 enterprise-edition not-on-aura
:description: Scaling strategies with Neo4j.
= Scaling with Neo4j

Neo4j offers various options for scaling, tailored to specific use cases and requirements. Here are some of the supported scaling strategies:
Neo4j offers various options for scaling, tailored to specific use cases and requirements.
You can mix and match these strategies to create a scalable solution that meets your needs.

Here are some of the supported scaling strategies:

* *Data replication via Neo4j analytics clustering (read scalability)* -- A Neo4j cluster is a high-availability cluster with multi-DB support.
It is a collection of servers running Neo4j that are configured to communicate with each other.
Expand Down Expand Up @@ -34,7 +37,7 @@ The main advantage is obtained by combining Neo4j clustering and composite datab
* *Data distribution via Infinigraph* -- using a distributed graph architecture to extend a single system without fragmenting the graph.
//This allows, in theory, the unlimited growth of a graph.
+
label:preview[Preview feature] xref:scalability/sharded-property-databases/overview.adoc[Property sharding] (part of Infinigraph) allows you to decouple the properties attached to nodes and relationships and store them in separate graphs.
xref:scalability/sharded-property-databases/overview.adoc[Property sharding] (part of Infinigraph) allows you to decouple the properties attached to nodes and relationships and store them in separate graphs.
This architecture enables the independent scaling of property data, allowing for the handling of high volumes, heavy queries, and high read concurrency.

The following table summarizes the similarities and differences between analytics clustering, composite databases, and sharded property databases:
Expand Down Expand Up @@ -110,7 +113,7 @@ Tools used on individual shards and Bloom are not supported on composite databas
//TODO
//Admin considerations

// == Property sharding (Preview feature)
// == Property sharding

// Sharded property databases

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
:page-role: new-2025.10 enterprise-edition not-on-aura
:page-role: new-2025.12 enterprise-edition not-on-aura
:description: Admin operations for sharded property databases
:keywords: sharded property databases, sharding, admin operations, aliases, servers, backup, recovery, failover
= Admin operations
Expand Down Expand Up @@ -62,8 +62,6 @@ A backup must be taken of each shard, for example:
bin/neo4j-admin database backup "foo*" --to-path=/backups --from=localhost:6361 --remote-address-resolution
----

The `--remote-address-resolution` option requires `internal.dbms.cluster.experimental_protocol_version.dbms_enabled=true` to be set in both the _neo4j.conf_ and _neo4j-admin.conf_ files.

You can then check the validity of the resulting backups using:

[source,shell]
Expand Down Expand Up @@ -130,8 +128,8 @@ Failure to meet this requirement will make a given replica of a property shard u
If a property shard replica does fall behind the transaction log range available on the graph shard, you can recover it by:

. Connecting to the `system` database on the server hosting the affected replica using the _bolt://_ scheme.
. Quarantining the replica using xref:procedures.adoc#procedure_dbms_quarantineDatabase[`dbms.quarantineDatabase()`].
. Unquarantining the replica using xref:procedures.adoc#procedure_dbms_unquarantineDatabase[`dbms.unquarantineDatabase()`] with the `replaceStateReplaceStore` option.
. Quarantining the replica using xref:procedures.adoc#procedure_dbms_quarantineDatabase[`Cypher 5 CALL dbms.quarantineDatabase()`].
. Unquarantining the replica using xref:procedures.adoc#procedure_dbms_unquarantineDatabase[`Cypher 5 CALL dbms.unquarantineDatabase()`] with the `replaceStateReplaceStore` option.
This will force the replica to copy the database store files from another replica of the property shard.

If all replicas of a given property shard are behind, then the sharded property database as a whole becomes unusable.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
:page-role: new-2025.10 enterprise-edition not-on-aura
:page-role: new-2025.12 enterprise-edition not-on-aura
:description: Describes how to alter sharded property databases in Neo4j.

= Altering sharded property databases
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
:page-role: new-2025.10 enterprise-edition not-on-aura
:page-role: new-2025.12 enterprise-edition not-on-aura
:description: This page describes the system requirements and configuration settings for sharded property databases.
= System requirements and configuration

Expand All @@ -8,21 +8,5 @@ The sharded property database requires the same xref:installation/requirements.a

== Configuration settings

To enable the property sharding in your cluster, you must configure the following additional configuration settings on each server:

[options="header", width="100%", cols="4m,4a"]
|===
| Configuration setting | Description

| internal.dbms.sharded_property_database.enabled=true
| By default, the sharded property database is disabled.footnote:[Property sharding is a preview feature. For details, see xref:scalability/sharded-property-databases/overview.adoc[Property sharding overview].]

| db.query.default_language=CYPHER_25
| Ensures that any database created will use Cypher 25 (unless users specifically override the default version in the `CREATE DATABASE` command).
To enable the property sharding in your cluster, you must also ensure that the default Cypher version is set to Cypher 25 by adding `db.query.default_language=CYPHER_25` parameter to the `neo4j.conf` file on each server or by prefixing your Cypher queries with `CYPHER_25`.
See xref:configuration/cypher-version-configuration.adoc[Configure the Cypher default version] and link:https://neo4j.com/docs/cypher-manual/current/queries/select-version/[Cypher Manual -> Select Cypher version].

|===




Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
:description: This page describes how to create a sharded property database using the `CREATE DATABASE` command.
:page-role: new-2025.10 enterprise-edition not-on-aura
:page-role: new-2025.12 enterprise-edition not-on-aura
:keywords: sharded property database, CREATE DATABASE, Cypher 25
= `CREATE DATABASE` command with sharded databases

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
:page-role: new-2025.10 enterprise-edition not-on-aura
:page-role: new-2025.12 enterprise-edition not-on-aura
:description: Methods for ingesting data into a sharded property database.
:keywords: sharded property database, data ingestion, import, neo4j-admin, LOAD CSV, CREATE DATABASE
= Data ingestion
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
:page-role: new-2025.10 enterprise-edition not-on-aura
:page-role: new-2025.12 enterprise-edition not-on-aura
:description: Instructions for deleting sharded property databases in Neo4j.
:keywords: sharded databases, delete sharded databases, drop sharded databases, drop database
= Deleting sharded property databases
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
:page-role: new-2025.10 enterprise-edition not-on-aura
:page-role: new-2025.12 enterprise-edition not-on-aura
:description:
= Limitations and considerations

Expand Down Expand Up @@ -128,10 +128,4 @@ A suitable heuristic is to ensure that the transaction log kept covers the trans
[NOTE]
====
It is important to ensure that there is space for the transaction logs and that the server does not run out of disk space.
====


=== Controlling the property shard transaction log pull frequency

The interval at which property shards pull transaction log entries from the graph shard is controlled by `internal.dbms.sharded_property_database.property_pull_interval` (defaults to 10ms).
Write performance can often be improved by setting this value lower at the cost of more polling on the graph shard from the property shards, however, the impact of this has not yet been fully tested.
====
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
:page-role: new-2025.10 enterprise-edition not-on-aura
:page-role: new-2025.12 enterprise-edition not-on-aura
:description: Listing sharded property databases
= Listing sharded property databases

Expand Down
Original file line number Diff line number Diff line change
@@ -1,28 +1,13 @@
:page-role: new-2025.10 enterprise-edition not-on-aura
:page-role: new-2025.12enterprise-edition not-on-aura
:description: This page describes property sharding and how it works.
= Overview

.Preview Feature
[IMPORTANT]
====
The *property sharding feature is offered AS-IS* as described in your agreement with Neo4j and should only be used for internal development purposes.

When this feature becomes generally available, you will need to upgrade to the latest Neo4j version (which may require downtime) to use the feature for non-development purposes.

*Enabling the preview feature (internal parameter):* +
By default, the sharded property database is disabled.
Use the internal setting `internal.dbms.sharded_property_database.enabled=true` to enable it.

During the Preview period, if you have any feedback, comments, or encounter any issues, we welcome them in our link:https://github.com/neo4j/neo4j/issues[public GitHub repository].
We will address them to the best of our ability.
Please include the term *Infinigraph* or *property sharding* in the title of your issue so we can identify it more easily. +
Customers with active contracts may contact Neo4j Support through the standard support channels.
Please note that any cases related to the Preview feature will be classified as Severity 4 by default, in accordance with the link:https://neo4j.com/terms/support-terms/[Support Terms].
====
Property sharding is part of Infinigraph, Neo4j’s distributed graph architecture that uses sharding to distribute the graph’s property data across different members of a cluster.
The graph remains logically intact, queries behave as expected, and applications scale without requiring code changes or manual workarounds.

== What is property sharding?

Property sharding is about decoupling the properties associated with nodes and relationships, and storing them in separate graphs.
Property sharding involves decoupling the properties associated with nodes and relationships, and storing them in separate graphs.
The graph structure, comprising nodes and relationships, is stored in a single "graph shard".
The properties associated with these nodes and relationships are distributed across multiple "property shards".
This architecture enables the independent scaling of property data, allowing for the handling of larger volumes of properties without impacting the performance of the graph structure. +
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
:page-role: new-2025.10 enterprise-edition not-on-aura
:page-role: new-2025.12 enterprise-edition not-on-aura
:description: This page describes the planning and sizing of sharded property databases.

= Planning and sizing
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
:page-role: new-2025.10 enterprise-edition not-on-aura
:page-role: new-2025.12 enterprise-edition not-on-aura
:description: Managing role-based access control in sharded property databases.
= Role-based access control (RBAC)

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
:page-role: new-2025.10 enterprise-edition not-on-aura
:page-role: new-2025.12 enterprise-edition not-on-aura
:description: Security considerations for sharded property databases
= Security

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
:page-role: new-2025.10 enterprise-edition not-on-aura
:page-role: new-2025.12 enterprise-edition not-on-aura
:description: Starting and stopping sharded property databases
= Starting and stopping sharded property databases

Expand Down