Как я могу оптимизировать данный запрос для обновления атрибутов в поисковом индексе Elasti c? - PullRequest
0 голосов
/ 15 апреля 2020

Я написал следующий запрос в Elasticsearch, который обновляет атрибуты на основе file.filename. Это займет около 6 секунд. на запись в общей сложности 590 таких записей. Интересно, есть ли лучший способ оптимизировать его для гораздо большей громкости. Запрос приведен ниже:

            $results = $e->update_by_query(
            index => $index_name,
            body  => {
                    query => {
                    match_phrase => {
                            "file.filename" => $filename
                            }
                    },
                    script => {
                            source => "ctx._source.dbattrs = params.value",
                            params => {
                                    value => {
                                    creation_datetime => $creation_dt,
                                    edi_name => $val->{edi_name},
                                    status => $val->{status},
                                    ic_number => $val->{ic_number},
                                    comment => $val->{comment},
                                    version_id => $val->{version_id},
                                    actions => $val->{actions},
                                    edi_partner => $val->{edi_partner},
                                    document_id => $val->{document_id},
                                    document_uuid => $val->{document_uuid},
                                    document_name => $val->{document_name}
                                    }
                            }
                    }
            }
    );

Индекс может иметь миллионы записей в ближайшие дни. Мне нужно оптимизировать его, чтобы сократить общее время процесса обновления.

Спасибо.

...