溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

怎么使用Python庫管理大數(shù)據(jù)

發(fā)布時(shí)間:2021-11-23 16:30:29 來源:億速云 閱讀:177 作者:iii 欄目:大數(shù)據(jù)

本篇內(nèi)容介紹了“怎么使用Python庫管理大數(shù)據(jù)”的有關(guān)知識(shí),在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

怎么使用Python庫管理大數(shù)據(jù)

BigQuery

谷歌BigQuery是一個(gè)非常受歡迎的企業(yè)倉庫,由谷歌云平臺(tái)(GCP)和Bigtable組合而成。這個(gè)云服務(wù)可以很好地處理各種大小的數(shù)據(jù),并在幾秒鐘內(nèi)執(zhí)行復(fù)雜的查詢。

BigQuery是一個(gè)RESTful網(wǎng)絡(luò)服務(wù),它使開發(fā)人員能夠結(jié)合谷歌云平臺(tái)對(duì)大量數(shù)據(jù)集進(jìn)行交互分析??梢钥纯聪路搅硪粋€(gè)例子。

怎么使用Python庫管理大數(shù)據(jù)

之前寫過一篇文章里有說明如何連接到BigQuery,然后開始獲取有關(guān)將與之交互的表和數(shù)據(jù)集的信息。在這種情況下,Medicare數(shù)據(jù)集是任何人都可以訪問的開源數(shù)據(jù)集。

關(guān)于BigQuery的另一點(diǎn)是,它是在Bigtable上運(yùn)行的。重要的是要了解該倉庫不是事務(wù)型數(shù)據(jù)庫。因此,不能將其視為在線交易處理(OLTP)數(shù)據(jù)庫。它是專為大數(shù)據(jù)而設(shè)計(jì)的。所以它的工作與千萬字節(jié)(PB)級(jí)的數(shù)據(jù)集的處理保持一致。

怎么使用Python庫管理大數(shù)據(jù)

Redshift and Sometimes S3

接下來是亞馬遜(Amazon)流行的Redshift和S3。AmazonS3本質(zhì)上是一項(xiàng)存儲(chǔ)服務(wù),用于從互聯(lián)網(wǎng)上的任何地方存儲(chǔ)和檢索大量數(shù)據(jù)。使用這項(xiàng)服務(wù),你只需為實(shí)際使用的存儲(chǔ)空間付費(fèi)。另一方面,Redshift是一個(gè)管理完善的數(shù)據(jù)倉庫,可以有效地處理千萬字節(jié)(PB)級(jí)的數(shù)據(jù)。該服務(wù)使用SQL和BI工具可以更快地進(jìn)行查詢。

Amazon Redshift和S3作為一個(gè)強(qiáng)大的組合來處理數(shù)據(jù):使用S3可以將大量數(shù)據(jù)上傳Redshift倉庫。用Python編程時(shí),這個(gè)功能強(qiáng)大的工具對(duì)開發(fā)人員來說非常方便。

這是一個(gè)選擇使用psycopg2的基本連接的腳本。我借用了Jaychoo代碼。但是,這再次提供了有關(guān)如何連接并從Redshift獲取數(shù)據(jù)的快速指南。

怎么使用Python庫管理大數(shù)據(jù)

PySpark

讓我們離開數(shù)據(jù)存儲(chǔ)系統(tǒng)的世界,來研究有助于我們快速處理數(shù)據(jù)的工具。Apache Spark是一個(gè)非常流行的開源框架,可以執(zhí)行大規(guī)模的分布式數(shù)據(jù)處理,它也可以用于機(jī)器學(xué)習(xí)。該集群計(jì)算框架主要側(cè)重于簡化分析。它與彈性分布式數(shù)據(jù)集(RDD)配合使用,并允許用戶處理Spark集群的管理資源。

它通常與其他Apache產(chǎn)品(例如HBase)結(jié)合使用。Spark將快速處理數(shù)據(jù),然后將其存儲(chǔ)到其他數(shù)據(jù)存儲(chǔ)系統(tǒng)上設(shè)置的表中。

有時(shí)候,安裝PySpark可能是個(gè)挑戰(zhàn),因?yàn)樗枰蕾図?xiàng)。你可以看到它運(yùn)行在JVM之上,因此需要Java的底層基礎(chǔ)結(jié)構(gòu)才能運(yùn)行。然而,在Docker盛行的時(shí)代,使用PySpark進(jìn)行實(shí)驗(yàn)更加方便。

阿里巴巴使用PySpark來個(gè)性化網(wǎng)頁和投放目標(biāo)廣告——正如許多其他大型數(shù)據(jù)驅(qū)動(dòng)組織一樣。

如果你對(duì)Python感興趣,歡迎加入我們【python學(xué)習(xí)交流】,免費(fèi)領(lǐng)取學(xué)習(xí)資料和源碼

怎么使用Python庫管理大數(shù)據(jù)

Kafka Python

Kafka是一個(gè)分布式發(fā)布-訂閱消息傳遞系統(tǒng),它允許用戶在復(fù)制和分區(qū)主題中維護(hù)消息源。

這些主題基本上是從客戶端接收數(shù)據(jù)并將其存儲(chǔ)在分區(qū)中的日志。Kafka Python被設(shè)計(jì)為與Python接口集成的官方Java客戶端。它最好與新的代理商一起使用,并向后兼容所有舊版本。使用KafkaPython編程同時(shí)需要引用使用者(KafkaConsumer)和引用生產(chǎn)者(KafkaProducer)。

在Kafka Python中,這兩個(gè)方面并存。KafkaConsumer基本上是一個(gè)高級(jí)消息使用者,將用作官方Java客戶端。

它要求代理商支持群組API。KafkaProducer是一個(gè)異步消息生成器,它的操作方式也非常類似于Java客戶端。生產(chǎn)者可以跨線程使用而沒有問題,而消費(fèi)者則需要多線程處理。

怎么使用Python庫管理大數(shù)據(jù)

Pydoop

讓我們解決這個(gè)問題。Hadoop本身并不是一個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)。Hadoop實(shí)際上具幾個(gè)組件,包括MapReduce和Hadoop分布式文件系統(tǒng)(HDFS)。因此,Pydoop在此列表中,但是你需要將Hadoop與其他層(例如Hive)配對(duì),以便更輕松地處理數(shù)據(jù)。

Pydoop是Hadoop-Python界面,允許與HDFSAPI交互,并使用純Python代碼編寫MapReduce工作。

該庫允許開發(fā)人員無需了解Java即可訪問重要的MapReduce功能,例如RecordReader和Partitioner。

對(duì)于大多數(shù)數(shù)據(jù)工程師而言,Pydoop本身可能有點(diǎn)太基本了。你們中的大多數(shù)人很可能會(huì)在Airbow中編寫在這些系統(tǒng)之上運(yùn)行的ETLs。但是,至少對(duì)你的工作有一個(gè)大致的了解還是很不錯(cuò)的。

“怎么使用Python庫管理大數(shù)據(jù)”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI