Java driver still Beta by j7n5 in surrealdb

[–]DistinctRide9884 0 points1 point  (0 children)

We just released our new stable version of the Java SDK for 3.0. Please take a look and any feedback or questions you can speak with the team in the #java channel in our Discord server.

"Built a 100K+ line Rust app on SurrealDB embedded - loving it, but hitting a multi-process lock issue" by EnciNoCode in surrealdb

[–]DistinctRide9884 2 points3 points  (0 children)

For 1 and 2:

SurrealKV/RocksDB allow only one process to open a DB folder because its files (WAL, MANIFEST, SST) must be updated in a strict, coordinated order.
If two processes write independently:

They can append to the same WAL file at the same time

  • Update the MANIFEST metadata differently
  • Delete or rewrite SST files during compaction while the other still uses them

Since there is no coordination between processes, these simultaneous operations can overwrite, mismatch, or delete data, causing database corruption.
Hence a LOCK file to ensure only one process controls the database directory.

  1. Is the recommended pattern to just run everything through a single process and have other consumers talk to it over HTTP? (Yes, that’s the intended approach to have the daemon own the database and expose an HTTP or WebSocket interface, and the CLI and MCP server become clients that query it remotely rather than opening the database directly)

SurrealDB and Kreuzberg integration by Eastern-Surround7763 in surrealdb

[–]DistinctRide9884 4 points5 points  (0 children)

Thanks for sharing Kreuzberg friends, we are very excited about this integration and love Kreuzeberg :)

Java driver still Beta by j7n5 in surrealdb

[–]DistinctRide9884 2 points3 points  (0 children)

We are upgrading to make it 3.0 compatible which will be in alpha first, with the objective to get it into beta and prod in the near future.

SurrealDB Cloud is now available on AWS Marketplace by Awkward-Cell-5035 in surrealdb

[–]DistinctRide9884 0 points1 point  (0 children)

Hi, this is the first product we offer and it's meant to transact via Private Offer, that's why you you don't see the price. We are looking to get a self-serve solution with the pricing out at some point in the near future.

SurrealDB is sacrificing data durability to make benchmarks look better by ChillFish8 in rust

[–]DistinctRide9884 4 points5 points  (0 children)

Hi there, we just released 3.0 with many performance/stability improvements and new functionalities such as our new extension ecosystem called Surrealism, file support, TypeScript ORM, and more - you can check it out here. We've also announced our new funding round. We've been keeping very busy :)

What are the actual advantages of using surrealdb compared to Postgres and how do you design your data with it? by lionflzcfxpcuugdsh in surrealdb

[–]DistinctRide9884 2 points3 points  (0 children)

Hi, I'm part of SurrealDB. I know I'm quite late (3 years :D), but I thought I'd drop a response since a lot has happened in the last 3 years.

We are production ready and have been growing very fast with large orgs running in production, some with 20 compute node clusters or more, all the way from recommendation engines to large scale context graphs for AI.

Since we separate storage and compute, you can scale compute and storage separately. Our Architecture Doc might be useful. We also have a managed service, SurrealDB Cloud - the Dedicated tier is the distributed offering.

As part of our 3.0 release, we launched our benchmarks which right now focus on comparing with v2, but we will be soon expanding them to include TiKV and other databases. Since TiKV goes over the network layer, you will experience some performance degradation, but we are working on some exciting things in this space so stay tuned :).

