6.6 亿条数据, EF Core 框架有办法自动分表存储吗?

2022-08-16 22:39:42 +08:00
 edis0n0
产品大致是用户添加关注的关键词,我们每隔一段时间从一部分预设平台抓取后提供给用户下载保存。用户只能看到自己创建的需要关注的数据(用户间不共享,因为我们的场景多个用户关注相同数据概率极低,搜索只需要字段全字匹配),后台可以根据一些字段(抓取时间范围,关键词(全字匹配),行业分类(全字匹配),抓取记录 ID 范围等)进行筛选。网站目前已经抓取了 6.6 亿条数据,单表存储,目前翻页查询非常缓慢(第一页耗时 20ms ,越往后翻页越慢),想问问有什么办法自动分表存储吗?(最新的 100 万条左右数据的访问频率远高于旧数据)

技术栈是 ASP.NET Core + Entity Framework Core 。因为搜索都只需要全字匹配,应该用不上 ES 吧?
1061 次点击
所在节点    程序员
4 条回复
edis0n0
2022-08-16 22:54:29 +08:00
感觉有一些细节没描述清楚,补充一下。前后台都只有筛选(抓取时间范围,关键词(全字匹配),行业分类(全字匹配),抓取记录 ID 范围等)和批量导出功能,不需要搜索功能。同一个关键词最多累计只会有几百条结果,单个用户有可能关注上万个关键词。
tqyq88
2022-08-16 23:32:16 +08:00
上 es 省事,keyword type 也不会分词
hez2010
2022-08-16 23:54:03 +08:00
siaronwang
2022-08-17 16:52:20 +08:00
redis search

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/873309

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX