Company
Date Published
Author
Julien Lemoine
Word count
847
Language
English
Hacker News points
None

Summary

At Algolia, the company has implemented its own search engine from scratch instead of building upon an existing open-source engine due to various reasons. One of these reasons is to solve the problem of indexing impacting search performance, which occurs because indexing and search share critical resources such as CPU and Disk. The company's approach involves dividing indexing and search into different application processes with different scheduling priorities, prioritizing search queries over indexing, and slowing down indexing during spikes in search queries. Additionally, Algolia uses custom kernel I/O scheduler settings to assign different priorities to read and write operations, aiming to minimize contention for finite disk resources by keeping data in memory and syncing it on high-end SSDs and multiple servers for high availability. By solving this problem, Algolia aims to remove pains associated with building a great search feature and provide speed and reliability to its customers.