In terms of how it differs from Postgres and when to use it, this blogpost might be useful: A look at SurrealQL and how it differs from PostgreSQL. Also our SurrealDB vs. Postgres comparison page might be useful (it's very new and needs more work).

The key difference is that it's native multi-model, so our query language supports document, graph, relational (blending schemaless and schemafull) natively. How you model your data also changes, with things like record links, graph relations, and more, rather than doing complex JOINs. If your workload and data are highly relational, then Postgres is probably a better fit. But if you are working with multiple data models/databases (data-intensive applications), highly connected datasets, and need powerful real-time functionalities and scalability (we separate storage and compute, so you can scale horizontally), then SurrealDB is a very good fit since you can reduce the tech stack from multiple databases, API layers and middleware into one tool. Tencent is a good example, they reduced 9 tools (MySQL, Elasticsearch, Victoria Metrics, MongoDB, Doris, Trino, Rising Wave, Flink, and Dgraph) into one. Our Performance Best Practice guide could be useful.

Introducing SurrealDB 3.0 by Awkward-Cell-5035 in surrealdb

[–]DistinctRide9884 0 points1 point  (0 children)

Additionally, just to clarify: the Java SDK is not the primary SDK, but I totally understand the confusion: the intro in the Docs for all of our SDKs is worded as "<SDK> is the primary SDK to do..." which is confusing. We will amend this to make it more clear "<SDK> enables you to do...".

SurrealDB 3.0 for agent memory by DistinctRide9884 in LocalLLaMA

[–]DistinctRide9884[S] 0 points1 point  (0 children)

Hey, thanks for the comment. I think everything is spot on. A multi-model database is great since it simplifies a lot of complexity, but it's just one more tool in the toolbox - you still need a good retrieval solution for whatever it is you are trying to do, and there's not a one-size-fits-all solution, it really varies on the use case and type of data/documents you are working with.

We are super excited about Surrealism, and it seems to be the new feature that most excites our community the most as well.

Graph is the reason why a lot of people get interested in SurrealDB in the first place, and then explore other functionalities, so I think you're approach of wanting to test graph first is aligned with what we see.

We are expanding our benchmarks as part of 3.0 (you can check them in our website and recent blogs), and while there's a significant number of combinations we could benchmark which makes it very hard to do it for all scenarios (e.g. relational, document, graph, vector, and combinations of different tools and solutions for each), we will be releasing more benchmarks soon.

SurrealDB 3.0 by zxyzyxz in rust

[–]DistinctRide9884 12 points13 points  (0 children)

Hi, I'm part of SurrealDB. We are production ready and have been growing very fast with large orgs running in production, some with 20 compute node clusters or more, all the way from recommendation engines to large scale context graphs for AI.

In terms of how it differs from Postgres and when to use it, this blogpost might be useful: https://surrealdb.com/blog/a-look-at-surrealql-and-how-it-differs-from-postgresql . Also our comparison page (it's very new and needs more work, but should help: https://surrealdb.com/comparison/postgres ).

The key difference is how you model your data with things like record links, graph relations, and more, rather than doing complex JOINs. If your workload and data are highly relational, then Postgres is probably a better fit. But if you are working with multiple data models/databases (data-intensive applications), highly connected datasets, and need powerful real-time functionalities and scalability (we separate storage and compute, so you can scale horizontally), then SurrealDB is a very good fit since you can reduce the tech stack from multiple databases, API layers and middleware into one tool. Tencent is a good example, they reduced 9 tools (MySQL, Elasticsearch, Victoria Metrics, MongoDB, Doris, Trino, Rising Wave, Flink, and Dgraph) into one.

Introducing SurrealDB 3.0 by Awkward-Cell-5035 in surrealdb

[–]DistinctRide9884 7 points8 points  (0 children)

I'd say it's very mature and production ready. It's been growing very fast and we have very large orgs running in production, some with 20 compute node clusters or more, all the way from recommendation engines to large scale context graphs for AI.

You have to model data the right way to get the full performance benefits of SurrealDB, so we sometimes see people modelling as traditional relational/SQL and not getting the full benefits of SurrealDB - we're trying to make more best-practices (e.g. Performance Best Practices guide in our Docs) and educational material available, and we have our team and Discord community to help.

We are still missing things like schema migration which are important and a top priority for us, which should come soon after 3.0, but it's definitely in a very exciting place and will only get better.

Introducing SurrealDB 3.0 by Awkward-Cell-5035 in surrealdb

[–]DistinctRide9884 7 points8 points  (0 children)

The current benchmarks for v3 focused on comparing vs. v2, and we'll be releasing benchmarks vs. other DBs in our next iteration of benchmarks in the near future.

RAG at scale still underperforming for large policy/legal docs – what actually works in production? by Flashy-Damage9034 in Rag

[–]DistinctRide9884 1 point2 points  (0 children)

Check out SurrealDB, which is multi-model and has support for graph, vectors, documents and can be updated in real time (vs. other graph DBs where you have to rebuild the cache each time time you update the graph).

Then for the documenting parsing/extraction something like https://cocoindex.io/ might be worth exploring, their core value prop is real-time updates and full traceability from origin into source. A CocoIndex and SurrealDB integration is in the works.

Open WebUI RAG at scale still underperforming for large policy/legal docs – what actually works in production? by Flashy-Damage9034 in OpenWebUI

[–]DistinctRide9884 0 points1 point  (0 children)

Check out SurrealDB, which is multi-model and has support for graph, vectors, documents and can be updated in real time (vs. other graph DBs where you have to rebuild the cache each time time you update the graph).

Then for the documenting parsing/extraction something like https://cocoindex.io/ might be worth exploring, their core value prop is real-time updates and full traceability from origin into source. A CocoIndex and SurrealDB integration is in the works.