1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/dromara-easy-es

11.03.2025 01:10
GitLife Service Account

v0.9.50

  1. Изменение аннотаций @TableName -> @IndexName, @TableId -> @IndexId, @TableField -> @IndexField
  2. Добавление функциональности для указания токенизатора для полей типа keyword_text
  3. Устранение ошибки, при которой geoShape не может быть получен по shapeId
  4. Запуск новой версии официального сайта
Последнее сообщение коммита: v0.9.50
11.03.2025 01:10
GitLife Service Account

v0.9.40

  1. Добавлена возможность установки параметра fragmentSize в режиме выборки
  2. Экстренно исправлено одно недоразумение, возникшее из-за рефакторинга метода selectOne
Последнее сообщение коммита: update docs/en/highlight.md.
11.03.2025 01:10
GitLife Service Account

Версия 0.9.30
Новые возможности:
Полностью поддерживаются функции типа "родитель-ребёнок", новые возможности включают:

  1. Добавлена поддержка автоматического управления и ручного API-интерфейса для типов "родитель-ребёнок".
  2. Добавлены различные операции CRUD с выделением, аннотациями, стратегиями и другими функциями для документов типа "родитель-ребёнок".
  3. В режиме ручного управления при создании нового API через сущность и её аннотации можно легко создать индекс, что аналогично автоматическому управлению — режиму "спортивному".
  4. Добавлен новый интерфейс для получения подробной информации об индексе (ранее был доступен только интерфейс проверки существования индекса).
  5. Добавлена возможность указывать индекс-токенизатор для вложенных типов.
  6. Добавлена возможность указывать вес поля при создании индекса в режиме ручного управления.
  7. Поддержана ситуация, когда одно поле является одновременно text и keyword.
  8. Добавлены утилиты с примерами использования, чтобы упростить передачу условий запроса от фронтенда.Изменения проекта:
  9. Изменены groupId Maven центрального репозитория с io.github.xpc1024 на cn.easy-es начиная с версии 0.9.30. Уже выпущенные версии остаются нетронутыми.
  10. Все пакеты переименованы с com.xpc на cn.easy-es.
  11. Добавлены подмодули common, annotation, test, а также перестроена структура проекта для снижения связывания модулей, повышения читаемости и удобства обслуживания.Улучшения опыта:
  12. Область применения конфигурации enableMust2filter расширена до полной поддержки всех типов запросов, таких как in, notIn, between.
  13. Упрощено использование функции выделения, хотя это приводит к более грубой настройке, все запросы теперь возвращают выделенные поля.
  14. Для плавного управления автоматическим индексом добавлена функция "убрать за собой", которая автоматически очистит неудачно мигрировший индекс и возможные проблемы.
  15. Выбор токенизатора теперь осуществляется с помощью строки вместо перечисления, что позволяет использовать больше неизвестных токенизаторов.

Оптимизация производительности:
Добавлено фильтрование полей запроса для методов обновления, удаления и получения общего количества записей, что позволяет экономить большое количество памяти.Исправление ошибок:

  1. Исправлена проблема двукратного повторного упаковывания параметров multiMatchQuery. Добавлена поддержка автоматического хостинга индексов типа родитель-потомок и ведение ручной API-поддержки.
  2. Добавлены различные варианты CRUD-операций, аннотаций, стратегий и т.д. для родительских и дочерних документов.
  3. В режиме ручного управления индексами новая API может создать индекс через сущности и информацию об аннотациях одним щелчком мыши. Функционал такой же как в автоматическом режиме управления, но метод триггера ручной.
  4. Добавлен интерфейс для получения деталей индекса (ранее предоставлялся только интерфейс для проверки существования индекса).
  5. Добавлена возможность указывать функцию токенизатора индекса для вложенных документов типов.
  6. Добавлен ручной блочный API для указания значения веса при создании поля индекса.
  7. Добавлена поддержка типа, когда одно поле в индексе является одновременно текстом и ключевым словом.
  8. Предоставлены новые классы инструментов и демонстрационные примеры, которые могут использоваться для упрощения сложных сценариев, где условия запроса выбираются с фронтальных страниц.Изменения проекта:

