Это потенциально очень долгое обсуждение различий между Splunk, который стремится индексировать временные ряды, сгенерированные машиной данные, и Lucene, который изначально был предназначен для индексации сгенерированных человеком текстовых документов. Мы можем начать с ваших вопросов.
Splunk не имеет понятия о стоп-словах. По умолчанию Splunk индексирует все ключевые слова, найденные в событиях, как определено правилами сегментации.
Splunk обеспечивает поиск по шаблону и поиску по фразе, но индекс не обеспечивает поиск по собственной близости или поиск по регулярному выражению. Для этого мы полагаемся на последующие команды в конвейере обработки поиска.
Splunk активно сжимает необработанные данные, которые мы храним, и мы тратим много усилий на то, чтобы сделать индексы как можно меньше, с помощью явного сжатия и других структур данных с небольшим объемом. Как правило, можно ожидать, что исходные данные будут составлять 10% от размера исходных данных, а индексы - 20-40% от размера исходных данных, в зависимости от энтропии. Вместе Splunk обычно требует 30-50% размера исходных необработанных данных в качестве хранилища.
Сам индекс не обеспечивает поддержку синонимов, поскольку это принципиально проблема для человеческого текста. Однако мы предоставляем аналогичную концепцию в типах событий, которые могут использоваться для представления значимых классов запросов, включая синонимы.