做一个微型搜索引擎数据库该怎么做

2019-06-28 21:03:43 +08:00
 VioletTec

最近脑洞一开,准备在一个游戏圈子里做一个专门的搜索,因为是只搜相关游戏的页面,所以蜘蛛要根据白名单抓取。

目前搜索程序是 PHP+Java 做的,我和另一个人合作,我写 Java,他写 PHP,因为是业余,所以不要问为什么用 PHP+Java 做搜索了。

工作原理主要是用 Java 做爬虫,爬取页面标题和描述,写入 SQL 数据库,PHP 再从数据库中查询数据根据传入的关键词进行展示。

目前开发已经有雏形了,今天测试了一下,跑了几小时,跑出来了几千条数据,照这样下去,很容易上十万。但是数据库写的比较混乱,只写了一张表,几个字段,存放标题,描述等信息。

但是考虑到以后爬虫要一直运行,不段爬,数据库会越来越臃肿,毕竟所有收录上的网站都在一张表中,今后如果维护也不好维护。

我的想法是,给每个域名开一张表,毕竟是个专门爬取游戏网页的,牵扯到的域名不算很多。这样联合多不奥搜索,对今后的扩展以及更多功能开发有好处。

但是和我合作的那位好像认为数据库足够强大,以后比较多的数据一张表也行。但是我认为还是要长远考虑,以后毕竟要添加一些新的功能。这么混乱的表,会比较难维护和扩展。

不知道各位 v2er 怎么看。

求助。。

3032 次点击
所在节点    问与答
13 条回复
cabing
2019-06-28 21:08:11 +08:00
hbase 存储。搜索使用 ELK 啊。
VioletTec
2019-06-28 21:17:23 +08:00
@cabing 好的,我去百度一下看看,我们技术放在这里。。两个人,最多写 Java+PHP+SQL 了。[太惨了]

毕竟业余的,实力有限,唉
niubee1
2019-06-28 21:21:58 +08:00
看你要打算做多大啊, 你做架构设计前基本的需求都不做么? 技术需求里对系统容量, 扩容方案的部分没管么?老夫撸起键盘就是干那种?而你上来求助也没想过贴相关的需求么?没有需求别人如何帮你?我表示完全不想理你并丢了你一份 google 架构图。 你搬得动么?还是打算着每人丢你一份不同容量的设计, 然后挑自己合用的, 有这么好事?
mumbler
2019-06-28 21:58:18 +08:00
千万不要自己做,直接用阿里云的 RDS+开放搜索
aaniao002
2019-06-28 21:59:39 +08:00
我觉得吧,开始写就好,什么东西都是摸索出来的。很多时候人家的框架为什么这么搭是很难体会的,写了就知道了。另外,爬虫能不能 mail 我一份,现在极度需要开几个这种东西混乱我的网络。
VioletTec
2019-06-28 22:03:40 +08:00
@niubee1 我们第一次做这种东西,,缺乏经验,还需要大佬指点😂😂
VioletTec
2019-06-28 22:03:58 +08:00
@mumbler 哦哦,好的,谢谢,我回来去查查看。
VioletTec
2019-06-28 22:07:36 +08:00
@aaniao002 好的好的,实在不知道怎么写 SQL 比较好,所以来发帖问问的😂😂

爬虫的话,,我做的比较简陋,而且自己的成分在里面也比较多。您如果需要的话,可以发一份,留一下邮箱。我有空了一定整理一下给您发过去,第一次写,写的可能不好😂

而且我的爬虫主要就是判断是否收录过,以及在不在白名单,停止爬取的时候记录一下爬到哪了,获取一下标题,描述等信息传进 SQL。。可能写的不是很好,也很混乱,而且我爬取过的站点都记录在了本地 txt 里,可能也会有资源消耗问题😂
VioletTec
2019-06-28 22:07:55 +08:00
@aaniao002 您如果要的话,可以留一下邮箱。
daimaosix
2019-06-29 03:57:49 +08:00
做私服的搜索引擎吗?
ebingtel
2019-06-29 09:15:27 +08:00
一张表吧,搜索接口用 elastic search 之类的搜索引擎才行
VioletTec
2019-06-29 15:37:55 +08:00
@daimaosix 不是的,,不是私服。但是是一款比较火的游戏没错。。
VioletTec
2019-06-29 15:38:18 +08:00
@ebingtel 好的,,我回去去百度试试看。

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

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

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

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

© 2021 V2EX