MeiliSearch/crates/meilisearch
meili-bors[bot] 19e6f675b3
Merge #4900
4900: Indexer edition 2024 r=Kerollmops a=dureuill

This PR is implementing the indexer edition 2024, largely inspired by [the ideas from this blog post](https://blog.kerollmops.com/meilisearch-is-too-slow).

Fixes https://github.com/meilisearch/meilisearch/issues/4985

## Features
- Stream-first approach to reading documents.
- Minimum disk write operations.
- RAM usage-first approach to avoid modifying common bitmaps on disk but in memory.
- Reduced LMDB fragmentation by writing entries only once...
- ...computing the final version of the entries in parallel...
- ...and storing them in write-optimized data structures before sending them to the BTree (LMDB).
- Indexing in multiple transactions to improve large dataset support (dumps).


Co-authored-by: ManyTheFish <many@meilisearch.com>
Co-authored-by: Clément Renault <clement@meilisearch.com>
Co-authored-by: Louis Dureuil <louis@meilisearch.com>
2024-11-21 16:19:10 +00:00
..
src Merge branch 'main' into indexer-edition-2024 2024-11-20 16:59:58 +01:00
tests Merge #4900 2024-11-21 16:19:10 +00:00
build.rs Move crates under a sub folder to clean up the code 2024-10-21 08:18:43 +02:00
Cargo.toml Merge branch 'main' into indexer-edition-2024 2024-11-06 15:19:18 +01:00