自從2004年以後,python的使用率呈線性成長。 2011年1月,它被TIOBE程式語言排行榜評為2010年度語言。由於Python語言的簡潔性、易讀性以及可擴展性,在國外用Python做科學計算的研究機構日益增多,一些知名大學已經採用Python來教授程式設計課程。
資料就是資產。大數據工程師是現在十分火熱、高薪的職位。做大數據開發分析不只用到Java,Python也是較重要的語言。
大數據是指無法在一定時間範圍內以常規軟體工具進行捕捉、管理和處理的資料集合,是需要新處理模式才能具有更強的決策力、洞察發現力和流程優化能力的海量、高成長率和多樣化的資訊資產。 (推薦學習:Python影片教學)
為什麼是python大數據?
從大數據的百科介紹上看到,大數據想要成為資訊資產,需要有兩步,一是資料怎麼來,二是資料處理。
資料怎麼來?
在資料怎麼來這個問題上,資料探勘無疑是很多公司或個人的優選,畢竟大部分公司或個人是沒有能力產生這麼多資料的,只能是挖掘網路上的相關數據。
網路爬蟲是Python的傳統強勢領域,較流行的爬蟲框架Scrapy,HTTP工具包urlib2,HTML解析工具beautifulsoup,XML解析器lxml,等等,都是能夠獨當一面的類別庫。
當然,網路爬蟲不只打開網頁,解析HTML怎麼簡單。高效率的爬蟲要能支援大量靈活的並發操作,常常要能夠同時幾千甚至上萬個網頁同時抓取,傳統的線程池方式資源浪費比較大,線程數上千之後系統資源基本上就全浪費在線程調度上了。
Python由於能夠很好的支援協程(Coroutine)操作,基於此發展起來很多並發庫,如Gevent,Eventlet,還有Celery之類的分散式任務框架。被認為是比AMQP更有效率的ZeroMQ也是較早提供了Python版本。有了對高併發的支持,網路爬蟲才真正可以達到大數據規模。
資料處理:
有了大數據,那麼也需要處理,才能找到適合自己的資料。而在資料處理方向,Python也是資料科學家較喜歡的語言之一,這是因為Python本身就是一門工程性語言,資料科學家用Python實現的演算法,可以直接用在產品中,這對於大數據新創公司節省成本是非常有幫助的。
更多Python相關技術文章,請造訪Python教學欄位進行學習
以上是python和大數據有什麼關係的詳細內容。更多資訊請關注PHP中文網其他相關文章!