Поскольку доменное имя easy-es.cn было зарегистрировано давно, пакетное имя проекта и координаты Maven Central Repository были соответственно скорректированы.

  1. Начиная с версии 0.9.30, группа ID в Maven Central Repository проекта была скорректирована с io.github.xpc1024 до cn.easy-es; старые выпуски не затронуты.
  2. Все пакетные названия проекта были скорректированы с com.xpc на начало с cn.easy-es.
  3. Добавлены общие, аннотационные, тестовые подмодули, и скорректирована первоначальная структура проекта для дальнейшего снижения связывания между модулями, повышения читаемости и упрощения обслуживания. Это заложило основу для будущих тестов производительности, нагрузочных тестов и т.д.Оптимизация опыта:
  4. Эффективный диапазон конфигурации enableMust2filter расширен для полной поддержки запросов типа in, notIn, between и других типов.
  5. Пороговые значения использования функции выделения за счет грубого разрешения упрощены. Все интерфейсы классов запроса будут возвращать выделенные поля, жертвуя небольшим количеством гибкости, но это более удобно использовать, а ORM-фреймворк всё ещё остаётся простым!
  6. Для автоматически управляемых индексов в режиме плавного движения предоставлена функция "удаления". После того как миграция небольшого вероятностного индекса завершилась ошибкой по различным причинам, неудачный индекс и возможная блокировка будут автоматически очищены, а исходный индекс никак не будет затронут. Очистка полная, без следов!Изменение обозначения токенизатора с перечисления на строку позволяет поддерживать больше неизвестных токенизаторов. Пользователи всё ещё могут получить значение строки токенизатора через предоставленное перечисление. Если предоставляемый токенизатор не удовлетворяет требованиям, пользователь может передать пользовательскую строку.

Оптимизация производительности:
Для обновления, удаления и запроса общего интерфейса добавлено фильтрование столбца поля запроса, что позволяет запрашивать только требуемый столбец ID, в то время как данные других столбцов не запрашиваются, что позволяет значительно сэкономить память.

Исправление ошибок:

  1. Устранена ошибка двойной упаковки параметров запроса multiMatchQuery.
Последнее сообщение коммита: Merge remote-tracking branch 'origin/feature'
11.03.2025 01:09
GitLife Service Account

версия 0.9.20
Оптимизация опыта использования:

  1. Улучшена логика генерации DSL-выражений, теперь они больше не получаются через обёртку, что снижает затраты на производительность при одном вызове генерации DSL, повышая тем самым производительность.
  2. Логика условия or() была оптимизирована для обеспечения согласованности с использованием MP, теперь нет необходимости использовать метод .or().eq().or() для обработки условий should.
  3. Политика включения параметра trackTotalHits по умолчанию установлена как активированная, чтобы избежать проблем получения общего количества записей при использовании пагинатора без соответствующей конфигурации.
  4. Официальный сайт обновлен новыми руководствами по конфигурации для полной печати всех подробных логов ES и закрытию баннеров EE.

Исправление ошибок:

  1. Исправлена ошибка, возникающая при использовании поля id (на самом деле это другое имя поля) в условиях in, когда id не преобразуется в _id, что приводит к ошибке.
  2. Исправлена ошибка, связанная с изменением размера страницы (size) в зависимости от текущей страницы.

Примечание: В этой версии произошли изменения в отношении оригинального условия or(). Если в вашем коде используется условие or(), вам потребуется изменить логику обработки этого условия на ту же синтаксическую конструкцию, используемую в MP.

Последнее сообщение коммита: V0.9.20
11.03.2025 01:08
GitLife Service Account

Версия 0.9.16

Новые возможности:

  1. Добавлена функция allEq, совместимая с MP.
  2. Предоставлен глобальный и детализированный конфигурационный механизм для соответствия eq с must или filter. Последний не вычисляет рейтинг, что может повысить производительность запросов.
  3. Предоставлена возможность настройки стратегии сердцебиения ES для решения проблемы "connection reset by peer" в ES.

Улучшения опыта использования:

  1. В Maven центральном репозитории добавлены исходные коды JAR-пакетов, что делает использование более удобным. Можно сразу видеть первоначальное имя интерфейса в сигнатуре метода, что позволяет понять его назначение и легко просматривать описание методов и параметров.
  2. Удалено логическое правило выбрасывания бизнес-исключений при наличии ошибок в ответе bulkResponse. Теперь информация и причины ошибок выводятся в лог, но не выбрасываются как исключения, и не учитываются в общем количестве успешных операций. Так как Elasticsearch не имеет механизма транзакций и отката, это решение является более подходящим.Исправления недочётов:
  3. Исправлен缺陷,当采样字段数组包含 id,而实际请求未包含 id
  4. 解决了与按 id 排序时出现的错误相关的问题,如果字段名称 id 与其他字段重名。
  5. 解决了在 GlobalConfigCache 中写入顺序不正确的问题。
  6. 解决了 FastJson 过滤器在批量插入数据时的行为问题,特别是在字段值为空或为 null 的情况下。

转换成俄语:
Исправления недочетов:

  1. Исправлен дефект, когда массив полей выборки содержит id, а фактический запрос не включал id.

  2. Исправлен дефект, связанный с ошибками при сортировке по id, если имя поля id совпадает с другим полем.

  3. Исправлен дефект в неправильной последовательности записи в GlobalConfigCache.

  4. Исправлен дефект в работе фильтра FastJson при массовой вставке данных, когда значение поля пустое или равно null.Примечание: В связи с подготовкой версии 1.0 к выпуску, функциональность была активно развиваться, что привело к некоторым проблемам тестирования и появлению багов. За доставленные неудобства прошу прощения. Для блокирующих дефектов исправление будет выпущено в течение 48 часов, для остальных — в течение 24 часов. hasFailures в операциях пакетной обработки (добавление, удаление и изменение), и измените это так: информация и причины сбоев данных выводятся в лог, но исключение не выбрасывается, и такие записи не учитываются в общем количестве успешных записей, возвращаемых методом. Поскольку Elasticsearch не имеет механизма транзакций и отката, такой подход имеет больше смысла.

  5. Аннотация @EsMapperScan сканирует только пользовательские Mapper, которые наследуют BaseEsMapper, что позволяет предотвратить случайное сканирование определённых интерфейсов в каталоге сканирования и ошибочное регистрацию бинов.

  6. Добавьте примечание о том, что поле id не требуется создавать в официальной документации сайта.Исправления ошибок:

  7. Исправлен дефект, при котором id не фактически запрашивается, если он включен в select (массив имён полей).

  8. Исправлена ошибка, при которой сообщается об ошибках согласно сортировке по id, когда имя id совпадает с другим именем поля.

  9. Исправлена ошибка, связанная с неправильным порядком записи в GlobalConfigCache.

  10. Исправлена ошибка, связанная с перезаписью фильтром fastjson при вставке пустых/нулевых значений полей, когда политика поля установлена как not_empty/not_null при массовой вставке данных.PS: Устойчивая и официальная версия 1.0 скоро будет выпущена, с высокой плотностью и скоростью итераций функциональностей. Невозможность тестирования и частые ошибки являются неизбежными. Я очень извиняюсь за причиненные неудобства всем.

Для блочных дефектов исправления будут выпущены в течение 48 часов, а альтернативные решения будут предоставлены в течение 24 часов для некритических дефектов.

Последнее сообщение коммита: update docs/en/_coverpage.md.
11.03.2025 01:08
GitLife Service Account

v0.9.15

  1. Поддержка CRUD для вложенных типов данных и автоматизация их индексации
  2. Поддержка аннотаций для вложенных типов с использованием верблюжьего регистра, пользовательских полей, отсутствующих полей и других функций
  3. Оптимизация аннотации TableId для идентификатора таким образом, чтобы она больше не поддерживала спецификацию значения, что помогает избежать путаницы у пользователя. Указание условия id в обёртке автоматически преобразуется в _id
  4. Поддержка кастомизации index.settings
  5. Конфигурирование глобального отслеживания более чем 10 000 записей track_total_hits через конфигурационный файл
  6. Добавлена утилита EsWrappers для поддержки цепочечного программирования и аналогична утилите Wrappers из MP
  7. Удалены три устаревших API запроса пагинации, исправлено ошибочное указание размера wrapper.size для API пагинации, теперь использование API пагинации стало проще
  8. Новый запрос для родительско-детского типа данных. Создание/обновление/индексация автоматического создания родительско-детского типа данных ещё не завершено, будет дорабатываться в последующих итерациях
  9. Предоставлены три стратегии режима обновления данных, стратегия обновления данных может быть определена через конфигурацию
  10. Обёртка поддерживает указание имени индекса при выполнении запроса. Только текущий запрос применяется к этому имени индекса.Если имя индекса не указано, используется активный по умолчанию.
  11. Предоставлен API для изменения активного индекса, который действует глобально.
  12. Все API поддерживают передачу строковых имен полей.
