Текущий подход и задача:
В настоящее время я пытаюсь отобразить этот продукт -кремсон в Opensearch As Fieldpe.object. Чтобы обработать преобразование от JSONNODE в внутреннее представление объекта OpenSearch (особенно с учетом нюансов того, как Spring Data ElasticSearch взаимодействует со вложенными структурами JSON и переменным характером Schema.org/product Data), я реализовал пользовательский конвертер, который я назову ProductshemajsonConverter для Clarity. ProductschemajsonConverter не последовательно работает для всех входящих сообщений kafka . Некоторые Productschemajson Полезное индекс успешно, в то время как другие терпят неудачу в процессе преобразования или индексации, что приводит к разочаровывающим несоответствиям данных в моем индексе OpenSearch. Это указывает на хрупкость в текущем подходе FieldType.object в сочетании с моим пользовательским преобразователем, вероятно, из -за внутренней изменчивости и сложности схемы. Productschemajson . Вместо этого я запрошу другие конкретные поля высшего уровня, которые я извлекаю из данных продукта (например, идентификаторы типа продукта, спортивные идентификаторы, локали, SKU-код). Само поле продуктов ProductsChemajson должно быть возвращено только в виде полной капли JSON в рамках результатов поиска , сохраняя свою первоначальную структуру. Мне не нужно выполнять какие -либо агрегации, фильтры или специфические поиски в полевых условиях в Productschemajson, используя запрос OpenSearch DSL. Документы), которые должны храниться только и возвращать как из-за Opensearch, и с учетом текущей ненадежности моего подхода FieldType.object и ProductsChemajsonConverter , какова лучшая практика для сопоставления этого поля в OpenSearch:
Код: Выделить всё
FieldType.KeywordКод: Выделить всё
FieldType.ObjectИндексирование. Productschemajson? Подходы, какова типичная сложность, связанная с написанием и поддержанием необходимых пользовательских преобразователей для Spring Data Elasticsearch для обработки полей jsonNode для написания (индексация) и чтения (поиск)? данные. Любой подход делает этот процесс повторного индексации по своей природе проще или более сложным?>
Подробнее здесь: https://stackoverflow.com/questions/796 ... mizing-for