Searching through your graph database
In InterActor there are two ways to run a search on your Neo4j graph store:
- using the Neo4j panel to execute regular Cypher statements
- using the Elastic panel to execute an Elastic Search (Enterprise Edition only).
The Neo4j panel is usually located on the left panel
sidebar-left of InterActor. Here you can enter and execute Cypher statements against your Neo4j graph store. A default Cypher statement is provided that can be adapted or replaced by something else.
Searching for nodes is done here as you would do in any other situation where Cypher is used to find and filter nodes and relations.
Click on the [Execute] button in the Cypher panel once the cypher statement has been entered. The statement is now executed and the result is displayed depending on the selection made in the Output dropdown.
The results are displayed in a Networkview when
Networkis selected while they are presented in tabular format when
Table is selected.
When nodes are presented in tabular format the node label, its id and nested properties are listed. However, nothing (!) is shown when output is set to
Network while the Cypher statement only returns properties (but no nodes or relationships).
Additionally, when sending only nodes to a NetworkView, the NetworkView will -by default- automatically show the relationships between those nodes. Contrarily, when sending only relationships to a NetworkView, it will display the start and end nodes for these relationships.
(Enterprise Edition only)
The Elastic panel uses Elastic Search (https://www.elastic.co/guide/en/elasticsearch/reference/5.5/query-dsl-query-string-query.html) syntax to search through the Neo4j graph store.
The following syntax can be used:
Searching any text string:
Note: the search is case insensitive and multi word strings will not be matched exactly.
[@Remi: CAN WE MATCH 100% ON MULTI WORD STRINGS? ]
Searching by id:
Note: this returns nodes based on both the inherent Neo4j node id as well as properties named id. It does not return relationships based on id.
Searching by label:
labels:<name of label>
Searching on node properties:
Using logical operators: AND and OR
labels:user AND (properties.age:20)
properties.name:cappucino OR properties.name:"latte machiato "
- search syntax and strings are not case sensitive, except for the Logical Operators that should be written in UPPERCASE as
- the colon
:is used as the equal sign
- multi-word string values should be enclosed in
- Elastic Search only returns the first 50 nodes that meet the selection criteria.
- The search is triggered by pressing the Enter key on your keyboard