问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

大数据处理为什么要用python

发布网友 发布时间:2022-04-23 20:02

我来回答

1个回答

热心网友 时间:2022-04-07 13:16

大数据的数据从哪里来?除了部分企业有能力自己产生大量的数据,大部分时候,是需要靠爬虫来抓取互联网数据来做分析。
网络爬虫是Python的传统强势领域,最流行的爬虫框架Scrapy,HTTP工具包urlib2,HTML解析工具beautifulsoup,XML解析器lxml,等等,都是能够独当一面的类库。
不过,网络爬虫并不仅仅是打开网页,解析HTML这么简单。高效的爬虫要能够支持大量灵活的并发操作,常常要能够同时几千甚至上万个网页同时抓取,传统的线程池方式资源浪费比较大,线程数上千之后系统资源基本上就全浪费在线程调度上了。Python由于能够很好的支持协程(Coroutine)操作,基于此发展起来很多并发库,如Gevent,Eventlet,还有Celery之类的分布式任务框架。被认为是比AMQP更高效的ZeroMQ也是最早就提供了Python版本。有了对高并发的支持,网络爬虫才真正可以达到大数据规模。
抓取下来的数据,需要做分词处理,Python在这方面也不逊色,著名的自然语言处理程序包NLTK,还有专门做中文分词的Jieba,都是做分词的利器。
数据处理
万事俱备,只欠东风。这东风,就是数据处理算法。从统计理论,到数据挖掘,机器学习,再到最近几年提出来的深度学习理论,数据科学正处于百花齐放的时代。数据科学家们都用什么编程?
如果是在理论研究领域,R语言也许是最受数据科学家欢迎的,但是R语言的问题也很明显,因为是统计学家们创建了R语言,所以其语法略显怪异。而且R语言要想实现大规模分布式系统,还需要很长一段时间的工程之路要走。所以很多公司使用R语言做原型试验,算法确定之后,再翻译成工程语言。
Python也是数据科学家最喜欢的语言之一。和R语言不同,Python本身就是一门工程性语言,数据科学家用Python实现的算法,可以直接用在产品中,这对于大数据初创公司节省成本是非常有帮助的。正式因为数据科学家对Python和R的热爱,Spark为了讨好数据科学家,对这两种语言提供了非常好的支持。
Python的数据处理相关类库非常多。高性能的科学计算类库NumPy和SciPy,给其他高级算法打了非常好的基础,matploglib让Python画图变得像Matlab一样简单。Scikit-learn和Milk实现了很多机器学习算法,基于这两个库实现的Pylearn2,是深度学习领域的重要成员。Theano利用GPU加速,实现了高性能数学符号计算和*矩阵计算。当然,还有Pandas,一个在工程领域已经广泛使用的大数据处理类库,其DataFrame的设计借鉴自R语言,后来又启发了Spark项目实现了类似机制。
对了,还有iPython,这个工具如此有用,以至于差点把他当成标准库而忘了介绍。iPython是一个交互式Python运行环境,能够实时看到每一段Python代码的结果。默认情况下,iPython运行在命令行,可以执行ipython notebook在网页中运行。用matplotlib绘制的图可以直接嵌入式的显示在iPython Notebook中。
iPython Notebook的笔记本文件可以共享给其他人,这样其他人就可以在自己的环境中重现你的工作成果;如果对方没有运行环境,还可以直接转换成HTML或者PDF。
为什么是Python
正是因为应用开发工程师、运维工程师、数据科学家都喜欢Python,才使得Python成为大数据系统的全栈式开发语言。
对于开发工程师而言,Python的优雅和简洁无疑是最大的吸引力,在Python交互式环境中,执行import this,读一读Python之禅,你就明白Python为什么如此吸引人。Python社区一直非常有活力,和NodeJS社区软件包爆炸式增长不同,Python的软件包增长速度一直比较稳定,同时软件包的质量也相对较高。有很多人诟病Python对于空格的要求过于苛刻,但正是因为这个要求,才使得Python在做大型项目时比其他语言有优势。OpenStack项目总共超过200万行代码,证明了这一点。
对于运维工程师而言,Python的最大优势在于,几乎所有Linux发行版都内置了Python解释器。Shell虽然功能强大,但毕竟语法不够优雅,写比较复杂的任务会很痛苦。用Python替代Shell,做一些复杂的任务,对运维人员来说,是一次解放。
对于数据科学家而言,Python简单又不失强大。和C/C++相比,不用做很多的底层工作,可以快速进行模型验证;和Java相比,Python语法简洁,表达能力强,同样的工作只需要1/3代码;和Matlab,Octave相比,Python的工程成熟度更高。不止一个编程大牛表达过,Python是最适合作为大学计算机科学编程课程使用的语言——MIT的计算机入门课程就是使用的Python——因为Python能够让人学到编程最重要的东西——如何解决问题。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...A利用我的房子注册公司后退租并没办理注销公司。影响我再次出租。怎... ...公司要注销了,我们买的房子没签合同,房款交完了,现在怎么办?_百度... 目字旁的有哪些字跟木有关 求一部动漫讲述了城市使环境变差,女主和男主是青梅竹马,为了找出破坏... 怎样看一个女人是不是动情了? 企业写字楼如何聚气聚财? 神州数码通用软件(北京)有限公司电话是多少? 神州数码集团股份有限公司电话是多少? 请问神州数码客服电话是什么? 请问地下城与勇士50级的狂暴者用什么装备最好!!! 大数据和python有什么区别 大数据需不需要学习python呀? python为什么适合大数据 大数据与python有什么关系,学完大数据以后能做Python吗? 大数据和python有什么关系吗? 花粉俱乐部是干嘛的啊? 我不想别人通过我的搜索到我的新浪微博账号该如何设置?求解答。 三亚的特产是什么?有什么小吃? 我梦见洗头是什么意思 梦见洗头有何征兆? 在电脑如何下载酷狗音乐? 华为p9的锁屏怎么关掉 华为P9怎么开启熄屏快拍教程 华为p9看电视屏熄要怎么设置 华为p9在充电无操作情况下无法自动息屏 得力人脸指纹混合识别考勤机no.3969如何使用? 得力指纹考勤机3970怎么使用?使用方法去哪儿查阅的 华为p9怎么取消系统锁屏 得力指纹考勤机排班表如何设置 得力指纹考勤机重置该怎么弄?怎么设置的呢 python跟大数据有关系吗 为什么python是大数据时代最好的语言 大数据专业会学到python语言吗? 大数据和python哪个发展前景好 想学IT,python和大数据哪个好点? 大数据和python有关系吗? 现在互联网行业,大数据和python哪个就业比较好点? qq名字女生优雅可爱的有什么? 适合女生的可爱纯洁的英文+中文QQ网名,跪求!!! 女生可爱QQ网名,别太花,最好实际一点的,也可以使英文名。Thank you! 可爱的11岁qq女生网名,英文网名 QQ昵称可爱女生 可爱女生的qq昵称,好听 vivo x21格式化 关于vivo x21格式化的问题 vivo x21手机在屏幕坏了不亮的情况下怎么格式化手机 vivox21密码密保都忘记了,怎么解锁? 在饿了么叫外卖发现有异物你们会怎么做? 在外卖中吃出异物的时候,我们究竟该如何维权? 法律咨询民事纠纷前天晚上我在饿了么平台点了份外卖,吃一多半时发现面条上有个黑色小飞虫,我联系饿了么_百度问一问