奇酷教育详解:Python适合大数据量的处理吗?来源:m.qikuedu.com
随着大数据相关产业的火热,关于使用哪种语言的讨论也引起不少人的关注,其中最有争议的还属Java和Python,那么Python能处理数据库中百万行级的数据吗?处理大规模数据时有那些常用的python库,他们有什么优缺点?适用范围如何?
需要澄清两点之后才可以比较全面的看这个问题:
1. 百万行级不算大数据量,以目前的互联网应用来看,大数据量的起点是10亿条以上。
2. 处理的具体含义,如果是数据载入和分发,用python是很高效的;如果是求一些常用的统计量和求一些基本算法的结果,python也有现成的高效的库,C实现的和并行化的;如果是纯粹自己写的算法,没有任何其他可借鉴的,什么库也用不上,用纯python写是自讨苦吃。
python的优势不在于运行效率,而在于开发效率和高可维护性。针对特定的问题挑选合适的工具,本身也是一项技术能力。
其次,这也要看具体的应用场景,从本质上来说,我们把问题分解为两个方面:
1、CPU密集型操作
即我们要计算的大数据,大部分时间都在做一些数据计算,比如求逆矩阵、向量相似度、在内存中分词等等,这种情况对语言的高效性非常依赖,Python做此类工作的时候必然性能低下。
2、IO密集型操作
假如大数据涉及到频繁的IO操作,比如从数据流中每次读取一行,然后不做什么复杂的计算,频繁的输入输出到文件系统,由于这些操作都是调用的操作系统接口,所以用什么语言已经不在重要了。
用Python来做整个流程的框架,然后核心的CPU密集操作部分调用C函数,这样开发效率和性能都不错,因此学习Python已经是想从事大数据事业不可或缺的一门技能,奇酷教育原创开发的Python课程不仅涵盖Web前后端开发和网络爬虫技术,还包括独有的数据分析和机器学习,前端、服务端一网打尽。可从事Web前端、Web服务端、服务器运维、网络爬虫、大数据分析、机器学习等多种热门职业,百分百高薪就业!