Последнее сообщение коммита: V0.9.15
11.03.2025 01:07
GitLife Service Account

V0.9.14

  1. Добавлено возвращение высветленного поля в пагинированном интерфейсе
  2. Улучшена агрегация, теперь поддерживаются два режима — агрегация с использованием pipelines и агрегация без использования pipelines
  3. Исправлена небольшая проблема переопределения метода groupBy

Замечание: В данном контексте "pipelines" обычно используется как есть, поскольку это специализированный термин в мире Big Data и аналитики.

Последнее сообщение коммита: Merge branch 'master' of https://gitee.com/dromara/easy-es
11.03.2025 01:07
GitLife Service Account
  1. Устранено срочное исправление дефекта, вызванного or().in().
  2. Автоматически управляемые индексы поддерживают конфигурацию асинхронной блокировки и асинхронной неблокировки, и по умолчанию используется асинхронная блокировка.
  3. В рамках оптимизации логирования в фреймворке решена проблема некорректного форматирования параметров лога в некоторых аномальных ситуациях.
Последнее сообщение коммита: Merge branch 'master' of https://gitee.com/dromara/easy-es
11.03.2025 01:07
GitLife Service Account

v0.9.12

  1. Добавлена функция агрегированной деконфликтации данных
  2. Добавлена функция агрегированной деконфликтации данных с пагинацией
  3. В интерфейс общего количества добавлена поддержка деконфликтационного подсчёта
  4. Добавлен API скроллингового запроса
  5. Улучшены агрегирующие функции, такие как groupBy, min, max, avg, реализовано агрегирование в конвейере
  6. Улучшено название логгеров для записи логов
  7. Расширены API для множественного соответствия, такие как matchQueryAll, multiMatchQuery, matchPhrasePrefixQuery, queryStringQuery и другие
  8. Исправлена проблема с отключением фреймворка (введённая в версии 0.9.11)
  9. Исправлена проблема с глобально установленным префиксом индекса при автоматическом управлении режимом индекса
  10. Исправлена проблема с условием in, которое не работает после использования or в условии and
  11. Отмечены устаревшие три метода пагинации, которые будут удалены в будущих версиях, что позволит ещё больше упростить использование пагинации
Последнее сообщение коммита: Merge remote-tracking branch 'origin/feature'
11.03.2025 01:07
GitLife Service Account

0.9.11

  1. Оптимизация автоматического создания логов индексации, вывод большего количества логов различных уровней для удобства отслеживания текущего этапа обработки.
  2. Автоматическое создание индекса с добавлением конфигурации шардов и реплик через аннотации.
  3. Оптимизация параметров конфигурации с использованием значений по умолчанию и информационных сообщений при использовании для повышения качества пользовательского опыта.
  4. Улучшение метода загрузки параметров конфигурации, чтобы он больше не перезаписывался пользователем в RestHighLevelClient, что позволяет использовать одновременно Easy-Es и SpringData-Es.
  5. Введение аннотации конфигурирования формата даты и API-метода создания форматированной даты индекса для поддержки функции форматирования дат.
  6. Переработка части некачественного кода цепочки интерцепторов, предоставленного мистером Лю, для улучшения читаемости кода.
  7. Исправление ошибки, когда аннотация geoAPI нижнего подчеркивания не применялась при автоматическом преобразовании в вершину.
  8. Исправление ситуации, когда значение поля NOT_EMPTY не присваивалось непустому типу данных при выполнении операции Insert.
Последнее сообщение коммита: 修复1处非String类型字段在insert中失效的缺陷
11.03.2025 01:07
GitLife Service Account

v0.9.10

  1. Введена полностью автоматическая модель автотестирования индекса — гладкий режим
  2. Введена простая и жёсткая модель автотестирования индекса — негладкий режим
  3. Поддерживается конфигурация полностью ручной модели управления индексом — ручной режим, пользователи могут управлять индексом с помощью предоставляемого API или других методов
Последнее сообщение коммита: Merge branch 'master' of https://gitee.com/dromara/easy-es
11.03.2025 01:06
GitLife Service Account

