-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
update text indexing/search on edges #124
base: main
Are you sure you want to change the base?
Conversation
WalkthroughThe changes enhance FalkorDB's documentation by adding support for full-text indexing on relationship labels. New sections detail how to create, use, and delete a full-text index for relationships, specifically targeting the Changes
Sequence Diagram(s)sequenceDiagram
participant U as User
participant DB as FalkorDB
U->>DB: Execute "CREATE FULLTEXT INDEX FOR ()-[m:Manager]-() on (m.name)"
DB-->>U: Acknowledge index creation
U->>DB: Execute "COPY db.idx.fulltext.queryRelations('Manager', 'Charlie Munger') ..."
DB-->>U: Return matching relations
U->>DB: Execute "CALL DROP FULLTEXT INDEX FOR ()-[m:Manager]-() ON (m.name)"
DB-->>U: Acknowledge index deletion
Suggested labels
Suggested reviewers
Poem
Tip 🌐 Web search-backed reviews and chat
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
Qodo Merge was enabled for this repository. To continue using it, please link your Git account with your Qodo account here. PR Reviewer Guide 🔍Here are some key observations to aid the review process:
|
Qodo Merge was enabled for this repository. To continue using it, please link your Git account with your Qodo account here. PR Code Suggestions ✨Explore these optional code suggestions:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (2)
cypher/indexing.md (2)
191-198
: Clarify Full-Text Index Creation for Relation LabelsThe new section for creating a full-text index on relation labels is clear and follows the documentation style used elsewhere in the file. To further enhance the documentation, consider adding a brief note on any additional options or limitations (e.g., supported phonetic configurations) available for relation indexes compared to node indexes. This additional detail could help users understand when and how to use this feature effectively.
199-207
: Ensure Consistency in Full-Text Index Query UsageThe “Utilizing a full-text index for a relation label” section is consistent in style with the node label querying examples. The command
"CALL db.idx.fulltext.queryRelations('Manager', 'Charlie Munger') YIELD relation RETURN relation.name"
is clear and instructive. Consider adding a brief explanatory note on how the query function (
queryRelations
) differs from the node version (if applicable), or point users to a section with more detailed information on query behavior.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
cypher/indexing.md
(1 hunks)
🔇 Additional comments (1)
cypher/indexing.md (1)
208-214
: Verify Full-Text Index Deletion Syntax for Relation LabelsThe deletion example is straightforward; however, it introduces a different syntax pattern compared to the node index deletion example (which uses
CALL db.idx.fulltext.drop('Movie')
). Please verify that the difference—usingfor relations—is intentional and aligns with the product’s command conventions. If the difference is by design due to technical reasons, a small explanatory note might help prevent user confusion. Additionally, consider normalizing spacing (e.g., avoid extra spaces before
ON
) for clarity.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some sentence structure and visual suggestions
@@ -188,6 +188,31 @@ For a node label, the full-text index deletion syntax is: | |||
GRAPH.QUERY DEMO_GRAPH "CALL db.idx.fulltext.drop('Movie')" | |||
``` | |||
|
|||
## Creating a full-text index for a relation label |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full-Text Indexing for Relation Labels
@@ -188,6 +188,31 @@ For a node label, the full-text index deletion syntax is: | |||
GRAPH.QUERY DEMO_GRAPH "CALL db.idx.fulltext.drop('Movie')" | |||
``` | |||
|
|||
## Creating a full-text index for a relation label | |||
|
|||
To construct a full-text index on the `name` property with phonetic search of all relations with label `Manager`, use the syntax: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Creating a Full-Text Index
To create a full-text index on the name
property of all relations with the label Manager
and enable phonetic search, use the following synax:
## Creating a full-text index for a relation label | ||
|
||
To construct a full-text index on the `name` property with phonetic search of all relations with label `Manager`, use the syntax: | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Querying with a Full-Text Index
To search for specific words within the indexed relations, use:
"CALL db.idx.fulltext.queryRelations('Manager', 'Charlie Munger') YIELD relation RETURN relation.name" | ||
``` | ||
|
||
## Deleting a full-text index for a relation label |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Deleting a Full-Text Index
To delete the full-text index for a specific relation label, use:
```sh | ||
GRAPH.QUERY DEMO_GRAPH "CALL DROP FULLTEXT INDEX FOR ()-[m:Manager]-() ON (m.name)" | ||
``` | ||
|
||
# Vector indexing |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Vector Indexing
```sh | ||
GRAPH.QUERY DEMO_GRAPH "CALL DROP FULLTEXT INDEX FOR ()-[m:Manager]-() ON (m.name)" | ||
``` | ||
|
||
# Vector indexing | ||
|
||
With the introduction of the `vector` data-type a new type of index was introduced. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Creating a Vector Index
To create a vector index, follow this syntax (example provided for a vector property embedding on nodes with label Document):
PR Type
Documentation
Description
Added documentation for creating full-text indexes on relation labels.
Included examples for utilizing full-text indexes on relations.
Documented syntax for deleting full-text indexes on relation labels.
Changes walkthrough 📝
indexing.md
Document full-text indexing for relation labels
cypher/indexing.md
Summary by CodeRabbit
New Features
Documentation