网页视频抓取工具软件哪个好( python爬虫用什么数据库好?Mysql和Mongdb哪家有优势?)
优采云 发布时间: 2021-10-07 05:26网页视频抓取工具软件哪个好(
python爬虫用什么数据库好?Mysql和Mongdb哪家有优势?)
python爬虫用什么数据库好?Mysql 和 Mongdb 哪个有优势?我们从Mysql和Mongdb的特点以及关系型和非关系型数据库的特点来分析。
Mysql 和 Mongdb 的特点
MySQL是一个关系型数据库,它具有以下特点
·不同的引擎有不同的存储方式。
·查询语句采用传统的sql语句,系统比较成熟,成熟度高。
开源数据库的份额在增加,MySQL的份额也在增加。
· 处理海量数据的效率会明显变慢。
Mongodb 是一个非关系型数据库,它具有以下特点:
· 数据结构由键值对组成。
·存储方式:虚拟内存+持久化。
·查询语句是Mongodb独有的查询方式。
· 高可用可以通过副本集和分片来实现。
·数据存储在硬盘上,但将需要频繁读取的数据加载到内存中,将数据存储在物理内存中,实现高速读写。
· 新兴数据库,成熟度低。
关系型和非关系型数据库的特点
关系数据库可以理解为依赖模型创建的数据库。比如我们使用的 MySQL 中的表,就是一个由横列和纵列组成的二维表。关系型数据库可以通过关系模型将多张表的数据关联起来,比如我们通常所说的一对多、多对一。因为是基于数据模型的,我们可以很方便的通过SQL语句在多表之间做复杂的查询操作。关系型数据库相对安全,而且由于是直接存储在硬盘上,所以突然停机、断电等事故不会造成数据丢失。MySQL 的存储方式是由它自己的引擎决定的。常用的引擎有 Innodb 和 MyISAM。它们之间的主要区别在于 MyISAM 不支持事务。重点是性能。执行速度比 Innodb 快。Innodb 提供事务支持等高级数据库功能。
非关系型数据库就是我们常说的 NoSQL 数据库。它们的部署相对简单,不像关系数据库那么复杂。Mongo的存储方式是虚拟内存+持久化存储。Mongo 将数据写入内存,然后虚拟内存管理器将其持久化到硬盘,因此写入操作会比关系数据库快得多。NOSQL的存储格式是key-value格式,可以存储关系型数据库等基本数据类型的数据,也可以存储集合、对象等。NoSQL虽然性能比较高,但是不支持东西,也不能进行关联表查询。它通常用于存储更*敏*感*词*的数据。
python爬虫用什么数据库好?使用 Mysql 和 Mongdb 哪个更好?
推荐使用MongoDB。原因是:因为你使用了爬虫,不仅要抓取网页,重要的是从抓取到的网页中提取信息并保存到数据库中。而如果以后的字段会发生变化(增删改查),那么MongoDB这样的key-value数据库更适合,因为你插入数据库的每条记录也收录数据“”Key”和“Value”,新的数据以新格式保存,而旧数据以旧格式保存,不需要做任何操作来保持数据格式的一致性。反之,如果使用SQL数据库,则必须修改数据库的格式并保证新格式的旧数据的可用性,这往往很麻烦。