我们有一个场景,我们从客户那里获得大量的网址,网址按任意级别组织,如:xxx.com/levelA/levelB/levelC/...levels.../xxxx我们正试图使用这个数据并构建一个查询系统,可以回答任何给定级别下的URL。例如,getAll(" abc.com/test/sub /"),应该给我记录的所有网址都有" abc.com/test/sub/ "作为前缀,abc.com/test/sub/a.data,abc.com/test/sub/sub2/data等。
这似乎与文件目录结构类似。我的问题是,是否有任何现有的开源项目可以帮助处理这种情况。要求是:
答案 0 :(得分:1)
您没有回答的一些问题:
你确定一个简单的MySQL,PostgreSQL或任何其他商业数据库(Oracle,SQL Server,......)还不够吗?
以下是关于MySQL varchar index length的问题。我在SQL Server中也遇到了255个字符的相同限制,因此我假设其他RDBS也存在类似的限制。但是,没有什么比调用
更容易了SELECT url FROM url_list WHERE url like 'abc.com/test/sub/%'
还有MongoDB可以轻松分发并允许使用Regular Expressions in queries。与索引一起,您可以执行与SQL中类似的请求。您需要自己对此特定情况进行基准测试,以确定是否存在性能差异,以及哪个系统具有性能差异。
否则,仍会有Couchbase和CouchDB提供视图,这些视图基本上是为类似的东西而制作的,因为它们是通过MapReduce构建的。然而,这些需要几秒钟,最多一分钟才能更新。因此,如果您想在插入URL后立即请求URL,那就不合适了。