You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: documentation/getting-started/graph-database.mdx
+23-6Lines changed: 23 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,9 +6,9 @@ icon: 'chart-network'
6
6
7
7
A graph database is a type of database that stores data using a graph structure, where information is represented through **nodes** (data points) and **edges** (relationships between nodes). Unlike traditional databases that use tables or documents, graph databases excel at managing highly connected data and complex relationships.
8
8
9
-
## How Graph Databases Work
9
+
## How do graph databases work?
10
10
11
-
Graph databases are built on two fundamental concepts:
11
+
Graph databases store data using two fundamental concepts:
12
12
13
13
1.**Nodes** - These are the entities or objects in your data (like people, products, or locations)
14
14
2.**Edges** (or relationships) - These are the connections between nodes that describe how they relate to each other
@@ -28,7 +28,7 @@ In this simple example:
28
28
- Edges show relationships like friendships, employment, and product interactions
29
29
- Both nodes and edges can have properties (additional data attributes)
30
30
31
-
## Common Use Cases
31
+
## What are graph databases used for?
32
32
33
33
### 1. Social Networks
34
34
Perfect for modeling:
@@ -58,9 +58,9 @@ Great for:
58
58
- AI and machine learning
59
59
- Research and discovery
60
60
61
-
## When to Use a Graph Database
61
+
## When should I use a graph database?
62
62
63
-
Consider using a graph database when:
63
+
Use a graph database when:
64
64
65
65
- Your data has many interconnected relationships
66
66
- You need to perform complex queries involving multiple relationships
@@ -70,9 +70,26 @@ Consider using a graph database when:
70
70
71
71
72
72
73
-
## Benefits Over Traditional Databases
73
+
## What are the benefits of graph databases?
74
74
75
75
1.**Performance**: Faster for relationship-heavy queries
76
76
2.**Flexibility**: Easier to modify and extend the data model
77
77
3.**Intuitive**: More natural way to model connected data
78
78
4.**Scalability**: Better handling of complex relationship patterns
79
+
80
+
## Next steps
81
+
82
+
<CardGroupcols={2}>
83
+
<Cardtitle="What is HelixDB?"icon="database"href="/documentation/getting-started/helixdb">
Copy file name to clipboardExpand all lines: documentation/hql/hql.mdx
+13-11Lines changed: 13 additions & 11 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,32 +1,34 @@
1
1
---
2
2
title: "What is HelixQL?"
3
+
description: "Learn about HelixQL, a strongly typed compiled query language for graph and vector operations in HelixDB"
3
4
sidebarTitle: "What is HQL?"
4
5
icon: "book-open"
5
6
---
6
7
7
-
HelixQL is a strongly typed, compiled query language for HelixDB.
8
-
It was inspired from a combination of Gremlin, Cypher and Rust.
8
+
HelixQL is a strongly typed, compiled query language for HelixDB that combines the best features of Gremlin, Cypher, and Rust to provide type-safe graph and vector queries.
9
9
10
-
## Why yet another query language?
10
+
## Why use HelixQL instead of other query languages?
11
11
12
-
Over the past few years, we've used Gremlin extensively for graph queries.
13
-
It's powerful and very expressive, but it's also extremely verbose and horrible to read after any substantial complexity.
12
+
HelixQL addresses key limitations found in existing graph query languages:
14
13
15
-
The other major issue is that it's obviously completely dynamic and is parsed at runtime when the query is executed.
16
-
This leads to a horrible developer experience, not knowing if the query is valid until runtime.
14
+
-**Type safety**: Queries are validated at compile time, catching errors before runtime
15
+
-**Readability**: Clean, concise syntax that remains readable even for complex queries
16
+
-**Performance**: Compiled queries execute faster than dynamically parsed alternatives
17
+
-**Developer experience**: IDE support with autocomplete and type checking
17
18
18
-
Building a new query language from scratch is obviously a big undertaking,
19
-
but we thought it was a necessary step to improve the developer experience and make building with graphs better.
19
+
Unlike Gremlin's verbose syntax or Cypher's runtime parsing, HelixQL provides a modern, type-safe approach to graph querying.
20
20
21
-
**Example Query Syntax:**
21
+
## How do I write a HelixQL query?
22
+
23
+
HelixQL queries follow a simple, declarative syntax:
Copy file name to clipboardExpand all lines: documentation/hql/select/selectN.mdx
+11-4Lines changed: 11 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,12 +1,12 @@
1
1
---
2
-
title: "Nodes"
3
-
description: "Learn how to select nodes in your graph."
2
+
title: "Select nodes"
3
+
description: "How to select and query nodes in your HelixDB graph by ID or type with code examples"
4
4
icon: "draw-circle"
5
5
---
6
6
7
-
## `N` Nodes
7
+
## How do I select nodes in HelixDB?
8
8
9
-
Select nodes from your graph to begin traversal.
9
+
Use `N` to select nodes from your graph by ID or type to begin traversals.
10
10
11
11
```rust
12
12
N<Type>(node_id)
@@ -245,3 +245,10 @@ curl -X POST \
245
245
</CodeGroup>
246
246
247
247
<Note>You can also do specific property-based filtering, e.g., returning only ID, see the [Property Filtering](../properties/property-access). You can also do aggregation steps, e.g., returning the count of nodes, see the [Aggregations](../aggregation).</Note>
248
+
249
+
## Related operations
250
+
251
+
-[Create nodes](/documentation/hql/create/addN) - Add new nodes to your graph
252
+
-[Traversals](/documentation/hql/traversals/steps_nodes) - Navigate between connected nodes
253
+
-[Conditionals](/documentation/hql/conditionals/conditions) - Filter nodes by properties
254
+
-[Property access](/documentation/hql/properties/property-access) - Work with node properties
0 commit comments