V1.1.0.0 官方版本今天终于上线了。和上一个官方版本 V0.9.6.0 比起来,V1.1 版本增加了很多的功能,性能方面也大幅提高。下面列举一下 V1.1 版本的改动说明
- 增加了 Sqlite3 的数据库适配器,有了这个适配器,HubbleDotNet 可以做类似Lucene那样的本地化存储了
- 对同步时索引的性能进行了优化,优化后索引的速度已经非常接近目前索引最快的 Sphinx
- 增加了 top 0 这个新特性,用于那种只希望查符合条件记录数的应用.
- 改善了Match 算法的匹配相关度,将完全匹配的记录调至最前面。
- 增加了MySQL 数据库适配器,这个适配器只实现了被动模式的功能,主动模式还没有实现,待以后完善
- 对2个条件的排序进行了性能优化
- 查询方面进行了进一步优化,用堆排序取代了快速排序,用hash table 访问键值索引(untokenized index) 取代了原来的二分查找算法。
- 增加镜像表功能,这个功能可以为被动模式的索引构建本地镜像表,用于实现数据库操作的读写分离。
- 增加了后台任务调度功能,可以在HubbleDotNet中设置定时同步,优化等等后台任务,不再需要自己来做后台任务了。
- 对同步功能进行了优化,实现了批量更新和索引,性能比原来提高了数十倍
- 增加了长时间执行的语句的监控,如果某个语句执行超过60秒,将在日志中输出,帮助系统管理员维护索引系统.
- 解决了大并发下客户端吊死的故障,客户端吊死后,会造成服务器连接池满的故障
- 屏蔽了Query Cache 持久化功能,这个功能会导致大并发是查询性能下降,以后再考虑如何优化这个功能,暂时屏蔽。
- 增加了一个OptimizeOption.None 优化选项,这个选项选中的话,同步后不自动进行优化
- 增加 SQL 跟踪功能,通过 SP_Configure ‘SqlTrace’, ‘True’ 可以打开这个功能,打开后,系统将在 app log 中记录所有的执行的SQL语句,即其执行时常,当前连接池数量等,这个功能用于帮助系统分析员分析大并发下的系统性能问题。
- 增加 Union 功能,可以将多个SQL语句的结果联合在一起输出,类似SQL SERVER的UNION功能。
- 增加 Distinct 功能,用于对结果消重
- 增加 NotIn 功能,这个功能往往和Union配合使用,用于显示某个结果的补集
- 当连接池满时,采用反复尝试的方法来等待连接池释放,用于解决瞬间大访问量的问题。
- 增加 SP_ResetCache 存储过程,用于手工重置缓存
- 在 HubbleCommand 中增加 ResetDataCacheAfterTimeout 这个属性,设置为true时,当Data cache 超时时,将强制更新数据。
- 优化了索引性能,性能方面比0.9 版本大概有50%左右的提升.
- 增加了用户权限管理功能,可以增加用户名和密码,并为不同用户指定权限。这样做可以提高系统的安全性
- 修改了 like 算法, like ‘%xxx%’ 在新版本中是直接通过 like ‘%xxx% 方式查询数据库,和在数据库中执行 like ‘%xxx%’ 的效果相同。如果要通过hubble的索引先过滤,要用 like ‘*xxx*’ 这种语法才行。
- 提高了 GroupBy 的性能.
- 提高了 match query 的性能
下载地址:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· 展开说说关于C#中ORM框架的用法!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?