欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

easy-es v0.9.30 正式发布 - Gitee News - OSCHINA - 中文开源技术交流社区

最编程 2024-07-01 13:05:35
...

easy-es v0.9.30 已经发布

此版本更新内容包括:

v0.9.30 新增功能: 父子类型功能完整支持,新增功能包括: 1.新增对父子类型索引自动托管及手动API维护的支持 2.新增对父子类型文档的各种CRUD高亮,注解,策略等. 3.索引在手动挡模式下,新增API通过实体及其注解信息一键傻瓜级创建索引,功能与自动挡-运动模式一样,但触发方式为手动. 4.新增获取索引详细信息的接口(之前仅提供了获取索引是否存在的接口) 5.新增对嵌套类型的嵌套文档也可指定其索引分词器功能 7.新增手动挡api指定创建索引字段的权重值 8.新增对索引中同一字段既为text又为keyword的类型支持 9.新增工具类,并提供使用demo,可用于简化查询条件由前端页面选择式传入的复杂场景

项目调整: 由于目前已长期持有easy-es.cn的域名,所以对项目原有的包名及maven*仓库坐标作了相应调整 1.从0.9.30版本起调整项目Maven*仓库中的groupId由io.github.xpc1024调整为cn.easy-es,已发布的老版本不受影响. 2.项目所有包名由com.xpc调整为cn.easy-es打头 3.新增common,annotation,test子模块,并调整了原项目结构,让模块之间耦合进一步降低,提升可读性,更易于维护.为即将迎来的性能测试,压力测试等埋下伏笔.

体验优化: 1.enableMust2filter配置生效范围增加对in,notIn,between等类型查询的全面支持. 2.进一步简化高亮功能的使用门槛,代价是粒度比较粗,所有查询类接口都会返回高亮字段,牺牲了少量灵活性,但用起来更傻X,ORM框架还是Easy至上! 3.针对自动托管索引的平滑模式,提供了"擦屁股"功能,在小概率索引迁移因各种原因迁移失败后,自动清理失败的索引及可能出现的死锁,原索引不受任何影响,干净无残留! 4.分词器指定由枚举调整为字符串以支撑更多未知分词器,用户依然可以通过已经提供的枚举来获取分词器字符串值,如果已提供的分词器尚不满足,用户可通过字符串自定义传入.

性能优化: 对更新,删除及查询总数接口,增加了对查询字段列的过滤,只查询所需id列,其它列数据均不查询,可节省大量内存.

缺陷修复: 1.修复multiMatchQuery查询参数被重复封装2次的缺陷.

new features: The parent-child type function is fully supported, and the new functions include:

  1. Added support for automatic hosting of parent-child type indexes and manual API maintenance
  2. Added various CRUD highlighting, annotations, strategies, etc. for parent and child documents.
  3. Index In manual gear mode, the new API can create an index through entities and their annotation information at a fool-level with one click. The function is the same as the automatic gear-sport mode, but the trigger method is manual.
  4. Added an interface for obtaining index details (previously, only the interface for obtaining the existence of an index was provided)
  5. Added the ability to specify the index tokenizer function for nested documents of nested types
  6. Added manual block api to specify the weight value of index field creation
  7. Added support for the type that the same field in the index is both text and keyword
  8. New tool classes and demos are provided, which can be used to simplify complex scenarios where query conditions are selectively imported from front-end pages

Project adjustment: Since the domain name of easy-es.cn has been held for a long time, the original package name of the project and the coordinates of the maven central warehouse have been adjusted accordingly.

  1. Since version 0.9.30, the groupId in the Maven central repository of the project has been adjusted from io.github.xpc1024 to cn.easy-es, and the old version that has been released is not affected.
  2. All package names of the project are adjusted from com.xpc to start with cn.easy-es
  3. Added common, annotation, test sub-modules, and adjusted the original project structure to further reduce the coupling between modules, improve readability, and make maintenance easier. It lays the groundwork for upcoming performance tests, stress tests, etc. .

Experience optimization:

  1. The effective range of enableMust2filter configuration adds full support for in, notIn, between and other types of queries.
  2. Further simplifies the use threshold of the highlight function, at the cost of coarse granularity. All query class interfaces will return highlighted fields, sacrificing a small amount of flexibility, but it is more stupid to use, and the ORM framework is still Easy!
  3. For the smooth mode of the automatic managed index, the "wipe butt" function is provided. After the small probability index migration fails due to various reasons, the failed index and possible deadlock will be automatically cleaned up, and the original index will not be affected in any way. Clean and no residue!
  4. The tokenizer designation is adjusted from enumeration to a string to support more unknown tokenizers. Users can still obtain the tokenizer string value through the provided enumeration. If the provided tokenizer is not satisfied, the user can pass String custom incoming.

Performance optimization: For the update, delete and query total interface, the filter of the query field column is added, only the required id column is queried, and other column data are not queried, which can save a lot of memory.

Bug fixes:

  1. Fixed the bug that the query parameters of multiMatchQuery were encapsulated twice.

详情查看:https://gitee.com/dromara/easy-es/releases/v0.9.30