Scrapy - 数据库选择

时间:2017-04-28 10:17:30

标签: python database elasticsearch scrapy nosql

我目前正在构建一个scrapy项目,可以抓取任何网站从第一个深度到最后一个深度。我不提取很多数据,但是我将所有页面HTML(response.body)存储在数据库中。

我目前正在使用 Elasticsearch 批量API 来存储我的原始HTML。

我看了 Cassandra ,但我找不到 Elasticsearch批量的等价物,它会影响我蜘蛛的表现。

我对性能感兴趣,并且想知道Elasticsearch是否是一个不错的选择,如果有更合适的 NoSQL数据库

1 个答案:

答案 0 :(得分:2)

这在很大程度上取决于您计划在以后使用抓取的数据做什么。

Elasticsearch在插入时会执行一些复杂的索引操作,这会使数据库中的后续搜索速度非常快......但这也会花费处理时间并引入延迟。

那么回答你的问题是否Elasticsearch是一个不错的选择:

如果您计划稍后构建某种搜索引擎,Elasticsearch是一个不错的选择(顾名思义)。但是您应该仔细查看Elasticsearch的索引选项等的配置,以确保它以您需要的方式工作。

另一方面,如果您只想存储数据并在以后对其执行处理任务,Elasticsearch是一个糟糕的选择,您最好使用Cassandra或其他NoSQL数据库。

哪种NoSQL数据库最适合您的需求,取决于实际使用情况。