<< Click to Display Table of Contents >> Администрирование (Linux) > Общесистемные настройки > Настройка полнотекстового поиска Настройка индексов Elasticsearch |
Поисковая система Elasticsearch работает на основе свободно распространяемой библиотеки Apache Lucene. Индекс Elasticsearch содержит один или несколько экземпляров индекса Lucene.
Экземпляр индекса Lucene называется shard. Подробнее см. в документации Elasticsearch статью Terminology. Количество экземпляров влияет на быстродействие полнотекстового поиска и задается в параметре Elasticsearch number_of_shards. При этом недостаточное или слишком большое его значение может замедлить поиск.
Рекомендуемый размер индекса Lucene – 30 ГБ. Размер документа при индексировании уменьшается минимум в 3 раза. Поэтому один индекс Lucene используется для индексирования документов с суммарным размером 90 ГБ (30 ГБ х 3). Это значение с запасом. Текстовый слой может занимать значительно меньший объем, например, если индексируются документы с большим количеством изображений.
Если суммарный размер документов, хранящихся в Directum RX, превышает 90 ГБ, необходимо увеличить значение параметра number_of_shards. Для этого откройте файл DirectumLauncher/etc/_builds/Platform/IndexingService/InitialIndexing/InitialIndexing.tar.gz/Content/document_template.json и измените значение параметра number_of_shards. Значение по умолчанию 1.
Рекомендуемое значение number_of_shards вычисляется по формуле: <суммарный размер документов в гигабайтах>/90. Например, если суммарный размер документов составляет 250 Гб, то значение вычисляется как 250/90=2,78. В параметре хранится только целое значение, поэтому нужно указать 3.
ПРИМЕЧАНИЕ. При выборе значения параметра number_of_shards и необходимого объема дискового пространства учитывайте планируемый прирост количества документов.
Для задач, заданий и уведомлений параметр number_of_shards задается в файле DirectumLauncher/etc/_builds/Platform/IndexingService/InitialIndexing/InitialIndexing.tar.gz/Content/workflow_template.json. Значение по умолчанию 1 подходит для большинства систем. В высоконагруженных системах может потребоваться увеличить его. В этом случае значение параметра определяется индивидуально.
Допустимое дисковое пространство для работы сервиса
По умолчанию сервис Elasticsearch работает, пока на диске используется не более 85% пространства. Если занято больше дискового пространства, сервис останавливается. Поэтому рекомендуется отслеживать заполнение дисков. Кроме того, администратор может изменить ограничения в конфигурационном файле Elasticsearch с помощью параметров:
•cluster.routing.allocation.disk.watermark.low – объем дискового пространства, при достижении которого сервис Elasticsearch останавливает работу;
•cluster.routing.allocation.disk.watermark.high – объем дискового пространства, при достижении которого экземпляр индекса перенаправляется на другой узел Elasticsearch.
Значения параметров задаются в процентах или в абсолютных значениях, например 90% или 100gb. Подробнее см. в документации Elasticsearch статью Cluster-level shard allocation and routing settingsedit.
© Компания Directum, 2024 |