Skip to content

前缀查询树(字典树) 特定需求下查询速度远超开源检索工具,innodb下B+树或者ES中倒排索引无法与之比拟.

License

Notifications You must be signed in to change notification settings

Jmwang-Code/Trie

Repository files navigation

提前介绍

本算法工具集,是于本人兴趣使然(一年工作经验小老弟请大家多多关照),所以打算开坑,由于本人过于贪心所以坑只能慢慢填,基本每日都会更新树算法部分,最后会整理成工具集,目前准备制作方向有:

项目 方向 介绍
BinaryTree 二叉工具树 二叉树算法功能
Stack 特殊工具栈 单调栈等特殊算法
SimpleTrie 前缀工具树 简单前缀树算法
ConfigurationConsistency 公共模块 ES、Redis等一键注入方法封装简化使用,后期也考虑使用有代码生成器、逆向工程一件生产模板
Common 增加的所有工具类 具体的使用工具会放在此项目(使用其他的核心算法)
PrefixQueryTree 前缀查询树(前缀检索树、实体识别树) 以时间换空间的方式实现快速检索,时间复杂度控制在和你查询的实体字段相同长度
MSSynchronization 主从同步(前缀查询树) 以保证高可用和数据一致性为前提设计的功能模块,以一键配置的方式启动,马上将前缀树变成只写功能,将读功能屏蔽,作为Master节点
Sentinel 哨兵(前缀查询树) 用哨兵去作为给前缀树进行添加元素的节点好处就是保证最终一致性,不需要考虑分布式系统的问题

Trie

介绍

前缀查询树(字典树) 特定需求下查询速度远超开源检索工具,innodb下B+树或者ES中倒排索引无法与之比拟.

  1.采用了内嵌式数据库Sqlite管理数据。
  2.减少了对ES、Redis等中间件依赖,减少了系统复杂度。
  3.对于数据恢复数据同步,可以采用
       ①主从复制的方式(分布式系统启用,可以保证强一致性或最终一致性)
       ②哨兵服务监视传达命令进行数据同步。(可以保证最终一致性)
  4.保证数据不丢失使用,日志先行机制,分层机制,对日志进行分层管理。

解决问题

背景分析

核心算法

数据结构

About

前缀查询树(字典树) 特定需求下查询速度远超开源检索工具,innodb下B+树或者ES中倒排索引无法与之比拟.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages