CNode

请问如果实现mysql的sql语句执行缓冲池?

问答
Mmiaogong发布于10 年前最后回复10 年前7 回复4544 浏览0 收藏

请教各位: 我通过nodejs爬虫在网站上抓取了一些数据,并整理生成了sql语句,这些语句的数量比较多。 请问,可否把这些sql语句push进一个执行的缓冲池子,并按照先进先出的顺序依次执行?

   有没有这样现成的库?或者直接就能简单的实现?
   
   谢谢!
查看回复

回复 (7)

K
klesh#1·10 年前

别这样做,内存会爆掉的。池好解决不过是个数组。但是生成快于写入你的池会越来越大

来自酷炫的 CNodeMD

Y
yakczh#2·10 年前

直接把抓到的数据按数据表字段的格式写到txt文件,然后load data inflile xxx 一键导入

1
13241491189#3·10 年前

赞同2楼的说法 我就这样做的

A
albert#4·10 年前

二楼的办法是个好办法,这样导入速度更快

M
miaogong#5·10 年前
引用 yakczh直接把抓到的数据按数据表字段的格式写到txt文件,然后load data inflile xxx 一键导入

@yakczh

谢谢你的回答。

我现在的问题是,最终生成的数据量比较大! 目前我也是采用写入sql到磁盘的方式,但是生成的sql文件非常大,导入的非常慢。

爬虫采集的过程也是一个长时间执行的程序,每次生成的数据量不算大,如果每次能直接执行sql的话,应该比一次性导入要好一些。

请问有这样现成的解决方式吗?

M
miaogong#6·10 年前
引用 klesh别这样做,内存会爆掉的。池好解决不过是个数组。但是生成快于写入你的池会越来越大 来自酷炫的 CNodeMD

@klesh 谢谢回答。

那么我的问题就是有没有这样现成的库?

能够避免这样的现象发生,比如池子满了,就发出通知,延迟往池子中写入数据?

参与回复
登录后即可参与回复。登录