2 ms·
What I was aiming for originally beyond speed, was a simple API and an intuitive query language (https://oss.redislabs.com/redisearch/Query_Syntax/ https://oss.
by dvirsky 6y ago
What I was aiming for originally beyond speed, was a simple API and an intuitive query language (https://oss.redislabs.com/redisearch/Query_Syntax/ https://oss.redislabs.com/redisearch/Query_Syntax/) that scales from simple textual queries to structured queries, and a big emphasis on real time incremental indexing as the core features. There is no batch vs. incremental indexing - you feed it a document and it's searchable immediately, which I thought was very important for an in memory database (it comes at the cost of avoiding some nifty index compression techniques, the compression is pretty straightforward).
But TBH it started as a demo dogfooding project for the redis module system - something to demonstrate how powerful the API is, and at the same time test it, find bugs and design problems with it, and gather real developer asks. It became the reference project for the modules API and a lot of the module system's features were designed to accommodate it (most notably async execution of slow commands).
But then a few people started using it (which all of the sudden gave redsiearch itself user asks and testing and all that), requesting features and being happy with it when these features got implemented, and it slowly started to be a thing, with people even contributing code. Then we wrote the distributed version requested by enterprise users, and it became a product, which is now developed by a team. I left it a bit over two years ago.