10万+条Json数据写入到数据库

编程入门 行业动态 更新时间:2024-10-11 09:29:27

10万+条Json数据写入到<a href=https://www.elefans.com/category/jswz/34/1771350.html style=数据库"/>

10万+条Json数据写入到数据库

10万+条Json数据写入到数据库

101254条数据据耗时近10分钟(5677368毫秒)终于插入到数据中了,咳咳,不要问我这10万多条数据从哪儿弄的(当然是从别人网站那了),能一次性或得到这10万多条数据也真不容易啊,等得我都没什么耐心了

苦逼尝试1

一开始想的是,将这10万多条数据分页查询然后插入到数据库中,于是写了一个循环,准备不断访问那个网站分页获得数据;,但由于不能保证每次都能成功请求数据,于是后来就手动的访问该网站,成功插入数据库后,再访问下一页的数据,我竟然傻傻的访问了203次……但由于部分数据,数据库已经插入过了,所以当再次插入的时候就会catch到异常,所以到最后大概有1000+的数据没有成功插入到数据库中,但从这10万+的数据中找到哪些数据没有插入到数据库中,那得累死我……太坑爹了

苦逼尝试2

打算写个多线程,然后当一个子线程成功获取到json数据后,再成功写入到数据库中后,再开一个线程去访问下一页的数据,依次到访问完这10万+数据,哎,只能怪自己太笨了……写了一顿……竟然没成功……

苦逼尝试3

我想一次性的获得到这10万+的json数据,然后将这些数据都插入到数据库中,但存在的问题有以下几个:

  • 1.因为是json格式数据,需要将所有的数据都接收到后,再进行解析。
  • 2.因为是10万+的json数据,光网络访问获得就需要很长时间,当时花了我近30分钟的时间才在网页中获得全这10万+的json数据
  • 3.将这10万+的数据加载到内存中,也很耗时,会卡死你
  • 4.文件输入输出流更耗时间、内存及CPU

以上是我在多次尝试中遇到的多个问题

我花了近半小时的时间在网页上获得到了10万+的数据,然后复制到记事本中,保存成utf-8编码的,文件大小就45M多了。电脑配置低了可真不行,光用代码读取这个文件就把我的MyEclipse累的要死要死的了。

我希望通过优化我的文件输入输出流读取模块代码,来减轻对硬件的损耗,但是因为Json格式数据,数据必须要保证完整性,才能被解析,这是上面遇到的问题,所以将数据进行切割的方式就算是走到头了。

最后受到浏览器对纯文本文件可以直接解析读取数据,所以我将我的json数据文件放到了tomcat下面发布后,再网页中访问,查看一下效果,果然,在10秒左右基本就能加载完12016/6/2 18:13:09 2016/6/2 18:13:12 0万+数据,用Java代码获取自己发布的数据具体就不太清楚用了多长时间了,因为我只测试了从访问开始到全部插入成功所用的时间一共用了5677368毫秒(近10分钟)成功插入到数据库中###(前面用读文件的方式读半小时都没能成功……)

尝试思路:

可以只解析数组中的数据,因为主要就是数组中的数据,只需要把数据的头尾部分删掉,保证json格式的正确性,然后通过逗号然后将数组中的数据分隔开,这样就可以将JSON数据进行分割了,然后就可以一次性的少加载一些数据到内存中了,这样配置哪怕不是很高的电脑应该也可以轻松解决了

10万+json数据下载    访问密码 dfa8

这个是那个网络请求数据 =1&rows=20    page表示请求的第几页,rows表示每页多少条数据;大家可以请求一下,一共有101254条数据;

有谁有更好的解决方法,请发我邮箱1072307340@qq,谢谢。

更多推荐

10万+条Json数据写入到数据库

本文发布于:2024-02-06 05:26:57,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1746565.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:数据库   数据   Json

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!