PHP搜索引擎WindSearch跟ElasticSearch的对比

WindSearch介绍

WindSearch是本人开发的一个原生PHP全文检索引擎,为PHP站点的搜索需求而开发,具有轻量、强大的特点,对中小站点尤其适合。

以下是跟ES的各方面对比:

性质

ES:全文检索引擎

WindSearch:全文检索引擎

安装

ES:需要安装、配置

WindSearch:无需安装、配置,引入一行代码就能立即使用

WindSearch安装示例:

// WindSearch安装 引入一行代码,再无其它任何配置
require_once 'yourdirname/vendor/autoload.php';

内存占用

ES:内存占用较高

WindSearch:磁盘式搜索引擎,平时对内存占用为零

规模

ES:适合大型网站

WindSearch:跟PHP中小站点完美适配

维护

ES:服务式,需要维护调优,维护成本较高

WindSearch:插件式,无需任何维护,永不“宕机”

功能

ES:多种检索模式

WindSearch:多种检索模式

WindSearch的检索模式列表:

match 单字段检索

multi_match 多字段检索

match_fuzzy 模糊搜索

match_prefix 前缀匹配

match_suffix 后缀匹配

match_prefix_suffix 前后缀混合匹配

match_phrase 短语搜索

match_terms 精确搜索

match_bool 布尔搜索(无限嵌套)

match_range 范围查询

match_all 查询所有数据

match_rand 随机获取数据

match_primarykey 根据主键查询数据

match_geo 地理空间搜索

match_auto_completion 自动补全

搜索语法

WindSearch的搜索语法跟ES差不多,无额外学习成本

WindSearch搜索语法示例:

// 搜索多个字段
$query = [
    'multi_match' => [
        'field' => [
            [
                'name' => 'title',
                'query' => $query,//搜索内容
                'highlight' => [ // 结果高亮
                    'is_cut' => true, // 是否将未匹配的地方截取掉
                    'fixed_length' => '', // 保留多少字符,若为空,则保持原长度
                ],
            ],
            [
                'name' => 'tags',
                'query' => '蔬菜',
            ]

        ],
        // 结果排序
        'sort' => [
            'time' => 'asc' //asc 按字段值正序 desc 按字段值倒序
        ],
        'list_rows' => $listRows, // 每页多少条数据
        'page' => $page, // 第几页

    ]
];

性能

ES:服务器越牛,数据承载量越大

WindSearch:适合单机使用,可承载百万至千万的数据,无需高配服务器

性价比

ES:对于中小网站,各方面成本较高

WindSearch:对于中小网站,几乎没有什么成本

WindSearch代码地址:

GitHub - rock365/windsearch: windsearch,专业的PHP全文检索解决方案,无需安装,引入即可使用。支持多种检索模式,强大易用,可索引数百万甚至上千万数据。windsearch,专业的PHP全文检索解决方案,无需安装,引入即可使用。支持多种检索模式,强大易用,可索引数百万甚至上千万数据。 - rock365/windsearchhttps://github.com/rock365/windsearch

WindSearch在线文档:

偶尔不稳定,多刷新几次

WindSearch 开发文档WindSearch,专业的PHP全文检索解决方案,适用于中小站点,具有安全、易用、强大的特点。https://rock365.github.io/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值