Option to Exclude Specific Properties from Browser
Mathias Torp
When working with nodes that have large properties (e.g., vector embeddings), the Neo4j Browser often grinds to a halt due to the volume of data being rendered, especially in the table view. While these properties are necessary for certain calculations and storage, they are not always needed for visualization purposes.
Proposed Solution
Introduce a configuration option in Neo4j Browser that allows users to exclude specific properties from being returned in the result set when visualizing data. This could be done through:
- Browser Settings:An option in the settings panel to specify properties to exclude.
- Query Annotation:Special annotations or hints in Cypher queries to exclude certain properties from the result set.
- Dynamic Exclusion:A toggle in the result panel to hide/show specific properties.
- Configuration in Docker Compose:
Allow users to specify properties to exclude and array length limits directly in the Docker Compose file. Example:
```yml
environment:
- NEO4J_browser_customizations_hide_properties=embedding,vector
- NEO4J_browser_customizations_array_length_limit=50
```
Benefits
- Performance Improvement:Reduces the data load during visualization, leading to faster query execution and rendering.
- User Control:Allows users to tailor their visualization experience without modifying queries.
- Flexibility:Supports advanced use cases where nodes contain heavy properties not needed for every visualization.
Gregory King
HeyMathias Torp, if you have the facility to use the Query app that is part of Workspace, could you report back how well it works for you? You should be able to connect to self-managed instances from this webapp.
Reason I suggest using it is we've made a number of improvements there like providing collapsed views of long renders for things like embedding property values and only rendering the table rows in view to improve performance. Look forward to hearing how you go.
Mathias Torp
Thanks Gregory King! It's a completely different experience, it's so much faster at rendering! Amazing work on the workspace. Is there any way to set this up for docker compose similar to the browser, or is the recommend way using workspace-preview.neo4j.io ?
Gregory King
Mathias Torp that's great to hear. For now the recommended approach is to use workspoace-preview.neo4j.io. We'll shortly be bundling the Query part with the DB too.
Mathias Torp
Gregory King amazing to hear!