念实现一个存储海量URL的地址库, 用什么工具或技术
发布时间:2010-05-24 21:16:30 文章来源:www.iduyao.cn 采编人员:星星草
想实现一个存储海量URL的地址库, 用什么工具或技术?
是一个URL地址前缀库,里面的记录既有URL地址前缀(不是一个完整的地址,而是path的前面几个step),也有完整的URL地址,用户查询时不是准确查找某个记录,而是做最大匹配,例如,假设有下面的记录:
1,http://www.foo.com
2, http://www.foo.com/document
3, http://www.foo.com/document/doc1
4, http://www.foo.com/document/doc1/title.html
现在查找 http://www.foo.com/document/doc1/chapter1.html,我希望能够获得匹配最长的那个,就是第三个。
我大概看了一下bloomfilter和berkeley db的介绍,好像没有说做相似匹配,难道需要做底层编程?
有没有现成的开源免费的工具?有没有用trie实现的?
------解决思路----------------------
呵呵,楼主的需求很像linux里的路径搜索,可以考虑用目录项对象的概念,即: 以/来切割你的url,每部分做为一个目录向对象,保存时以第一个目录项对象,即:www.foo.com,做hash算法,后面再建立一个树形结构
搜索的时候,可以将要搜索的的url以/切割,一个一个对象的搜索匹配
这样可以满足高性能的查找
想简单的话,直接用perl就好了啊,散列里再包含散列,搜索的时候一级一级找就好了
------解决思路----------------------
如果打算用db的话,也是可以做的
还是以/分割,分割后的每一个部分都当作一个节点存在db里
www.foo.com 它的符节点是1 它的父节点是0
document 它的符节点是2 它的父节点是1
doc1 它的符节点是3 它的父节点是2
title.html 它的符节点是4 它的父节点是3
匹配的时候,将要匹配的url也以/切割,切割好之后,一个一个搜索就好了
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。
其他相似内容:
-
分享并总结一下公司的SQL规范。
SQL code
1.用log4j记录SQL, 不用System.out.println()。并且通过log4j记录sql语句用时多少, 性能...
-
【急】大型数据库的存储方案
题目:通过网上调研,完成一个大型数据库的存储方案。
------解决方案--------------------
网上调研
...
-
count
t-sql中,count的执行效率如何 例如一表中有500W条数据,rid是自增+主键,要统计总数用count(rid) 合适不?欢迎高手给出明确答案...
-
所有积分求:每年1000G数据解决方案
现在数据库一查就卡死 有什么解决方案吗
------解决方案--------------------
一天3G,还行吧...
-
问个关于数据库设计的问题
在数据库设计的时候 有主键外键的关联
可是我们实际做一些系统的时候 需要在数据库上设置外键吗?
比如 ...
-
系统性能优化问题
各位好!
在系统中存在A,B两张表,这两张表中的数据数据增长都比较迅速(每月增长20万条),两张表中都有唯一键用来对...
-
c2c电子商务网站关于商品表的建立
目前在做一个c2c电子商务网站,主要是想借此提高自己的水平,现在遇到的问题就是不知道商品表是建...
-
老大:帮忙设计一下数据库
我想做一个RSS资讯聚合网站,把所有的RSS订阅信息缓存进数据库,再被页面调用。
数据表大致需要以下字段:
id...
-
请问各位哪里有《数据库系统概念》免费版电子书下载!急
请问各位哪里有《数据库系统概念》免费版电子书下载!急
------解决方案---...
-
Oracle专家调优秘密
在过去的十年中,Oracle已经成为世界上最专业的数据库之一。对于IT专家来说,就是要确保利用Oracle的强大特性来...