53 вопроса по ElasticSearch с технических собеседований
53 вопроса1634 компании353 технологии
Что проверяют на интервью
Как устроена подборка
На странице собраны вопросы по ElasticSearch — от проверки базовых принципов до практического применения и архитектурных решений. В подборке чаще встречаются темы: elasticsearch, database, sql.
Уточните свой реальный уровень работы с Elasticsearch: поиск, схемы полей, анализаторы, индексация, диагностика или эксплуатация. Эти области нельзя свести к одному «знаком».
Elasticsearch выбирают, когда нужны полнотекстовый поиск, анализ языка, релевантность и распределённая выдача. Основа — Lucene и инвертированный индекс, сопоставляющий термы документам.
Redis использует RESP, MongoDB — собственный бинарный wire protocol с BSON, Elasticsearch для клиентского API обычно использует HTTP(S) и JSON. Это прикладные протоколы, а не разновидности TCP.
Да: качество зависит от анализаторов и mapping, а сложность запросов, число результатов и агрегации ограничены ресурсами и настройками. Полнотекстовый поиск не равен пониманию смысла любого текста.
Приведите реальный инцидент и различите нехватку клиентских соединений, перегрузку поиска, индексации и памяти кластера. По одному timeout нельзя определить причину.
Расскажите, для какой задачи использовали Elasticsearch, как данные попадали в индекс и какие вопросы поиска, актуальности или эксплуатации вы решали лично.
Ответьте по реальному опыту и не называйте любой рост памяти утечкой. У Elasticsearch есть heap, кеши, off-heap память и файловый кеш ОС; их поведение различается.
Добавьте поле в структурированный лог приложения либо на этапе обработки события перед Elasticsearch. Для контекста запроса часто используют MDC и JSON-encoder.
Опишите, что было источником истины, как удаляли старый документ и индексировали новый, а также как обрабатывали повторы и задержки. Не приписывайте системе мгновенную согласованность.
Разделение горячих и холодных данных может уменьшить рабочий набор, но не является прямой заменой полнотекстового поиска. Сначала сравните решаемые проблемы.
Расскажите, какая именно проблема поиска была измерена, почему отдельный поисковый компонент помог и как синхронизировались данные с основной системой.