mimir
rio
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
mimir
-
Meilisearch Expands Search Power with Arroy's Filtered Disk ANN
One of our top oss contributors is developing mimir as an embedded Meilisearch: https://github.com/GregoryConrad/mimir/tree/main/packages/mi...
-
Announcing mimir: brand new NoSQL database with typo-tolerant full-text search!
I'm excited to announce the first stable release of mimir, a brand new Dart & Flutter NoSQL database!
-
All local database options for Flutter
Hey! I’m the author of Mimir (https://pub.dev/packages/mimir). I think it could deserve a spot on there 🙂!
-
Rust lib for mobile (iOS, android)
I can’t help you with the gradle part. You’ll have to look up how to import AAR from local file system. I got it working with an ivy repo like this https://github.com/GregoryConrad/mimir/pull/89/files
-
Officially releasing the Cloud offering of Meilisearch - the most popular Rust search engine
I'm guessing you grabbed that milli_v1 part from mimir; if so, glad someone found it useful! :)
- Production grade databases in Rust
-
Which tech stack for full text searches?
If you’re looking for an on-device database, Mimir can do all of those (minus geo-queries, but those can be easily added because the support needed for them is already there). https://pub.dev/packages/mimir (disclosure: I’m the author)
- Underrated Flutter Packages You Should Check Out
-
Best offline searching package?
Take a look at mimir! It is a database that will do exactly want you want.
-
Any gotchas in using Isar database?
If you are looking for full-text search for your data (e.g., for a search bar in your app), I would recommend taking a look at mimir! Isar offers decent full-text search, but it is not typo-tolerant. mimir has typo-tolerant full-text search with 0 configuration necessary; simply add documents and search just works!
rio
-
Production grade databases in Rust
Also, not to be too bad about a reputation fallacy, but I found the author to be flippant and disrespectful when good-faith unsoundness was pointed out in his crates: https://github.com/spacejam/rio/issues/30
-
Linear Types One-Pager
In my previous post on linear types I spent quite a bit of time motivating linear types. For example the ergonomic rio io_uring library could be made sound if it could guarantee destructors are run. Or performing FFI with async C++ could be made more efficient if it could rely directly on destructors rather than having to involve an intermediate runtime for each call.
-
The Stigma Around Unsafe
It's like cargo should have a way to mark a dependency as unsafe. That way, you could have a safe mmap crate as an unsafe dependency. Or something like rio which is deliberately unsound (but is fine if you abide by its rules through the entirety of the program)
-
Anyone using io_uring?
for completeness there is also rio, but:
-
Comparing the Rust uring libraries (tokio-uring, glommio, rio, ringbahn)
rio still has known soundness issues– its Completion futures block the thread when dropped (!!!), and can allow for use-after-free bugs if leaked. See https://github.com/spacejam/rio/issues/30 for details.
-
kbio - Another Async IO Framework based on io_uring
Here are some posts about the design. https://without.boats/blog/io-uring/ https://github.com/spacejam/rio/issues/30 https://github.com/axboe/liburing/issues/109
-
Tokio, the async runtime for Rust, hits 1.0
The author of sled[1], an embedded database in Rust which has a number of promising features, has also written parts of rio[2], an underlying pure Rust io_uring library, which is intended to become the core write path for sled. rio has support for files but also has a demo for TCP (on Linux 5.5 and later) and O_DIRECT.
I tested rio recently as I had a Brilliant but Bad Idea™ involving file access and was pleasantly surprised by the API, as I have been with sled's.
I'm excited for the experimentation in the Rust ecosystem and for such low level crates to handle the complex io_uring tasks (relatively) safely!
[1]: https://github.com/spacejam/sled
[2]: https://github.com/spacejam/rio
What are some alternatives?
influxdb_iox - Pronounced (influxdb eye-ox), short for iron oxide. This is the new core of InfluxDB written in Rust on top of Apache Arrow.
io_uring-echo-server - io_uring echo server
application-services - Firefox Application Services
smol - A small and fast async runtime for Rust
ioc_container - A simple, fast IoC Container for Dart and Flutter. Use it for dependency injection or as a service locator. It has scoped, singleton, transient and async support
KuiBaDB - Another OLAP database
isar - Extremely fast, easy to use, and fully async NoSQL database for Flutter
cachegrand - cachegrand - a modern data ingestion, processing and serving platform built for today's hardware
objectbox-dart - Flutter database for super-fast Dart object persistence
fio - Flexible I/O Tester
sled - the champagne of beta embedded databases
kbio - Another Async IO Framework based on io_uring