首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于存储许多独特项目的数据库或存储引擎是什么?

问用于存储许多独特项目的数据库或存储引擎是什么?
EN

Stack Overflow用户
提问于 2012-11-22 00:18:23
回答 2查看 86关注 0票数 0

我正在考虑编写一个web爬虫,它只收集页面的URL,而不是更多的(用于归档项目),但我在找到一种存储结果的正确方法方面有问题。

其要求是,无论使用何种存储引擎,都可以处理数十万项(最好能够向每个条目添加元数据,尽管不是必需的),并且可以忽略现有项(以避免重复),而不会对性能造成重大影响。

我看过的引擎:

  • MySQL:随着数据库的增大,检查现有项的速度会明显减慢。
  • SQLite:与上面的问题相同,性能更差。
  • memcache和Redis:数据集可能会变得足够大,以致于无法进行内存存储。
  • MongoDB:不确定如果大部分数据集存储在磁盘上(基于在他们的网站上解释 ),性能是否可以接受。

您对MongoDB的适用性有什么看法(因为我没有在MongoDB中使用大型数据集的经验),您是否知道有任何更好的(免费)存储引擎可用于此目的?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-11-22 01:01:51

听起来,NoSQL解决方案很适合您。

特别是因为您只想在URL的"id“下转储各种灵活的数据。

我用过lucene,但芒果也是个不错的选择。

票数 0
EN

Stack Overflow用户

发布于 2012-11-22 00:48:20

如果您使用传统的关系数据库管理系统,您可以根据您的数据哈希创建一个唯一的键(例如:用md5或sha1散列URL )。这将保持独特的键小(Ish),并应有助于性能。

我喜欢PostgreSQL --你可能想用它做些测试。

编辑:(见注释)好,也许在这一天和年龄不要使用md5 (:

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13504148

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档