
1 dilu 2024-08-03 09:48:27 +08:00 meilisearch |
3 dyllen 2024-08-03 10:10:39 +08:00 sphinx 老牌的了。 |
4 concernedz 2024-08-03 10:10:39 +08:00 对文章,博客类来说,meilisearch 够用了 |
5 potatowish 2024-08-03 10:12:13 +08:00 via iPhone 试试 redis search |
6 2bad4u 2024-08-03 10:32:54 +08:00 @concernedz meilisearch 支持拼音搜索吗? |
7 flyngfz 2024-08-03 10:41:19 +08:00 |
8 webeasymail OP @potatowish 我在考虑 redis search ,我不太清楚使用 redis search 分词、高亮、权重是否能够解决? |
9 webeasymail OP @dilu Meilisearch 看起来也很轻量级,看资料和 redis search 一样,内置中文分词。 |
10 webeasymail OP @dyllen 我数据用的是阿里云的,sphinx 可以结合云数据库一起用吗? |
11 DefoliationM 2024-08-03 10:48:18 +08:00 bleve 嵌入式的,直接存本地。 |
12 webeasymail OP Meilisearch 看起来好像很强大 : eiliSearch 是一个功能强大、快速、开源、易于使用和部署的搜索引擎,并且 MeiliSearch 的搜索和索引都是高度可定制的,提供开箱即用的功能属性,如错字容忍、过滤器和同义词。而最重要的一点是,它 [支持中文搜索] ,而不需要添加额外的配置。 二、支持的功能 开源 用户量(开源搜索引擎第二名) 中文分词 同义词 纠错 高亮 全文返回 高级搜索 停用词、停用字段 加权、降权 逻辑搜索 唯一字段聚合 分页 重新索引 |
13 changdy 2024-08-03 10:52:15 +08:00 你这个从产品思路上就错了.. 首先要做的是软件分类 ,而不是文章内容查询. 看了下你做的软件分类太过于粗糙了. 其次可以再给文章打标签 ,对标签进行搜索 最后搜索只查标题就好了..谁也不会闲着没事记软件的内容的. |
14 sampeng 2024-08-03 11:01:34 +08:00 via iPhone 实在要搜索引擎:sonic ,效率奇高。 10w 就要上搜索引擎了?这是什么赛博世界…100w 数据库你就是一个字段一个字段 like 都够你用了。如果是 pg ,pg 自带的向量 token 存储,我试过亿级数据都是 100ms 就能回来,只要自己随便找个分词引擎。 |
15 sampeng 2024-08-03 11:03:04 +08:00 via iPhone 连分类都不做,全靠搜索不是自己折腾自己么 |
16 webeasymail OP @changdy 有分类的,现在又 300 多个分类了,分类可以在这个界面看 : https://www.cpcat.cn/categories |
17 webeasymail OP 有分类的 https://www.cpcat.cn/categories 我是想通过关键词能够跟准确一下,例如 title 的权重高一些,description 的权重低一些,现在 like 搜索没有权重数据,会导致搜索出来 产品名称 ,可能会 description 的排在前面。 |
18 webeasymail OP @changdy 请教一下,产品标签是自动打标签,还是发布的时候手动选择标签? |
19 webeasymail OP @sampeng 实际上主要是解决权重的问题,希望搜索的东西更符合用户需要,例如搜索 “微盟”,title 和 company_name 权重最高,其次就是 description 权重低一些。 |
20 Makabaka01 2024-08-03 11:24:20 +08:00 这么一点量级,QPS 也很低,数据库 like 都够了,根本不需要纠结 |
21 webeasymail OP @willx12123 like 高亮,分词什么的都需要处理,复杂度也高,做出来效果应该也不太好 |
22 dayeye2006199 2024-08-03 12:01:06 +08:00 新点版本的 mysql 自带 full text search 支持。分词索引什么的都支持 |
23 Actrace 2024-08-03 12:28:58 +08:00 可以试试 sphinx |
24 slowgen 2024-08-03 12:58:20 +08:00 meilisearch ,丢了一千多万数据(40 个字段,其中 2 个大文本)进去,1c1g 跑得很舒畅,闲置时候只有二十多 MB 内存占用 |
25 fuis 2024-08-03 13:35:38 +08:00 meilisearch 主要的问题是升级,每次升级都需要重新导入导出。。 |
26 sampeng 2024-08-03 13:38:01 +08:00 via iPhone @webeasymail 产品没想清楚.这是伪需求。 |
27 webeasymail OP @shuimugan 这性能也太强了吧,比 es 的内存占用少太多了 |
28 webeasymail OP @fuis 目前没有什么升级需求,大不了重建数据。 |
29 yufeng0681 2024-08-03 15:08:52 +08:00 @webeasymail #19 把数据库里的所有 title 和 Company 的数据 变成索引,搜索时候就能联想出来。能联想到的就优先查(详细描述不用 like ,因为肯定命中了。 其他条目的详情里面如果有同样的 key ,也不建议显示出来,这个其实是相关竞品数据) 如果没有联想到,那就 三个字段都 like ,慢一点就慢一点,说明用户本身也没记住名字,大概率是记错了产品名字。 新场景:用户关注某个领域的产品,希望按类索骥走马观花,所以:层级分类确实要做好 |
30 mark2025 2024-08-03 15:55:09 +08:00 - pg 原生 FTS: https://pigsty.cc/zh/blog/dev/fuzzymatch/ - pg 扩展 paradedb: https://pigsty.cc/zh/blog/pg/paradedb/ |
31 kran 2024-08-03 15:56:22 +08:00 via Android JAVA 里竟然没人说 lucene |
32 webeasymail OP @yufeng0681 感谢指点,是应该在搜索里面加入分类筛选,通过搜索工具是希望更够更好提升体验。 |
33 wxf666 2024-08-03 16:12:41 +08:00 最轻量简单的,应该是 1MB 的 SQLite 了吧。。 案例就是手机端上的微信,全文搜索了吧。。 [《微信全文搜索耗时降 94%?我们用了这种方案》]( https://cloud.tencent.com/developer/article/2220615 ) 里说: > 一个包含 100w 条中文内容、每条长度 100 汉字的 FTS5 的表查询三个词,optimize 状态下耗时 2.9ms > 100w 条内容每次写入 100 条的情况下,按照 WCDB 的方案执行 merge ,耗时在 10s 内。 |
34 webeasymail OP @kran lucene 好像维护起来很麻烦,太久没用了,我记得以前手动维护好像挺麻烦的 |
35 webeasymail OP @wxf666 这个有技术挑战,需要投入太多精力。 |
36 webeasymail OP @2bad4u 这个更高级,我还真没有考虑过 |
37 wxf666 2024-08-03 19:32:41 +08:00 @webeasymail 下载个开源 simple 中文分词插件,再写几行 SQL ,也会投入很多精力吗? |
38 FrankAdler 2024-08-03 21:20:23 +08:00 @shuimugan 1000w 占用内存多少呢,我测试 2000 条就 340M 了,万级别有点担忧啊 |
39 slowgen 2024-08-03 21:24:36 +08:00 @FrankAdler 搜索得频繁的时候好像是五百多 MB 。创建索引的时候占用是高的,看你给的上限,有个参数 MEILI_MAX_INDEXING_MEMORY 可以设置。冷数据给高点配置,等索引创建完之后就可以降配了。 |
40 webeasymail OP @wxf666 我看这个文章写了一大堆,做了好多特殊优化,看起来不是很容易使用的样子 |
41 qweruiop 2024-08-03 22:47:27 +08:00 今年开发的系统都用 meilisearch 了吧。。。速度奇快。。。 |
42 FrankAdler 2024-08-04 00:31:40 +08:00 via Android @FrankAdler 试了下内存能接受,那 2000w 的磁盘空间呢 |
43 webeasymail OP @qweruiop 文档看起来也非常简单易用,比 redis search 使用更清晰,我现在使用版本好像有点冲突,默写方法使用会出现错误,提交个 github 看看能不能解决。 |
44 yufeng0681 2024-08-04 11:28:11 +08:00 |
45 webeasymail OP @yufeng0681 IT 桔子 还是比较复杂的,我这个是做 SaaS 软件分销 ,差别有点大,而且 IT 桔子涉及面很广,我这个更窄了,做太大了,搞不起来。 |
46 pieerepeng 2024-08-04 16:42:18 +08:00 我也调研过这个需求,记录下。 我们希望在边缘节点上搭建一个搜索引擎,需要占用的内存开销比较小,同时当数据比较大的时候,可以有效使用硬盘。 我们一开始选择了 zincsearch ,选择它的原因是对 es 接口的兼容,不过这个团队弃坑了,以及它的权限做的比较糙 https://github.com/zincsearch/zincsearch Github star 比较多的是: https://github.com/meilisearch/meilisearch https://github.com/valeriansaliou/sonic https://github.com/typesense/typesense 我觉得: https://github.com/manticoresoftware/manticoresearch 可能是遗珠 支持少量付费的话,Algolia 也是一个选择 其实: https://www.meilisearch.com/docs/learn/what_is_meilisearch/comparison_to_alternatives 这篇文档做了对比,可以看看。 最后: 1. 我们文档站用了:Algolia 2. 主项目用了 pg 加一堆插件的方案,整体资源的占用最小。因为我们用了 citus ,未来做云原生支持的时候希望也能容易些 op 1 万多条的规模感觉 meilisearch ,typesense 挑一个就好了 |
47 ryan961 2024-08-05 09:45:52 +08:00 试试 openobserve ,zincsearch 团队搞得 |
48 imtflin 2024-08-05 14:27:25 +08:00 meilisearch 现在的中文分词有很大的问题,某些情况根本不可用,将文字 pinyin 化,导致一系列的问题,官网目前暂时也没精力解决。 |
49 gitxuzan 325 天前 meilisearch 批量插入数据会存在内存泄露,内存都没释放,修改 mapping 也是,离谱,不敢相信是 48k 的开源,重启恢复 |