В настоящее время я выполняю текстовый поиск в SQL Server, который становится узким местом, и я хотел бы переместить вещи в Elasticsearch по очевидным причинам, однако я знаю, что мне нужно денормализовать данные для лучшей производительности и масштабируемости.
В настоящее время мой текстовый поиск включает в себя некоторую агрегацию и объединение нескольких таблиц для получения окончательного результата. Таблицы, которые объединяются, не такие большие (до 20 ГБ на таблицу), но изменяются (вставляются, обновляются, удаляются) нерегулярно (две из них раз в неделю, другая по требованию x
раз в день).
Мой план состоял бы в том, чтобы использовать Apache Kafka вместе с Kafka Connect, чтобы читать CDC с моего SQL Server, присоединять эти данные в Kafka и сохранять их в Elasticsearch, однако я не могу найти никакого материала, рассказывающего мне, как будут обрабатываться удаления во время обработки данных. сохранился в Elasticsearch.
Это даже поддерживается драйвером по умолчанию? Если нет, каковы возможности? Apache Spark, Logstash?