v0.9.8

  1. Добавлена автоматическая конвертация подчеркиваний в стиль camelCase
  2. Добавлена возможность использовать пользовательское имя полей
  3. Параметры пагинации теперь поддерживают некорректные входные данные, такие как 0 и отрицательные числа
  4. Возвращение общего количества страниц в параметрах пагинации @Yang
  5. Переработка и оптимизация большого количества кода для повышения повторного использования кода и производительности
  6. Добавлена возможность передачи имени индекса в виде строки для поддержки более гибких сценариев
  7. Устранено 1 недочёт, связанный с невозможностью удаления данных при использовании пользовательского типа ключа первичного ключа при удалении данных
Последнее сообщение коммита: update docs/_coverpage.md.
11.03.2025 01:06
GitLife Service Account
  1. Добавлен новый модуль плагинов. Пользователи могут создавать свои плагины в этом модуле. В настоящее время некоторые люди уже предоставили плагины-интерцепторы для общего использования.
  2. Добавлена возможность выделения пользовательски привязанных полей сущностей, что позволяет избежать необходимости использовать полу-native интерфейсы запросов, тем самым ещё больше упрощая использование.
  3. Улучшено поддержание числовых типов данных для пользовательских ID, теперь поддерживаются все типы данных (ранее поддерживался только String).
  4. Добавлена функция пользовательской настройки сортировки, позволяющая пользователям настраивать SortBuilder, что делает использование более гибким и простым.
  5. Добавлена функция исключения географических локаций, поддерживающая geoBoundingBox, geoDistance, geoPolygon и geoShape.
  6. Добавлена функция вывода консольных DSL-журналов, которая помогает пользователям быстрее находить проблемы.
  7. Сортировка может передаваться через строки, что позволяет хостить поля и правила сортировки на стороне клиента так же, как это делается в MySQL, что делает процесс более удобным и менее требовательным к кодированию.
  8. Добавлена поддержка запросов более чем 10 000 записей, при запросах более 10 000 записей автоматически активируется trackTotalHits.
  9. Исправлена небольшая проблема с некорректным форматированием журнала.
    10.Добавлена функция сортировки по баллу.
    Улучшены сообщения о предупреждении при использовании метода selectOne для запроса более одной записи, а также исправлена проблема с невыполнением ограничения limit(1).
Последнее сообщение коммита: 针对count dsl语句打印增加前缀
11.03.2025 01:06
GitLife Service Account
  1. Устранена проблема с недействительностью параметров физического пагинационного запроса после их указания пользователями в чате.
  2. Обновлено/реализовано батч-обновление полей API, добавив получение данных из локального кэша, что значительно повысило производительность; оптимизация привела к тому, что производительность стала аналогичной производительности нативных запросов.
  3. Добавлена поддержка пользовательских ID, значение которых может передаваться пользователем. В методах insert/batchInsert при отсутствии ID данные будут добавлены, а если ID уже существует в Elasticsearch, то будет автоматически выполнено обновление данных.
  4. Добавлен модуль тестирования производительности, код и тестовые данные находятся в sample.test.performanceTest. По результатам тестирования было подтверждено теоретическое анализ в модуле "дробление", согласно которому CURD-операциям, за исключением операции выборки, которая медленнее на 10-15 миллисекунд по сравнению с использованием RestHighLevelClient, нет значительных различий. Кроме того, начиная со второй операции выборки, кэширование полей начинает работать, и различия становятся минимальными, поэтому можно смело использовать данное решение.
  5. Добавлена документация по смешанному поиску, чтобы помочь решить недавние проблемы с несоответствием функциональности EE.
Последнее сообщение коммита: 0.9.6版本所有代码提交
11.03.2025 01:06
GitLife Service Account

Интегрированы API GEO.
Создание/обновление индексирующего токенизатора и т.д.
Обновлен FastJson до последней версии.

Последнее сообщение коммита: update easy-es-boot-starter/src/main/java/com/xpc/easyes/autoconfig...
29.11.2024 23:57
GitLife Service Account
Последнее сообщение коммита: v2.0-beta2
1
https://api.gitlife.ru/oschina-mirror/dromara-easy-es.git
git@api.gitlife.ru:oschina-mirror/dromara-easy-es.git
oschina-mirror
dromara-easy-es
dromara-easy-es