Zero maintenance. Zero hassle.
Handle relational, document, graph, time series, key value, vector and search, in one place.
Scale compute and storage separately, from 0 to 100s of nodes and back to 0, without sharding.
SurrealQL is intuitive and easy to learn, blending SQL familiarity with modern flexibility.
Build generative AI apps with vectors, knowledge graphs, and in-database ML capabilities.
Built for data intensive applications and real-time analytics.
Built-in access controls, granular table, row and field-level permissions.
SELECT p.name, pr.name, pr.price
FROM person p
INNER JOIN order o ON p.id = o.person_id
LEFT JOIN product pr ON o.product_id = pr.id
SELECT name, ->order->product.{name, price} FROM person
db.review.aggregate([
{
"$match": {
"_id": "01FXNDZ2C893992S408TX4MYYQ"
}
},
{
"$lookup": {
"from": "person",
"localField": "person",
"foreignField": "_id",
"as": "person"
}
},
{
"$project": {
"_id": 0,
"rating": 1,
"review_text": 1,
"person.name": 1,
"person.email": 1
}
}
])
SELECT rating, review_text, person.name, person.email FROM review:01FXNDZ2C893992S408TX4MYYQ
MATCH (p:Person)-[:ORDER]->(pr:Product)
RETURN p.name, pr.name, pr.price
SELECT name, ->order->product.{name, price} FROM person
"I think it's going to change how we query databases."
Director, Salesforce
"It's fast, small, can run on browser, edge and cloud. It can handle large data. It can run in-memory like Redis or disk like SQLite and it can run multi-cluster. It can sync between cloud and edge. And to top of it off, it can also run as a graphdb."
Distinguished Engineer, IBM iX
"There is a pretty good use case to using it in some serious projects."
Tech Influencer, Fireship
Free
Ideal for passion projects, simple websites, and getting started with the power of SurrealDB.
From
/mo
Designed for production applications with scalable power. Resources and costs adjust to meet your needs.
Contact us
For large-scale applications handling enterprise workloads.
* Coming soon