как перенести данные в эластик через logstast и с помощью анализатора? - PullRequest
0 голосов
/ 30 августа 2018

У меня есть файл конфигурации logstash ниже. Elastic читает мои данные как a b, где, как я хочу, чтобы они читались как ab, я обнаружил, что мне нужно использовать not_analyzed для моих sscat поданных и max_shingle_size, min_shingle_size для продуктов, чтобы получить лучший результат.

Должен ли я использовать not_analyzed также для поля продуктов? Это даст лучший результат?

Как мне заполнить my_id_analyzer, чтобы фактически использовать анализатор в разных полях?

Как мне подключить шаблон к файлу конфигурации logstash?

input{
    file{
    path => "path"
    start_position =>"beginning"

    }
}
filter{
    csv{
    separator => ","
    columns => ["Index", "Category", "Scat", "Sscat", "Products", "Measure", "Price", "Description", "Gst"]
    }
    mutate{convert => ["Index", "float"] }
    mutate{convert => ["Price", "float"] }
    mutate{convert => ["Gst", "float"] }

}
output{
    elasticsearch{
        hosts => "host"
        user => "elastic"
        password => "pass"
        index => "masterdb"
        }

}

У меня также есть шаблон, который может сделать это для всех будущих файлов, которые я загружаю

curl user:pass host:"host" /_template/logstash-id -XPUT -d '{
    "template": "logstash-*",
    "settings" : {
        "analysis": {
            "analyzer": {
                "my_id_analyzer"{

                }
                }
            }
        }
    },
    "mappings": {
             "properties" : {
                "id" : { "type" : "string", "analyzer" : "my_id_analyzer" }
            }
        }

    }'

1 Ответ

0 голосов
/ 31 августа 2018

Вы можете использовать " ignore_above: " для ограничения максимальной длины вместе с " not_analyzed " при создании отображения, чтобы текст не анализировался. Объявление типа как ключевое слово вместо текст будет другой альтернативой для вас. Что касается шаблона подключения с logstash, зачем вам это? После того, как у вас есть шаблон, созданный наasticsearch, вы можете создать свой индекс, который будет следовать определению созданного шаблона, и вы можете начать индексирование.

...