We’ve used Meilisearch in production and it is the closest thing to self hosted Algolia you can get, which in itself is pretty amazing.<p>Unfortunately the performance of indexing (constantly changing records) wasn’t great and Meilisearch would fall behind on indexing records for hours.<p>Meilisearch has been amazingly great for projects where records don’t change all that much (eg docs, or even a customer database), but if you have for example a fast paced ecommerce system with 50k records constantly changing (eg product inventory), it falls over pretty quick. We had to transition over to Elastic for this aspect of our app.<p>The other issue we faced is their Rails gems falling out of step with the server, and when fixes came out, the Rails gem was incompatible for a while.<p>I really really hope 1.0 increases performance to the point where it becomes production ready, because the initial out of the box performance (before getting bogged down with indexing) was pretty amazing. Better than Elastic and on par with Algolia.<p>I recommend keeping Meilisearch on your radar. It is going to be great.<p>I wish the best for the Meili team and hope they succeed!
Congrats to the team, it's been interesting to watch the development of Meilisearch (and it's close competitor Typesense). Algolia has really paved the way here but it's nice to see the open-source options with more configurations and better default UX.<p>There's also many search libraries if you want to embed search more deeply into your app. I have a list of modern search systems and libraries here: <a href="https://manigandham.com/post/search-systems-libraries" rel="nofollow">https://manigandham.com/post/search-systems-libraries</a>
We’ve been using a Meilisearch for the last six months or so and have been delighted with its performance and usability. It uses a fraction of the resources as Elasticsearch, and the language support is extensive and very active.<p>That being said, our cluster is much smaller than other ones I’ve worked with in the past, so I can’t comment on its reliability at massive scale. I’ve also been very impressed with how active contributors are on GitHub and in their Discord. Everyone seems like good people, and it’s a project I’m excited to keep using.
Great news!<p>Been following along for a while and it's a great project. ElasticSearch needs some competition.<p>For us, there are two things missing for us before we could make the switch:<p>1. Multi-index search; Standard use-case is searching across e.g. users and companies. Common in many SaaS-applications, where you want a single search field with type-ahead for e.g. contacts/organisations/tasks/events.<p>2. Decay functions; Basically to gradually phase out results for things based on age, distance or something similar. ElasticSearch has pretty good support for these. <a href="https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-function-score-query.html#function-decay" rel="nofollow">https://www.elastic.co/guide/en/elasticsearch/reference/curr...</a>
Is Rust that important that you have to place "built in Rust" in the title? Is this like a cult following that we only bet on traffic and interest coming from other evangelists where Rust is the only feature that matter?<p>4 months ago: " Meilisearch, open-source alternative to Algolia in Rust lands a $15M Series A"<p>It's not the first time I see, there are at least 2-3 daily submissions reaching the FP in this manner so I'm curious: "built in Rust" = marketing these days?
My team tried to use Meilisearch for large datasets, unfortunately, it's impossible to plan the RAM usage. If you have very little searches, it consumed very little, but if you have a lot of search traffic, it may consume more than we could provision beforehand. This made it too unpredictable and too expensive, so we went with Manticore instead. I don't know if this has been addressed in 1.0, hopefully it has.
Thank you for making MeiliSearch. I use it for a personal project that gets a few hits a day, mostly from me and my friends.<p><a href="https://pulpflakes.com/fmisearch/" rel="nofollow">https://pulpflakes.com/fmisearch/</a><p>It's a search over an index of fiction in the English language, first published in periodicals. Searchable by author, artist, magazine name and specific issue. Biggest index has about 200K documents, doc sizes are tiny.<p>Integrated with my WordPress site by handwritten PHP. Which was fun.<p>Performance is great. I didn't run into too many issues, and those I did i could resolve. What i remember:<p>1. The rules for text searches are too strict by default and if the order of words is different, will result in no matches. A, B will not return a result if B A is in the database.<p>2. Creating an index, uploading documents and changing settings required quite a bit of work. A week's worth of coding, almost. Would have loved to have a reasonably robust shell script that could take a JSON file with metadata on index and do the grunt work.<p>3. I have multiple types of documents, would have liked search to cover all of them so I don't have to change search type manually each time.<p>4. The default number of documents and max uploaded file size is too low. 200K and 200 MB or something. But it fails even on smaller file size.<p>The above sound like complaints. They're problems I ran into and others might. I love how productive Meilisearch made me. Thank you.
The most specific criticism I have read of Meilisearch is <a href="https://news.ycombinator.com/item?id=32940683" rel="nofollow">https://news.ycombinator.com/item?id=32940683</a>. It has four points: (1) words beyond 65535 are silently ignored (this is documented in <a href="https://docs.meilisearch.com/learn/advanced/known_limitations.html#maximum-number-of-words-per-attribute" rel="nofollow">https://docs.meilisearch.com/learn/advanced/known_limitation...</a> ); (2) the position of a matching word in a document non-optionally affects ranking; (3) to get the match information you must retrieve the entire attribute; (4) the meaning of PUT and POST is switched relative to RFC 7231.<p>Are points (2) through (4) true? Has any of the points been an issue for you in practice?
This is awesome news! We've been using meilisearch in production for a few months now and we're more than happy with its reliability. Their work of the last few months really paid off, as the search speed and especially the indexing speed has increased a lot thanks to their efforts.<p>I'm excited to see all the things they'll build in the future.
This looks really cool and I might try the self hosted option out on my small website as an upgrade from Postgres’ full text search.<p>I was hoping the cloud version would be more appealing, granted there seems to be a generous free tier but the next option is $1200 a month?!
Is there a way to run it in WASM, to get something like Lunr[1]? We prefer to do our (small-index, <2MB) search client-side for a bunch of reasons, currently using Lunr.js, but it's a bit annoying and the typeahead search is something I improvised and not really official.<p>[1] <a href="https://lunrjs.com/" rel="nofollow">https://lunrjs.com/</a>
I am using the core (called "Milli") in a local indexer that I run on my repositories and Obsidian files. It works like a charm and I am very happy with it. Obviously that's a use case with very little traffic but just indexing my repositories folder is quite a bit of work and it does it surprisingly fast.<p>The only real thing I am missing is a typeahead feature.
Congrats! Question for the team as I see a possible discrepancy on the website.<p>The "Comparisons" page says there is no limit for number of indices (<a href="https://docs.meilisearch.com/learn/what_is_meilisearch/comparison_to_alternatives.html#limits" rel="nofollow">https://docs.meilisearch.com/learn/what_is_meilisearch/compa...</a>)<p>However, the "Limitations" page says there is a limit of ~180 indices (<a href="https://docs.meilisearch.com/learn/what_is_meilisearch/comparison_to_alternatives.html#limits" rel="nofollow">https://docs.meilisearch.com/learn/what_is_meilisearch/compa...</a>)<p>Can you clarify what, if any, are the limitations of # indices?
You can query Meilisearch directly from ClickHouse with the integrated table function: <a href="https://github.com/ClickHouse/ClickHouse/pull/33332">https://github.com/ClickHouse/ClickHouse/pull/33332</a><p>This feature was a student project, and I'm not sure if it will find its usage.
If you are using Meilisearch with ClickHouse, or if you think this feature is worth something, please let me know.
This looks like an effective piece for a project I have. It would be significantly more effective if it was published on crates.io and could be instantiated within Rust, and was able to operate in memory (or have a filesystem passed to it, so that can be simulated)<p>I found this issue which tracks crates.io publication: <a href="https://github.com/meilisearch/meilisearch/issues/3367">https://github.com/meilisearch/meilisearch/issues/3367</a><p>Would be nice to see that made a priority. Having a powerful search engine that can be embedded in a larger application and made portable (like being able to deploy to WASM) would be extremely novel and valuable. Given Rust is already in use, I think it may not necessarily demand too much effort. When search becomes a focus for what I’m working on, perhaps I will make that happen if not already done yet.<p>Thanks for making this available to people.
I tried RTFM'ing, but can Meilisearch handle restricted documents (P&C) and integrated with LDAP/AD to pull security groups?<p>P.S. great to see your documentation search is powered by your own product (!)
I see comparison against other search engines, but how does it compare to RDBMS full text search e.g. Postgre's? I know it's not apple-to-apple, but most people start with RDMBS.
They need to structure their pricing page better. A quick glance had me thinking that $1200 was the minimum for production use. But the free tier is actually pay as you go.
How does Meilisearch compare to ElasticSearch from an operational point of view? I've experienced ElasticSearch to be quite painful to maintain, requiring lots of manual tweaking to balance shards and careful design of indices.
I think multi-lingual stemming is the point where I see this as a real ES competitor. Still they've come a long way, and burning too much RAM on ES is not the way fwd either.